Salesforceと外部MA Braze連携 オーディエンス同期とキャンペーン成果のCRM反映設計
目次 クリックで開く
エンタープライズ領域において、CRMの最高峰であるSalesforceと、高度なパーソナライゼーションを実現するMA(カスタマーエンゲージメントプラットフォーム)のBrazeを併用するケースが増えています。しかし、多くの現場では「SalesforceにデータはあるがBrazeで使えない」「Brazeで配信したが、その結果が営業担当者に伝わらない」というデータの分断が起きています。
本記事では、SalesforceとBrazeをシームレスに繋ぎ、オーディエンス同期からキャンペーン成果のCRM反映までを完結させるための実務的なアーキテクチャを解説します。
SalesforceとBrazeを連携させる真の目的:循環型データ基盤の構築
単に「メールを送るため」にデータを送るだけでは、Brazeのポテンシャルを半分も引き出せません。真の目的は、「CRM上の顧客ステータスに基づき、Brazeで最適な顧客体験を提供し、その反応を再びCRMへ戻して営業やCS活動を最適化する」という循環を作ることにあります。
データサイロ化が招く「顧客体験の分断」
例えば、Salesforce上で「商談が失注」した直後に、Brazeから「購入検討ありがとうございます!」という自動プッシュ通知が届くような事態は、ブランド体験を著しく損ないます。データが同期されていないことで、顧客の「今」に合わせたアプローチができなくなるのです。
双方向連携によって実現するシナリオ例
- 商談フェーズ連動配信:Salesforceで商談が「提案中」になった瞬間、Brazeから事例資料を自動送付する。
- 休眠掘り起こしの可視化:Brazeのメールを開封した休眠顧客を、Salesforce上で「ホットリード」として営業に通知する。
- LTVの最大化:購入後のサポート状況をCRMで管理し、未解決のチケットがない顧客にのみアップセル施策を配信する。
このような高度な連携には、単なるツールの接続以上の設計思想が求められます。全体像の理解には、まずSFA・CRM・MA・Webの違いと連携の全体設計図を把握しておくことが推奨されます。
SalesforceとBrazeの連携手法を比較する
SalesforceとBrazeを連携させる方法は1つではありません。企業のデータ量、リアルタイム性の要件、エンジニアのリソースによって最適な手法を選択する必要があります。
1. Braze Salesforce AppExchange Integration(標準アプリ)
最も一般的なのが、Salesforce AppExchangeで提供されている公式アプリを利用する方法です。ノーコードで設定でき、Salesforceの「リード」「取引先責任者」のデータをBrazeの「ユーザープロフィール」にマッピングできます。
2. Braze Cloud Data Ingestion (CDI) によるデータ取り込み
データウェアハウス(Snowflake, BigQuery, Redshift, S3等)を介してデータを同期する方法です。Salesforceのデータを一度BigQuery等に集約している場合、この手法が最もスケーラブルでコスト効率が高くなります。
参照:Braze公式ドキュメント:Cloud Data Ingestion
3. iPaaS(Workato/Zapier等)や独自API連携
特定の複雑なロジックを挟みたい場合に利用します。ただし、データ量が多い場合はAPIコストや実行時間の問題が発生しやすいため、注意が必要です。
| 比較項目 | AppExchange版(標準) | Cloud Data Ingestion (CDI) | iPaaS / 独自API |
|---|---|---|---|
| 設定難易度 | 低い(ノーコード) | 中(SQL/DWH知識が必要) | 高い(開発が必要) |
| リアルタイム性 | 準リアルタイム(非同期) | スケジュール実行(最短15分〜) | リアルタイム可能 |
| データ量への耐性 | 中(API制限に依存) | 非常に高い | 中(コスト増に注意) |
| 主な用途 | 基本的な属性同期 | 大量の行動ログ・属性同期 | 複雑なワークフロー連動 |
徹底解説:SalesforceからBrazeへのオーディエンス同期
SalesforceのデータをBrazeへ送る際、最も重要なのが「誰を紐付けのキーにするか」です。
外部ID(External ID)設計の鉄則
Brazeではユーザーを識別するために external_id を使用します。Salesforce連携においては、Salesforceの「リードID(18桁)」や「取引先責任者ID(18桁)」をそのまま external_id として使用するのがベストプラクティスです。
これにより、BrazeからSalesforceへデータを戻す際の「名寄せ」が極めて容易になります。
レポート・キャンペーンメンバーを用いた同期手順
- Salesforce側で同期対象を定義:特定の条件(例:過去30日以内にログインがある、かつ商談が進行中)に合致するレポートを作成するか、キャンペーンメンバーに登録します。
- Braze側の接続設定:BrazeのダッシュボードからSalesforceのアカウントを認証し、対象のオブジェクト(Lead/Contact)を選択します。
- 項目のマッピング:Salesforceの「メールアドレス」「氏名」「会員ランク」などをBrazeの「標準属性」または「カスタム属性」に紐付けます。
リアルタイム同期を実現する「Data Streaming」の設定
AppExchangeアプリの標準機能では、Salesforce側のデータ更新を検知してBrazeに飛ばす「Data Streaming」が利用可能です。これを利用すれば、Salesforceで「電話商談が完了した」というフラグが立った数秒後に、BrazeからフォローアップのLINEを送るといった運用が可能になります。
もし、より高度なデータ統合や、LINEログインを用いたセキュアなID連携を検討されている場合は、WebトラッキングとID連携の実践ガイドも併せて参照してください。
逆流設計:Brazeの成果(エンゲージメントデータ)をSalesforceへ戻す
「Brazeでメールを送って終わり」では、現場の営業担当者は顧客が何に興味を持っているかを知ることができません。BrazeでのアクティビティをSalesforceへ戻す設計が不可欠です。
Braze Currents を活用したデータエクスポート
Brazeの「Currents」機能(※要上位ライセンス)を使用すると、メールの開封、クリック、プッシュ通知の受信といったイベントデータをリアルタイムに外部へストリーミングできます。これをBigQuery等のDWHで受け取り、リバースETL(HightouchやCensus等)を用いてSalesforceの「活動」や「カスタムオブジェクト」に書き戻すのが、モダンな設計です。
営業担当者の画面(Salesforce)に「顧客の反応」を表示させる方法
Braze Salesforce AppExchangeアプリには、Salesforceのレコード画面上に「Brazeでの直近のアクティビティ」を表示するコンポーネントが含まれています。これにより、営業担当者は架電前に「今朝、この顧客はキャンペーンメールの価格表ページをクリックした」という情報を把握でき、トークの質が劇的に向上します。
実務で直面する3つの壁と回避策
設計通りに進まないのがデータ連携の常です。実務で必ず直面する「壁」とその対処法を提示します。
壁1:SalesforceのAPI制限(APIコール数)
Salesforceには組織ごとに1日のAPI発行上限(Daily API Requests)があります。Brazeからのデータ書き込みや、頻繁な同期設定は、あっという間にこの上限を消費します。
回避策:バルクAPIの利用や、DWHを介したバッチ更新(CDIの活用)により、APIコールを劇的に削減できます。また、不要な項目の同期をオフにすることも有効です。
壁2:データ型の不一致とマッピングエラー
Salesforceの「選択肢(Picklist)」項目とBrazeの「文字列(String)」が一致しない、またはSalesforceで必須項目になっているのにBrazeから空値を送ろうとしてエラーになるケースです。
回避策:データのクレンジングレイヤーを設けるか、Braze側のカスタム属性でバリデーションを行う運用を徹底します。
壁3:名寄せとユニークキーの重複問題
Salesforce内に同一メールアドレスで複数の「リード」が存在する場合、Braze側でどちらの external_id を優先すべきか判断できなくなります。
回避策:Salesforce側で「重複管理ルール」を厳格に適用するか、名寄せ済みのマスターデータをDWH経由でBrazeに送る構造を検討してください。このあたりのモダンなデータ基盤構築については、高額なCDPを使わないモダンデータスタックの構築手法が参考になります。
アーキテクチャ設計図:推奨される運用フロー
最終的に目指すべきは、以下のようなデータフローです。
- Input: Salesforce上の顧客データ(商談・属性)を、AppExchange連携またはCDIでBrazeに同期。
- Action: BrazeのCanvas機能を使用し、セグメントに応じたマルチチャネル配信(メール、Push、LINE、アプリ内メッセージ)。
- Output: BrazeのエンゲージメントイベントをCurrents経由でDWHへ。
- Feedback: DWHで集計した「スコア」や「最終接触日」を、リバースETLでSalesforceのリード/取引先責任者に書き戻し。
このサイクルを回すことで、マーケティングと営業の連携は「精神論」から「データに基づいた仕組み」へと進化します。高額なツールを導入するだけで満足せず、このようなパイプラインの設計にリソースを割くことが、真のDXへの近道です。
より広範なSaaSコストの最適化や、基盤の整理については、SaaSコスト削減とフロントオフィスツールの整理術も参考に、無駄のない構成を目指してください。
導入前に確認すべき「ライセンス」と「同期仕様」のチェックリスト
SalesforceとBrazeの連携を具体的に進める前に、多くの企業が見落としがちな制約事項があります。特にコストやリアルタイム性に直結する部分は、プロジェクトの初期段階で合意しておく必要があります。
| 確認項目 | 詳細・注意点 | ステータス |
|---|---|---|
| Braze Currentsの有無 | 成果データをSalesforceへ自動反映するには、Currentsライセンスが必須(要確認)。 | 要確認 |
| Salesforce API上限 | 大量のユーザー更新をData Streamingで行うと、24時間のAPI制限に抵触する恐れ。 | 要確認 |
| 外部ID(External ID) | UUIDかSalesforce IDか。一度決めると変更には既存ユーザーの移行(データマイグレーション)が発生。 | 設計必須 |
| サンドボックス環境 | テスト用Salesforce環境(Sandbox)とBrazeのテスト用App Groupが揃っているか。 | 要確認 |
よくある誤解:同期は「完全なリアルタイム」か?
AppExchangeアプリによるデータ連携は、Salesforce側の更新トリガー(Outbound Messaging)を利用するため、数秒から数分程度のラグでBrazeに反映されます。しかし、Braze側の行動データをSalesforceへ戻すCurrentsについては、S3やBigQueryを経由する構成の場合、その「書き戻しサイクル」に依存します。「全てのデータが常時1秒以内に同期されるわけではない」という点は、現場のオペレーション設計において重要です。
公式ドキュメントおよび技術リソース
実装の詳細や、最新の技術仕様については、以下の公式リソースを必ず参照してください。
- Braze公式:Salesforce Data Streaming(リアルタイム同期の設定)
- Braze公式:BrazeからSalesforceへのデータの書き戻し
- Salesforce公式:アウトバウンドメッセージングについて(連携の仕組み)
より高度なデータ統合とコスト最適化に向けて
BrazeとSalesforceの連携を深めると、必然的に「データの鮮度」と「APIコスト」のトレードオフに直面します。もし、Salesforce以外の外部データやWeb上の細かな行動ログも統合したい場合、高額なMAに依存せず、DWHを核とした「モダンデータスタック」による構築を検討する時期かもしれません。
また、行動データをトリガーとした施策を検討されている方は、リバースETLを用いた行動トリガー配信のアーキテクチャも、実装のヒントになるはずです。
ご相談・お問い合わせ
本記事の内容を自社の状況に当てはめたい場合や、導入・運用の設計を一緒に整理したい場合は、当社までお気軽にご相談ください。担当より折り返しご連絡いたします。