適切なオーディエンスをターゲットとした最適化されたFacebook広告を作成します。Profiles APIとセグメントを使用することで、すでにウェブサイトにアクセスしている、またはウェブサイトに登録している訪問者のリストを作成し、彼らに最適化されたFacebook広告を送信できます。
この統合とFacebookカスタムオーディエンスへのジョブ結果の書き込みの違いは何ですか?
Facebookカスタムオーディエンスを使用するには、メールアドレスや電話番号などのユーザー識別情報が必要です。Profiles API統合により、そのようなパラメータなしでセグメントをFacebookカスタムオーディエンスに送信できます。代わりに、Facebook Pixelを使用します。
- 前提条件
- PixelIDを使用したTD Profiles APIとFacebookの統合
- Facebook Pixel IDの取得
- ウェブサイトへのJavaScriptの設定
- Facebook JavaScriptタグ
- Treasure Data JavaScript SDK
- ケース v1.9.x
- ケース v2.x.x
- 統合ステータスの確認
- カスタムオーディエンスの作成
Treasure Dataの基本知識
Facebookビジネスアカウントのアカウント
- Audience Studio > Profile API Tokensに移動します。

- 新規トークンをクリックします。

- キーカラムの指定やパーソナライゼーションを適用する顧客のセグメントの指定など、APIトークンを設定するためのフィールドに入力します。セグメントを検索するために必要なキーカラムを選択します。この例では、td_global_idが選択されています。また、Profiles APIで使用するセグメントを登録します。選択したキーがセグメントに関連付けられている場合、Profiles APIはセグメントIDを返します。

- トークンを保存します。
Facebook Pixel IDは、Facebookビジネスアカウントで取得できます。 https://www.facebook.com/business/help/952192354843755を参照してください

ウェブサイトにFacebook JavaScriptタグを統合します。スクリプト内の「YOUR_PIXEL_ID」をPixel IDに置き換えます。
詳細については、https://developers.facebook.com/docs/facebook-pixel/implementationを参照してください
2つのバージョンのJavaScript SDKを提供しています。使用するバージョンは、この手順で使用されるfetchUserSegments関数のレスポンス形式に影響します。JavaScript SDK バージョン2の使用を推奨します。
fetchUserSegments関数は、訪問者がウェブサイトにアクセスしたときに関連するセグメントIDを返します。trackCustomパラメータを使用してfbq関数にセグメントIDを追加すると、それらがFacebookに送信されます。
fbq関数のパラメータには以下が必要です: (1): イベント名(任意)、(2): Facebook上のカラム名(任意)、(3): fetchUserSegments関数からのセグメントID
<script type="text/javascript">
var td = new Treasure({
...
});
var successCallback = function (key, segments) {
// send to FB
fbq('trackCustom','event_tracking',{'td_segment_id': segments.join(',')}); // fbq('trackCustom','(1)',{'(2)': (3)});
};
td.fetchUserSegments({
audienceToken: [token1, token2],
keys: {some_key: 'value'}
}, successCallback);
</script>JS SDK v2以降はv1.9以前とは異なるレスポンス形式を返すため、追加のロジックステップでfetchUserSegments関数からセグメントIDのみを抽出する必要があります。その後、trackCustomパラメータを使用してfbq関数にセグメントIDを追加し、IDをFacebookに送信します。
fbq関数のパラメータには以下が必要です: (1): イベント名(任意)、(2): Facebook上のカラム名(任意)、(3): fetchUserSegments関数からのセグメントID
<script type="text/javascript">
var td = new Treasure({
...
});
function sendSegmentId2Fb(seg) {
var segIdAll = [];
for (var i = 0; i < seg.length; i++) {
segIdAll = segIdAll.concat(seg[i].values);
};
var segId = segIdAll.filter(function (x,i,self) {return self.indexOf(x) === i;});
// send to FB
fbq('trackCustom','event_tracking',{'td_segment_id': segId.join(',')}); // fbq('trackCustom','(1)',{'(2)': (3)});
};
var successCallback = function(values) {
sendSegmentId2Fb(values);
};
td.fetchUserSegments({
audienceToken: [token1, token2],
keys: {some_key: 'value'}
}, successCallback);
</script>JavaScript統合がトリガーされた後、Facebookビジネスアカウントページでデータ統合のステータスを確認できます。
- Events ManagerセクションのPixelsに移動します。

- 統合したPixelを選択します。

- Activityメニューをクリックし、fbq関数を使用して呼び出したトラッキングターゲット名を確認します。

データがFacebook側に保存された後、そのデータを使用してカスタムオーディエンスを作成できます。
- Event Managersに移動し、Pixelsをクリックします。

- Pixelを選択します。

- カスタムオーディエンスの作成をクリックします。

- 広告を送信する条件を選択します
- イベント名を選択
- 条件を選択(例:td_segment_idに
<セグメントID>が含まれる)
- カスタムオーディエンス名を設定します。

- 最後に、カスタムオーディエンスのステータスを確認できます。
