見出し画像

【第258回】 Marketing Cloud Next : エンゲージメントデータの活用方法

前回の記事では、Marketing Cloud Growth & Advanced Edition における メールのエンゲージメントデータ(送信、開封、クリック、バウンス、購読取り消しなど)の確認方法 について解説しました。

これらの「送信、開封、クリック、バウンス、購読取り消し」などの履歴データは、以下のオブジェクトで管理されています。

管理オブジェクト

  1. データストリーム、その同名のデータレイクオブジェクト

    • MessagingEventsEmail-EmailEngagement(Summer '25 以前)

    • MessagingEventsEmailV2-EmailEngagement(Summer '25 以後)

  2. データモデルオブジェクト

    • Email Engagement

以前は MessagingEventsEmail-EmailEngagement にレコードが作成されていましたが、Summer '25 以降は MessagingEventsEmailV2-EmailEngagement になっています。現在、V1 は停止しています

データレイクオブジェクトの項目は、その一部のみがデータモデルオブジェクトにマッピングされており、すべての項目がマッピングされているわけではありません。その点で、データレイクオブジェクトの方が使える項目が多いわけですが、以下のケースにおいては、データモデルオブジェクトである「Email Engagement」を使用する必要があります。

  1. セグメントの作成

  2. 決定要素での活用(エンゲージメント分岐)

これらのケースで使用されるのは、データモデルオブジェクトであり、データレイクオブジェクトを直接利用することができません。


セグメントの作成

それではセグメントの例として「あるメール要素内の、ある特定の URL をクリックした人」を取得してみます。これは、Marketing Cloud Engagement のユーザーであれば、「メジャー」という機能に該当することに気づくかと思います。

メジャーは、過去 6 ヶ月間 のエンゲージメントデータを使用できますが、Marketing Cloud Growth & Advanced Edition のセグメントでは、最大で 2 年間分 のエンゲージメントデータを活用できます。

今回は、「あるフローから送信したメールの特定の URL を 3 回クリックした人」という内容でセグメントを設定してみます。

今回使用するのは、以下の 4 つの情報です。

  1. フローの名前:SignupTaskReg3(← フローの API 名ではありません)
    (DMO 名:Email Engagement > Flow Element Run > Flow Element > Flow Version > Flow / 項目名:Name)

  2. フローのバージョン番号:1
    (DMO 名:Email Engagement > Flow Element Run > Flow Element > Flow Version / 項目名:Version Number)

  3. メール要素の API 名:Email
    (DMO 名:Email Engagement > Flow Element Run > Flow Element / 項目名:Name)

  4. クリックしたリンク URL:https://www.salesforce.com/jp/
    (DMO 名:Email Engagement / 項目名:Resolved URL)

※ 開封の場合は、DMO 名:Email Engagement / 項目名:Engagement Channel Action を「OPEN」で指定します。

今回、これらには、以下のようなリレーションが設定されていますので、セグメントでは ①②③④⑤ の順番に選択していきます。

注意点:

  • クリックしたリンク URL を設定する際、「Link URL」という項目も存在しますが、ここでは「Resolved URL」を選択します。

  • ③ の Flow Element を選択する際、以下の図の通りパスが 2 つに分かれます。Flow Element Run.Flow Element 経由のパスと Flow Element Run.Outcome 経由のパスが存在するので「Flow Element Run.Flow Element」経由を選択してください。※ Outcome 側を選ばないように。

これで実行しますと、以下の通りセグメントが取得できました。成功です。


決定要素での活用(エンゲージメント分岐)

続いて、決定要素に条件を設定し、「ある一定期間待機している間に、その直前に送信したメールを開封した人に別のメッセージを送る」という内容でフローを作成してみます。

この仕組みは、Marketing Cloud Engagement では「エンゲージメント分岐」として実現されていましたが、現時点で Marketing Cloud Growth & Advanced Edition には「エンゲージメント分岐」が用意されていませんので、カスタムで設定する必要があります。

フローの設定の前に、Email Engagement をデータグラフで設定してください。今回使用するのは、以下の 3 つの情報です。

  1. DMO 名:Email Engagement / 項目名:Engagement Channel Action / エンゲージメント種別

  2. DMO 名:Email Engagement / 項目名:Engagement Date Time / エンゲージメント日時

  3. DMO 名:Email Engagement / 項目名:Flow Element Run / メール要素の API 名 が含まれています

重要:決定要素で、複数のデータグラフの DMO を選択する場合、必ずセグメントで言うところの別コンテナの扱いになります。よって、厳密な出し分けにならない可能性があります(詳細はこちら)。そのためセグメントでは、別の DMO を利用しましたが、決定要素では、Email Engagement 一つで処理することがベストプラクティスです。

以下の通り、開封された後にデータグラフが更新されて、以下のように、1 つの Engagement 履歴に、3 つの情報が揃っていることが望ましいです。

それでは、実際にフローを以下の通り作成して、アクティブ化します。その後、メールを送信して 1 名だけメールを開封したら、待機期間の経過を待ちます。

設定は以下です。

  • Engagement Channel Action [次の文字列と一致する] OPEN

  • Engagement Date Time [以上] InterviewStartTime(=フローの開始時間)

  • Flow Element Run [次の文字列を含む] メール要素 API 名

注意点:
① Flow Element Run は、ずばりメール要素の API 名にはなりません。例を挙げると「10pHu0000008PQfIAM_0_2#OpenSegmentV5」のような形です。"OpenSegmentV5" がメール要素の API 名です。
よって、ここでは「次の文字列を含む」を利用しています。

② 日本で InterviewStartTime(フローを開始した時間)を使用する場合は、「dateAddInterviewStartTime」のような数式を作成し(この名称は任意)、「{!$Flow.InterviewStartTime} - (9/24)」を入力して作成してください。
これは Engagement Date Time が 9 時間前で保存されるためです。

待機期間が終了すると、以下の通り、開封済みのパスと未開封のパスに連絡先が分かれました。成功です。


いかがでしたでしょうか。

Marketing Cloud Growth & Advanced Edition でも、Marketing Cloud Engagement の「メジャー」だったり、「エンゲージメント分岐」のような機能が実現できることが確認できました。

Summer '25 でデータレイクオブジェクトに V2(Version 2)が登場したことで、今後も V3(Version 3)など登場が予想されます。仮に V3 が登場しても、標準の Email Engagement を利用していれば、問題は発生しないはずですので、なるべく標準のデータモデルを活用するようにしましょう。

今回は以上です。


次の記事はこちら

前回の記事はこちら

私の note のトップページはこちら