SegmentとBrazeとSalesforce イベントスキーマとプロファイル統合の入り口
目次 クリックで開く
デジタルマーケティングの現場において、顧客一人ひとりに最適化された体験(1-to-1マーケティング)を提供するためには、Webやアプリの「動的な行動データ」と、Salesforceに蓄積された「静的な顧客属性・成約データ」をシームレスに統合する必要があります。
その中心を担うのが、CDP(Customer Data Platform)であるSegmentと、カスタマーエンゲージメントプラットフォームのBraze、そしてCRMの代名詞であるSalesforceです。しかし、これら3つのツールを単に「接続」するだけでは不十分です。データ構造(イベントスキーマ)とID設計が適切でなければ、データは分断され、意図した通りのパーソナライズ配信は実現できません。
本記事では、実務者が直面する「プロファイル統合の入り口」に焦点を当て、各ツールの仕様に基づいた設計手順を解説します。
1. 各ツールの責務と連携の全体像
まず、各システムがどのような役割を果たすべきか、責務を明確にします。ここが曖昧だと、どこに正解のデータがあるのかわからない「データのサイロ化」を招きます。
- Segment: Webサイト、モバイルアプリ、サーバーサイドのあらゆる接点からデータを収集し、標準化されたスキーマで各ツールへ配信します。データの中継地点としての役割です。
- Braze: Segmentから受け取った行動データやSalesforceからの属性データを基に、プッシュ通知、メール、アプリ内メッセージをリアルタイムで実行します。
- Salesforce (Sales Cloud/Service Cloud): 最終的な顧客マスタです。商談状況、オフラインの接点、契約情報など、ビジネス上の「真実のソース」を保持します。
これらを統合する際、最も重要なのがイベントスキーマ(データの構造定義)です。例えば、ユーザーが「資料ダウンロード」をした際、Segmentでどのようなイベント名(Event Name)を付け、どのようなプロパティ(Properties)を持たせるかが、Brazeでのセグメント作成やSalesforceへのキャンペーン登録の成否を分けます。
2. プロファイル統合の鍵を握る「IDマネジメント」
プロファイル統合において最大の障壁となるのが、ユーザーを識別するための「ID」の不一致です。ツールごとに異なるID体系を運用していると、同一人物を紐付けることができません。
2.1 External ID(外部ID)の統一
Brazeでは、ユーザーを特定するためのユニークな値を External ID と呼びます。Segmentではこれを userId として扱います。このIDには、以下の特性を持つ値を採用するのがベストプラクティスです。
- 不変であること(メールアドレスのように変更される可能性がないもの)
- システム間で共通であること(自社DBの連番IDやUUIDなど)
- Salesforce上の「取引先責任者ID (Contact ID)」または「カスタムの一意な会員ID」と一致すること
2.2 匿名ユーザーの昇格(Identity Resolution)
ユーザーがログインする前の「匿名状態」では、Segmentは anonymousId を発行します。ユーザーがログインまたは会員登録した瞬間に、Segmentの identify メソッドを呼び出し、anonymousId と userId を紐付けます。
この時、Braze側では匿名ユーザーの行動履歴が識別済みユーザーのプロファイルに自動的に統合(Alias/Merge)されるよう、連携設定を最適化しておく必要があります。この設計を誤ると、広告から流入した際の行動ログが、会員登録後のプロファイルと切り離されてしまいます。このあたりの詳細な名寄せ設計については、以下の記事も参考にしてください。
WebトラッキングとID連携の実践ガイド。ITP対策・LINEログインを用いたセキュアな名寄せアーキテクチャ
3. SegmentからBrazeへのデータマッピング実務
SegmentからBrazeへデータを送る際、主に2つのAPIコールを使用します。それぞれの用途とスキーマ設計の注意点を解説します。なお、Brazeの公式ドキュメント(Braze Documentation)では、これらの仕様が詳細に定義されています。
3.1 Identify(ユーザー属性の同期)
ユーザーの名前、メールアドレス、プラン、居住地などの「属性」を定義します。Brazeではこれらを「Custom Attributes」として保持します。
// Segment Identify Call の例
analytics.identify('user_12345', {
name: '山田 太郎',
email: 'taro.yamada@example.com',
plan: 'premium',
signupDate: '2023-10-01T00:00:00Z'
});
注意点: Brazeではデータ型(String, Boolean, Number, Array, Time)が厳格に管理されます。一度Stringとして送った plan を後からBooleanに変更することはできません。設計段階で将来的な拡張性を考慮しましょう。
3.2 Track(行動イベントの同期)
「注文した」「動画を見た」といった、時間軸を伴う「行動」を定義します。Brazeでは「Custom Events」として扱われます。
// Segment Track Call の例
analytics.track('Order Completed', {
order_id: 'ord_999',
revenue: 5000,
currency: 'JPY',
product_category: 'SaaS'
});
Brazeの「Custom Events」は、セグメントの作成(例:過去30日以内に購入した人)や、キャンペーントリガー(例:注文完了の瞬間にメール送信)に利用されます。
4. SalesforceとBrazeの双方向連携
CRMとしてのSalesforceとBrazeを連携させるには、主に2つのアプローチがあります。データの鮮度とボリュームによって選択します。
4.1 Braze Cloud Data Ingestion (CDI)
Salesforce Data CloudやSnowflake、BigQueryを介してデータをBrazeに同期する方法です。APIを叩かずに、ウェアハウス上のデータを直接Brazeが読み取ります。大量のデータをバッチで同期する場合に適しており、API制限を回避できます。
4.2 Braze Salesforce Integration (AppExchange)
Salesforce上のリード(Lead)や取引先責任者(Contact)が更新された際、リアルタイムでBrazeのプロファイルを更新します。ただし、SalesforceのAPIリクエストを消費するため、全件同期ではなく「マーケティングに必要なフラグ」のみに絞る設計が推奨されます。
例えば、商談フェーズが「失注」になった情報をBrazeに送り、Braze側で「再アプローチキャンペーン」を発火させるといったシナリオが考えられます。このような高度なアーキテクチャについては、以下の記事も有用です。
【図解】SFA・CRM・MA・Webの違いを解説。高額ツールに依存しない『データ連携の全体設計図』
5. アーキテクチャ比較表
ツール構成を選択する際の判断基準を以下の表にまとめました。
| 構成パターン | メリット | デメリット | 推奨ケース |
|---|---|---|---|
| Segment 経由統合 | 実装が一度で済む(Write Once, Read Everywhere)。データの標準化が容易。 | SegmentのMTU(月間アクティブユーザー)課金が増加する。 | Braze以外にも広告媒体やBIツールへデータを送る場合。 |
| Braze SDK 直埋め | Braze特有の機能(Content Cards等)をフル活用しやすい。遅延が最小。 | 他のツール(Salesforce等)へデータを送る際、別途実装が必要になる。 | Brazeがマーケティングスタックの中心であり、多機能なアプリ内体験を重視する場合。 |
| Salesforce 直接連携 | CRM上の商談データをリアルタイムにキャンペーンへ反映できる。 | SalesforceのAPI制限に抵触しやすい。プロファイルが重複するリスク。 | B2Bモデルで、商談ステータスに基づいた精密なCRM施策を行う場合。 |
6. イベントスキーマ設計の手順とエラー対策
実務で失敗しないためのステップバイステップの構築手順です。
Step 1: トラッキングプランの作成
いきなり実装せず、まずはスプレッドシート等で「どの画面で」「どのイベントを」「どんなプロパティと共に」計測するかを定義します。Segmentではこれを「Tracking Plan」と呼びます。
Step 2: Segment Destination の設定
Segmentの管理画面から Braze を Destination として追加します。この際、Brazeの API Key とエンドポイント(例:https://www.google.com/search?q=sdk.iad-01.braze.com)を正確に入力します。エンドポイントはBrazeのインスタンスによって異なるため、Braze管理画面の「Dashboard Settings」で必ず確認してください。
Step 3: データ検証
Segmentの「Debugger」とBrazeの「User Search / Event User Logs」を同時に開き、イベントがリアルタイムで到達しているか確認します。
よくあるエラー:The External ID was not found
Brazeにイベントが届かない最大の原因は、Identifyコールで
userIdを送る前に、Trackコールを送っているケースです。BrazeはuserIdが不明なイベントを破棄(設定による)したり、別の匿名プロファイルとして作成したりします。必ずidentifyを先行させてください。
また、広告データとの連携においては、サーバーサイドでのイベント送信(CAPI等)が重要になります。これについては、こちらのガイドが参考になります。
広告×AIの真価を引き出す。CAPIとBigQueryで構築する「自動最適化」データアーキテクチャ
7. 拡張性を担保するスキーマ設計の心得
最後に、運用開始後に後悔しないためのポイントを3つ挙げます。
- プロパティ名の命名規則を統一する:
order_idとorderIdが混在すると、Braze側で別々のフィルタとして認識されます。スネークケースかキャメルケースか、組織で統一してください。 - 「属性」と「イベント」を使い分ける: 「累計購入回数」はイベントから計算可能ですが、Brazeのセグメント作成スピードを上げるために、属性(Custom Attribute)としても保持しておくのが定石です。
- 不要なデータは送らない: Brazeはデータポイント(Data Points)課金です。マーケティングに活用しないデバッグ用のログや、頻繁に更新される一時的なステータスを送り続けると、コストが跳ね上がります。
まとめ
Segment、Braze、Salesforceの連携は、強力なマーケティング基盤となりますが、その成否は「プロファイル統合の入り口」であるID設計とイベントスキーマに依存します。各ツールの公式ドキュメントを参照しながら、まずは最小限の、しかし一貫性のあるデータ構造からスタートすることをお勧めします。
ツール導入そのものが目的ではなく、統合されたデータをいかに顧客体験の向上に結びつけるか。そのための「清潔なデータ基盤」を構築することが、IT実務担当者の最も重要なミッションです。
実務で差がつく「データ品質」と「コスト」の管理ポイント
SegmentからBraze、Salesforceへとデータを流し込む仕組みが整った後、運用フェーズで必ず直面するのが「データの汚れ」と「従量課金コスト」の課題です。これらを未然に防ぐための補足知識を整理します。
よくある誤解:すべての行動データを同期すべき?
「データは多ければ多いほど良い」というのは、CDP・MA運用における代表的な誤解の一つです。Brazeでは、送信される「データポイント」や「月間アクティブユーザー(MTU)」に基づいて費用が発生します。例えば、1秒間に何度も発生するスクロールイベントや、デバッグ用のログをそのままBrazeに転送すると、マーケティングに活用できないままコストだけが跳ね上がるリスクがあります。
SegmentのDestination Filtersなどの機能を活用し、Braze側でのセグメント作成やキャンペーン発火に「本当に必要なイベント」だけをフィルタリングして届ける設計が、長期的な運用コストの適正化には不可欠です。
実務者向け:データ整合性チェックリスト
| チェック項目 | 確認すべき公式リソース / 対策 |
|---|---|
| Brazeのデータ型(Data Types)は確定しているか | 公式ドキュメント:Custom Attribute Data Typesを確認。一度定義した型(String/Boolean等)の変更は原則不可。 |
| SalesforceのAPI制限(Limits)に抵触しないか | Salesforceの「組織全体のAPIリクエスト」を確認。頻繁な更新が必要なデータは、Cloud Data Ingestion(CDI)によるバッチ同期を検討。 |
| レートリミット(Rate Limiting)の設定 | BrazeからSalesforceへの書き戻しが発生する場合、Salesforce側のガバナ制限にかからないよう、同期頻度を調整。 |
さらなるアーキテクチャの進化:DWH中心の設計へ
事業規模が拡大し、扱うデータ量が膨大になると、ツール間の直接連携(Point-to-Point)だけでは、ライセンス費用の高騰やデータ定義の不一致を抑えきれなくなる場合があります。
その際の解決策として、Google BigQueryなどのデータウェアハウスを「真実のソース」とし、そこから各SaaSへ必要な分だけデータを配分するリバースETLを用いた構成も検討に値します。この「モダンデータスタック」への移行については、以下の記事で詳しく解説しています。
ご相談・お問い合わせ
本記事の内容を自社の状況に当てはめたい場合や、導入・運用の設計を一緒に整理したい場合は、当社までお気軽にご相談ください。担当より折り返しご連絡いたします。