パーソナライズメールを配信

Salesforce Marketing Cloud でパーソナライズメールを配信する際の機能と設定方法をご紹介します!

2023-02-17 18:30

もくじ

はじめに

以前の記事、Salesforce Marketing Cloud Engagement (セールスフォース マーケティングクラウド エンゲージメント)のアプリケーションである Email Studio についての概要をご紹介しました。
今回は Email Studio や他のアプリケーションである Content Builder や Automation Studio を活用し、高度なパーソナライズメールを配信する際の機能と設定方法についてご紹介します。
尚、Marketing Cloud は非常に多機能であるため、今回ご紹介する方法以外にも様々な設定アプローチがありますので、一つの方法としてご参考頂ければと思います。

パーソナライズメール配信とは?

パーソナライズメールとは、個々のユーザーの興味や行動履歴、属性などを分析し、その情報をもとにユーザーに最適なコンテンツやメッセージをEメールで配信することを指しています。
例えば、あるオンラインストアのウェブサイトでは、ユーザーが過去に購入した商品や閲覧した商品のカテゴリーを分析することによって、そのユーザーに興味のある商品をオススメするようなコンテンツを配信することができます。
パーソナライズメールは、ユーザーの状況に適した情報が送られてくることになるため、ユーザーの関心をより高めたり、満足度の向上につなげたりすることができます。また、企業側にとってもより高いマーケティング効果が期待でき、売り上げの向上やコスト削減につながることが期待できます。

このパーソナライズ配信を Marketing Cloud で実現しようとした際、主に以下の 3 つの機能を活用して実現することができます。

  • データエクステンション

    データエクステンションは、ユーザーが自由に作成・定義できる汎用的なデータテーブルです。
    用途別にデータエクステンションを作成し、データを取り込み、SQL によるクエリを実行や、GUI でのデータ抽出が行えます。
  • Automation Studio

    Automation Studio は、 Marketing Cloud の自動化アプリケーションの一つで、ファイル転送やファイルのインポート・エクスポート、データ抽出、メール送信などを自動化することができます。
    Automation Studio では、SQL でのクエリ実行が行えるため、この機能を活用してデータ統合や加工・整形、抽出を自動化することができます。

  • Content Builder

    Content Builder は、画像ファイル、ドキュメント、およびコンテンツを 1 か所にまとめて、Marketing Cloud で使用できるようにするコンテンツ管理ツールです。
    コンテンツエディターも含まれており、直感的な操作でメールコンテンツを作成することができます。

一般的なメール配信ツールの場合、「データを格納するテーブル領域が一つしか持てない、或いは制限がある」、「データ統合・加工・整形などはできない」ということがあるかと思いますが、Marketing Cloud はこれらの課題を解消することができます。

上記の機能を活用し、どのような設定を行うことでパーソナライズメールの配信が実現できるかをご紹介していきます。
簡単なダミーデータを利用した、データの統合・整形 → パーソナライズされたコンテンツの作成といった一連の流れをご紹介します。

前提条件

ダミーデータとしては、一般的なECサイトでのメールマーケティングで使われるデータを想定しました。今回扱うデータは、以下 3 つのデータテーブルとしています。

顧客マスタ

顧客ID メールアドレス 氏名 生年月日 性別 都道府県
ccc001 xxxx@xxxx 〇〇〇 1955/1/1 男性 東京
ccc002 xxxx@xxxx 〇〇〇 1965/1/1 女性 大阪
ccc003 xxxx@xxxx 〇〇〇 1975/1/1 男性 福岡

商品マスタ

商品ID 商品名 単価
p001 商品A 1000
p002 商品B 3000
p003 商品C 5000
p004 商品D 10000
p005 商品E 20000

購買履歴

購買ID 購入日 顧客ID 商品ID 個数
b001 2022/08/21 c001 p003 1
b002 2022/08/21 c002 p001 1
b003 2022/08/21 c004 p003 1
b004 2022/08/21 c003 p004 1
b005 2022/08/21 c005 p001 2
b006 2022/08/22 c001 p004 1
b007 2022/08/22 c002 p003 1
b008 2022/08/22 c005 p004 1
b009 2022/08/22 c003 p005 2
b010 2022/08/22 c004 p003 1

メールの文面にはユーザー個別に以下の情報の差込をするとします。

  • 氏名
  • 合計購入金額

メール文面は以下のような文章とします。

○○○○様
平素よりショップをご利用いただき、誠にありがとうございます。
これまでのお客様の合計購入金額は以下になります。
□□□□円
今後とも宜しくお願いします。

メールコンテンツの作成

コンテンツの作成は、管理画面のメニュー [ Content Builder ] で行います。
メールの作成では、0からコーディングで作ることも可能ですが、今回はテンプレートを利用して作成を進めます。
[ 作成 ]→ [ テンプレートから作成 ] を選択すると既に設計されたテンプレートが選択でき、画像や文面を追加するだけで出来上がるようになっています。
このテンプレートを活用することにより、ゼロから作成する必要がなくなるため、作成工数を大きく削減することができます。

また、HTML等のコーディングの知識がない方でもきれいなメールを作成することができます。 テンプレートを選択後、コンテンツの作成を行います。今回は以下のようなテキストのコンテンツブロックを選択し文面を入力します。

パーソナライズメール送信

前述の通り、以下の文章を記載します。

○○○○様
平素よりショップをご利用いただき、誠にありがとうございます。
これまでのお客様の合計購入金額は以下になります。
□□□□円
今後とも宜しくお願いします。

〇〇〇〇の氏名の部分に関しては"パーソナライズ文字列"と呼ばれる購読者名などの購読者属性をメールに差し込むことができる記号を設置します。
パーソナライズ文字列は、エディター上部のツールバーから参照することができます。

%%氏名%% 様

ここで問題になるのが、"合計購入金額" の差し込みです。
パーソナライズ文字列は、送信対象のデータエクステンション"顧客マスタ"にある項目を差し込むことができますが、"顧客マスタ"のテーブルには合計購入金額の項目は存在しません。
合計購入金額を算出するために必要な情報は"商品マスタ"と”購買履歴”のデータエクステンションに格納されています。
合計購入金額を算出する方法は幾つか挙げられますが、今回はこの 2 つのデータエクステンションを利用し、顧客 ID 毎の合計購入金額の値が入ったデータを新規に作成するデータエクステンションに格納する方法で実現します。(この新規作成するデータエクステンションの作成方法は省略いたします)
この新規データエクステンションに格納するデータの作成は、Automation Studio のクエリアクティビティを利用して作成します。
クエリアクティビティは、前述の通り、SQL(データベース言語)を利用して、データ統合や加工・整形、抽出を行うことができます。

Automation Studio クエリアクティビティを利用したデータ作成

Automation Studio の設定は、管理画面メニュー[ Journey Builder ] → [ Automation Studio ] で行います。

顧客 ID 毎の合計購入金額を算出する SQL 文は以下のようにします。(対象データエクステンションを:mc_study_purchase_log 商品マスタ:mc_study_purchase_list として記載)

SELECT
顧客ID,
SUM(単価*個数) AS 合計購買金額
FROM
(
SELECT
mc_study_purchase_log.購買ID,
mc_study_purchase_log.購買日,
mc_study_purchase_log.顧客ID,
mc_study_purchase_log.商品ID,
mc_study_purchase_log.個数,
mcstudy_purchase_list.単価
FROM
mc_study_purchase_log
LEFT JOIN
mcstudy_purchase_list
ON
mc_study_purchase_log.商品ID = mcstudy_purchase_list.商品ID
)  AS a
GROUP BY
顧客ID

このクエリの実行結果は、新規作成したデータエクステンション(データエクステンション名を"mc_study_amount_money"とします)に格納するように指定します。
尚、この処理は Automation Studio のスケジュール設定で自動化することも可能ですが、今回は 1 回実行を行います。
実行すると、意図通り、顧客 ID 毎の合計購買金額が含まれたデータがデータエクステンション"mc_study_amount_money"に格納されました。

データエクステンション:mc_study_amount_money

顧客ID 合計購買金額
ccc001 15000
ccc002 4000
ccc003 50000
ccc004 10000
ccc005 12000

このデータエクステンションに合計購買金額は格納されましたが、メール送信を行うデータエクステンション"顧客マスタ"との紐付けが出来ていないため、メール文面内でパーソナライズ文字列を利用した合計購買金額の差し込みはできない状態です。
前述のクエリアクティビティを利用して、顧客マスタとの結合も可能ですが、今回は、メールコンテンツ作成時に利用できる AMPScript と呼ばれるプログラム言語を利用して、メール文面内に合計購買金額を挿入する方法をとります。

AMPScript を利用したパーソナライズ

データの確認後、再び、管理画面のメニュー [ Content Builder ] でメールコンテンツの編集を行います。
合計購入金額の部分では文面に以下のプログラムを記載します。

%%[ Output(Lookup('mc_study_amount_money', '合計購買金額', '顧客ID', 顧客ID)) ]%% 円

ここで記載されているプログラムが前述の "AMPScript" と呼ばれているプログラム言語となります。
AMPScript とは、Marketing Cloud 独自のプログラム言語で、AMPScript を利用することにより、データエクステンションを跨いだデータの参照や、条件ロジックを使用して複雑かつ高度な動的メールの作成等を実現することができます。
「プログラム」と表現はしていますが、上記のようなデータエクステンションを跨いだデータ参照程度の処理であれば表計算ソフトの関数のように扱えますので、難しいものではありません。

上記の AmpScript の内容は以下のようになります。

  • Output(1)
    AMPscript コード の結果をコンテンツに出力する関数です。"1"には、結果を出力したいコードを指定します。
  • Lookup(1, 2, 3, 4)
    特定のデータエクステンションを参照し、条件で指定された値を返します。
    • 引数"1"には、参照するデータエクステンションの名前を指定します。
      ここでは、合計購入金額情報が格納された"mc_study_amount_money"を指定します。
    • 引数"2"には、1 のデータエクステンションの列の名前を指定します。
      ここでは、"mc_study_amount_money"の"合計購入金額"列の名前を指定します。
    • 引数"3"には、検索を行う対象の列の名前を指定します。
      ここでは、"mc_study_amount_money"の"顧客ID"列の名前を指定します。
    • 引数"4"には、検索する値を指定します。
      ここでは、"顧客マスタ"データエクステンションの"顧客ID"列の名前を指定します。

上記により、データエクステンション"mc_study_amount_money"の顧客ID列の値が、メール送信データエクステンション"顧客マスタ"内の顧客IDの値と等しいものが検索され、合致したレコードの"合計購買金額"列の値が取得されることになります。

これにより、最終的にメール文面に登録する文章は以下のようになります。

%%氏名%% 様

平素よりショップをご利用いただき、誠にありがとうございます。
これまでのお客様の合計購入金額は以下になります。
%%[ output(Lookup('mc_study_amount_money', '合計購買金額', '顧客ID', 顧客ID)) ]%% 円

今後とも宜しくお願いします。

コンテンツエディターでは実際のデータエクステンション内のレコード情報を利用したプレビューも可能なため、プレビューをして意図通り動作するかを確認します。

配信設定

メールの配信設定は、いくつの方法がありますが、今回は一番シンプルな Email Studio 内で行います。
管理画面のメニュー [ EmailStudio ] で設定を行います。メニューバーから[ コンテンツ ]を選択し、コンテンツ一覧が表示されるので、先ほど作成した文面を選択します。
右上の[ 送信 ]を選択し、配信設定の画面に移動します。
[ オーディエンスの選択 ]ではmc_study_cus_listを選択します。
[ レビューと送信 ]のメニューでは配信内容の確認をします。
「 これは正しい情報です。このメールを送信する準備が整いました。」にチェックを入れると送信ボタンを押せるようになるので、押下し、送信します。
以上で一連のメール配信の設定が完了となります。

さいごに

今回は Salesforce Marketing Cloud でパーソナライズメールを配信する際の機能とその設定方法についてご紹介しました。
紹介した機能は、Marketing Cloud の機能の一部に過ぎず、取り上げた題材以上に複雑な条件でメール配信したり、配信後のユーザーのアクションによってデータの値を変更したりなど様々なことが実現可能です。
尚、分散したデータテーブル間の情報の結合や加工・集計するには SQL の知識が必要になります。また、AMPScript についても場合によっては複雑な条件式の作成が必要となる可能性もでてくるなど、不慣れな方にはハードルが高い作業となる場合があるかと思います。
そのような場合は、専門的な知識を有する外部のパートナーと協力して進めることが一般的になっています。
最適なパートナーをみつけ、Marketing Cloud を最大限活用し、自社の CRM やデジタルマーケティングのパフォーマンスを最大化させましょう。

トライコーンでは、グループ企業である株式会社セプテーニ(※)と共に、Salesforce Marketing Cloudの 導入支援・活用支援サービスを提供しております。 デジタル広告代理店として、ウェブマーケティングや運用型広告で20年以上の実績をもつセプテーニと、25年以上にわたるCRM・Webマーケティング支援活動で培ったトライコーンのノウハウを基に、顧客獲得から優良顧客への育成・維持まで、広範囲にわたりお客様のビジネスの成功を支援いたします。

CDPサービスDEVELTA


※株式会社セプテーニは株式会社セールスフォース・ジャパンの Salesforce Marketing Cloud コンサルティングパートナーの認定企業です。 ※「Salesforce」「Salesforce Marketing Cloud」「Marketing Cloud Engagement」「Marketing Cloud Account Engagement」「Marketing Cloud Personalization」「Marketing Cloud Customer Data Platform」「Marketing Cloud Intelligence」は、Salesforce.com Inc.の登録商標です。