Metaピクセルを使用して、ウェブサイト利用者のアクションをトラッキングすることができます(コンバージョントラッキング)。トラッキングされたコンバージョンはFacebook広告マネージャとFacebookイベントマネージャに表示され、コンバージョンファネルの効果を分析したり、広告投資収益率を計算したりするために使用できます。また、トラッキングされたコンバージョンを使用して、カスタムオーディエンスを定義して広告を最適化したり、Advantage+カタログ広告キャンペーンを定義したりすることもできます。カスタムオーディエンスを定義すると、それを使用してコンバージョンが発生しそうなほかのFacebookユーザーを特定し、広告のターゲットに設定することができます。
ピクセルを使用してコンバージョンをトラッキングするには、次の3つの方法があります。
コンバージョンをトラッキングするすべてのページにピクセルのベースコードを事前にインストールしておく必要があります。
標準イベントは、コンバージョン関連の一般的なアクティビティ(商品の検索、商品の閲覧、商品の購入など)に対応する事前定義された訪問者アクションです。標準イベントではパラメーターがサポートされます。パラメーターを使用すると、イベントに関する追加情報(商品ID、カテゴリ、購入した商品の数など)を含むオブジェクトを組み込むことができます。
標準イベントの完全なリストについては、ピクセルの標準イベントのリファレンスをご覧ください。コンバージョントラッキングと標準イベントについて詳しくは、Blueprintをご確認ください。
すべての標準イベントは、イベント名と(オプションで)JSONオブジェクトをパラメーターとして指定してピクセルのfbq('track')
関数を呼び出すことによってトラッキングされます。例えば、以下は利用者が購入イベントを完了したときにトラッキングする関数呼び出しです。この呼び出しでは、パラメーターとして通貨と値が含まれています。
fbq('track', 'Purchase', {currency: "USD", value: 30.00});
その関数を呼び出すと、イベントマネージャで購入イベントとしてトラッキングされます。
ページが読み込まれたとき、または訪問者がボタンをクリックするなどの操作を完了したときに、ウェブページの<body>
の開始タグと終了タグの間の任意の場所でfbq('track')
関数を呼び出すことができます。
例えば、訪問者が購入を完了した後、標準の購入イベントをトラッキングする場合は、次のように購入確認ページでfbq('track')
関数を呼び出せます。
<body> ... <script> fbq('track', 'Purchase', {currency: "USD", value: 30.00}); </script> ... </body>
代わりに利用者が購入ボタンをクリックしたときに標準の購入イベントをトラッキングする場合は、次のようにチェックアウトページでfbq('track')
関数呼び出しを購入ボタンと結び付けることができます。
<button id="addToCartButton">Purchase</button> <script type="text/javascript"> $('#addToCartButton').click(function() { fbq('track', 'Purchase', {currency: "USD", value: 30.00}); }); </script>
上記の例ではjQueryを使用して関数呼び出しをトリガーしていますが、関数呼び出しのトリガーには任意のメソッドを使用することができる点に注意してください。
Facebookの事前定義されている標準イベントでニーズに対応できない場合は、独自のカスタムイベントをトラッキングすることができます。カスタムイベントを使用してカスタムオーディエンスを定義し、広告を最適化することもできます。カスタムイベントではパラメーターもサポートされます。これを組み込むことで、各カスタムイベントに関する追加情報を指定できます。
コンバージョントラッキングとカスタムイベントについて詳しくは、Blueprintをご確認ください。
カスタムイベントは、カスタムイベント名と(オプションで)JSONオブジェクトをパラメーターとして指定してピクセルのfbq('trackCustom')
関数を呼び出すことによってトラッキングすることができます。標準イベントと同様、ページが読み込まれたとき、または利用者がボタンをクリックするなどのアクションを実行したときに、ウェブページの<body>
の開始タグと終了タグの間の任意の場所でfbq('trackCustom')
関数を呼び出すことができます。
例えば、割引を取得するためにプロモーションをシェアしている利用者をトラッキングしたい場合があります。その場合、次のようなカスタムイベントを使用してトラッキングできます。
fbq('trackCustom', 'ShareDiscount', {promotion: 'share_discount_10%'});
カスタムイベント名は長さが50文字未満の文字列でなければなりません。
ピクセルが読み込まれるたびに、自動的にfbq('track', 'PageView')
を呼び出してPageView標準イベントをトラッキングします。PageView標準イベントは、関数呼び出しをトリガーしたページの参照元のURLを記録します。記録したそのURLをイベントマネージャで使用して、トラッキング対象の利用者のアクションを定義することができます。
例えば、メーリングリストに登録している訪問者をサンキューページにリダイレクトするとします。そのためには、URLに/thank-you
が含まれているページを閲覧したウェブサイト訪問者をトラッキングするカスタムコンバージョンを設定します。URLに/thank-you
が含まれているページがサンキューページだけであり、かつそのページにピクセルがインストールされている場合、そのページを閲覧した人はそのカスタムコンバージョンを使ってトラッキングされます。
一度トラッキングすると、カスタムコンバージョンを使って広告キャンペーンを最適化したり、カスタムオーディエンスを定義したり、標準イベントやカスタムイベントを使用してカスタムオーディエンスをさらに絞り込んだりできるようになります。カスタムコンバージョンについて詳しくは、Blueprintをご確認ください。
カスタムコンバージョンはURLの全体または一部に依存するため、ウェブサイトのURLの一意の文字列のみに基づいて訪問者のアクションを定義できるようにする必要があります。
カスタムコンバージョンの作成は、イベントマネージャ内だけで完結します。作成方法については、広告主ヘルプドキュメントを参照してください。
Metaピクセルのベースコードに何も追加せずに、アクションの最適化とアクションのトラッキングを行います。これは、17個の標準イベント以外に追加で実行できます。
/{AD_ACCOUNT_ID}/customconversions
に作成します。 pixel_rule
に指定してください。例えば、購入後にthankyou.html
というページが表示されるとします。 次の例は、'thankyou.html'
が表示された時点でPURCHASE
コンバージョンを記録します。
use FacebookAds\Object\CustomConversion;
use FacebookAds\Object\Fields\CustomConversionFields;
$custom_conversion = new CustomConversion(null, 'act_<AD_ACCOUNT_ID>');
$custom_conversion->setData(array(
CustomConversionFields::NAME => 'Example Custom conversion',
CustomConversionFields::PIXEL_ID => <PIXEL_ID>,
CustomConversionFields::PIXEL_RULE => array(
'url' => array('i_contains' => 'thank-you.html'),
),
CustomConversionFields::CUSTOM_EVENT_TYPE => 'PURCHASE',
));
$custom_conversion->create();
from facebookads.adobjects.customconversion import CustomConversion
custom_conversion = CustomConversion(parent_id='act_<AD_ACCOUNT_ID>')
custom_conversion.update({
CustomConversion.Field.name: 'Example Custom Conversion',
CustomConversion.Field.pixel_id: <PIXEL_ID>,
CustomConversion.Field.pixel_rule: {
'url': {'i_contains': 'thankyou.html'},
},
CustomConversion.Field.custom_event_type: 'PURCHASE',
})
custom_conversion.remote_create()
curl \
-F 'name=Example Custom conversion' \
-F 'pixel_id=<PIXEL_ID>' \
-F 'pixel_rule={"url":{"i_contains":"thank-you.html"}}' \
-F 'custom_event_type=PURCHASE' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v2.8/act_<AD_ACCOUNT_ID>/customconversions
その後、目的としてCONVERSIONS
を使用してキャンペーンを作成できます。
広告セットレベルで、同じカスタムコンバージョン(pixel_id
、pixel_rule
、custom_event_type
)をpromoted_object
に指定します。
広告インサイトは、カスタムコンバージョンに関する情報を返します。
curl -i -G \ -d 'fields=actions,action_values' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v2.7/<AD_ID>/insights
標準コンバージョンとカスタムコンバージョンの両方が返されます。
{ "data": [ { "actions": [ { "action_type": "offsite_conversion.custom.17067367629523", "value": 1225 }, { "action_type": "offsite_conversion.fb_pixel_purchase", "value": 205 } ], "action_values": [ { "action_type": "offsite_conversion.custom.1706736762929507", "value": 29390.89 }, { "action_type": "offsite_conversion.fb_pixel_purchase", "value": 29390.89 } ], "date_start": "2016-07-28", "date_stop": "2016-08-26" } ], "paging": { "cursors": { "before": "MAZDZD", "after": "MjQZD" }, "next": "https://graph.facebook.com/v2.7/<AD_ID>/insights?access_token=<ACCESS_TOKEN>&pretty=0&fields=actions%2Caction_values&date_preset=last_30_days&level=adset&limit=25&after=MjQZD" } }
カスタムコンバージョンには一意のIDがあり、そのIDをクエリして特定のコンバージョン(ルールベースのコンバージョンなど)を検索できます。
curl -i -G \ -d 'fields=name,pixel,pixel_aggregation_rule' \ -d 'access_token=ACCESS-TOKEN' \ https://graph.facebook.com/v2.7/<CUSTOM_CONVERSION_ID>
広告アカウント当たりのカスタムコンバージョンの最大数は100です。広告インサイトAPIを使用してカスタムコンバージョンの指標を取得する場合は、次の制限があります。
広告のtracking_spec
パラメーターにfb_pixel
フィールドを追加することにより、ピクセルでオフサイトコンバージョンをトラッキングします。詳しくはこちらをご覧ください。
use FacebookAds\Object\Ad;
use FacebookAds\Object\Fields\AdFields;
$ad = new Ad(null, 'act_<AD_ACCOUNT_ID>');
$ad->setData(array(
AdFields::ADSET_ID => <AD_SET_ID>,
AdFields::CREATIVE => array(
'creative_id' => <CREATIVE_ID>,
),
AdFields::NAME => 'Offsite Conversions Ad',
AdFields::TRACKING_SPECS => array(array(
'action.type' => 'offsite_conversion',
'fb_pixel' => <PIXEL_ID>,
)),
));
$ad->create();
from facebookads.adobjects.ad import Ad
ad = Ad(parent_id='act_<AD_ACCOUNT_ID>')
ad.update({
Ad.Field.adset_id: <AD_SET_ID>,
Ad.Field.name: 'Offsite Conversions Ad',
Ad.Field.creative: {
'creative_id': <CREATIVE_ID>,
},
Ad.Field.tracking_specs: [
{
'action.type': 'offsite_conversion',
'fb_pixel': <PIXEL_ID>,
},
],
})
ad.remote_create(params={
'status': Ad.Status.paused,
})
Ad ad = new AdAccount(act_<AD_ACCOUNT_ID>, context).createAd()
.setAdsetId(<AD_SET_ID>)
.setCreative(
new AdCreative()
.setFieldId(<CREATIVE_ID>)
)
.setName("Offsite Conversions Ad")
.setTrackingSpecs("{\"action.type\":\"offsite_conversion\",\"fb_pixel\":\"" + <PIXEL_ID> + "\"}")
.execute();
String ad_id = ad.getId();
curl \
-F 'adset_id=<AD_SET_ID>' \
-F 'creative={"creative_id":"<CREATIVE_ID>"}' \
-F 'name=Offsite Conversions Ad' \
-F 'tracking_specs=[{"action.type":"offsite_conversion","fb_pixel":"<PIXEL_ID>"}]' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v2.11/act_<AD_ACCOUNT_ID>/ads
パラメーターは、JSON形式の任意のオブジェクトであり、標準イベントとカスタムイベントをトラッキングするときに含めることができます。パラメーターを使用することで、ウェブサイト訪問者のアクションに関する追加情報を提供することができます。一度トラッキングすると、パラメーターを使用して、作成するカスタムオーディエンスをより細かく定義できるようになります。パラメーターについて詳しくは、Blueprintをご確認ください。
標準イベントまたはカスタムイベントがあるパラメーターオブジェクトを含めるには、JSONを使ってパラメーターデータをオブジェクトとしてフォーマットし、fbq('track')
またはfbq('trackCustom')
関数を呼び出すときに3番目の関数パラメーターとして組み込みます。
例えば、プロモーションの結果として複数の商品を購入した訪問者をトラッキングしたい場合があります。その場合は次のようにします。
fbq('track', 'Purchase', // begin parameter object data { value: 115.00, currency: 'USD', contents: [ { id: '301', quantity: 1 }, { id: '401', quantity: 2 }], content_type: 'product' } // end parameter object data );
カスタムオーディエンスを定義するときにイベントパラメーターに含まれるデータを使用する場合は、キー値にスペースを含めないでください。
事前定義されている以下のオブジェクトプロパティは、どのカスタムイベントにも含められます。また、そのプロパティをサポートしている標準イベントにも含めることができます。JSONを使ってパラメーターのオブジェクトデータをフォーマットします。
プロパティキー | 値のタイプ | パラメーターの説明 |
---|---|---|
| 文字列 | ページまたは商品のカテゴリ |
| 整数または文字列の配列 | SKUなどのイベントに関連付けられた商品ID。例: |
| 文字列 | ページ/商品の名前。 |
| 文字列 | 渡される |
| オブジェクトの配列 | イベントに関連付けられたEAN (International Article Number) (該当する場合)またはその他の商品やコンテンツID、および商品の数量と価格を含むJSONオブジェクトの配列。必須: 例: |
| 文字列 | 指定した |
| 文字列 | 配信のカテゴリ。使用できる値は以下のとおりです。
|
| 整数 | チェックアウトが開始されたときのアイテム数。 |
| 整数、Float | 広告主によって定義された登録者の予想顧客生涯価値。正確な値として表されます。 |
| 文字列 | 利用者が検索のために入力した文字列。 |
| ブーリアン |
|
| 整数または浮動小数点 | 購入イベントや値の最適化を活用したイベントの場合に必須。イベントに関連付けられている数値。これは金額を表している必要があります。 |
事前定義されているオブジェクトプロパティで対応できない場合は、独自のカスタムプロパティを含めることができます。カスタムプロパティは、標準イベントとカスタムイベントの両方で使用でき、カスタムオーディエンスをより細かく定義できます。
例えば、まずほかの商品と比較してから、複数の商品を購入した利用者をトラッキングしたい場合があります。その場合は次のようにします。
fbq('track', 'Purchase', // begin parameter object data { value: 115.00, currency: 'USD', contents: [ { id: '301', quantity: 1 }, { id: '401', quantity: 2 }], content_type: 'product', compared_product: 'recommended-banner-shoes', // custom property delivery_category: 'in_store' } // end parameter object data );
コンバージョンのトラッキングに合わせて、カスタムオーディエンスを定義することをおすすめします。そうすることで、ウェブサイトコンバージョンに応じて広告を最適化できます。