アトリビューション トリガーを登録してコンバージョンをカウントする方法をご覧ください。
アトリビューション トリガーは、コンバージョンを取得するようブラウザに指示するイベントです。
このドキュメントの手順に沿って操作すると、トリガーを登録して、ブラウザが関連するソースイベント(広告のインプレッションまたは広告クリック)に関連付けるコンバージョンを登録できます。
登録方法
トリガーを登録するには、HTML 要素または JavaScript 呼び出しを使用します。
<img>
タグ<script>
タグfetch
個の電話番号XMLHttpRequest
これにより、ネットワーク リクエストが生成され、トリガー登録の HTTP レスポンス ヘッダーで応答できます。
コンバージョンのアトリビューションを行うトリガーを登録する
トリガーの登録は、アトリビューション ソース イベントの登録と似ています。詳しい手順については、後で説明します。概要は次のとおりです。
- トリガーの登録を開始します。ピクセルまたは
fetch()
呼び出しを使用してリクエストを行います。 トリガー登録ヘッダーで応答して、トリガーの登録を完了します。
ピクセル リクエスト(通常の
src
属性で定義されたエンドポイント、またはattributionsrc
を使用して値を指定している場合はattributionsrc
で定義されたエンドポイント)に送信されるピクセル リクエストを受け取ったら、ヘッダーAttribution-Reporting-Register-Trigger
で応答します。このヘッダーでは、最終的にレポートに表示するトリガーデータを指定します。すべてのレスポンスでこのヘッダーを設定できます。
destination
に一致するサイトからのリクエストに対するレスポンスである限り、ソースが照合されます。ヘッダーを受信すると、ブラウザは一致するソースを検索し、レポートをスケジュール設定します。イベントレベル レポートの例:
{ "event_trigger_data": [{ "trigger_data": "[unsigned 64-bit integer]", "priority": "[signed 64-bit integer]", "deduplication_key": "[unsigned 64-bit integer]" }] }
概要レポートの例:
{ ... // existing fields, such as "event_trigger_data" "aggregatable_trigger_data": [ { "key_piece": "0x400", "source_keys": ["campaignCounts"] }, { "key_piece": "0xA80", "source_keys": ["geoValue", "nonMatchingKeyIdsAreIgnored"] } ], "aggregatable_values": { "campaignCounts": 32768, "geoValue": 1664 } }
サブドメインを扱う
destination
が https://advertiser.example
の場合、https://advertiser.example
とそのサブドメイン(https://shop.advertiser.example
など)の両方のコンバージョンに貢献度を割り当てることができます。
destination
が https://shop.advertiser.example
の場合、https://advertiser.example
と https://shop.advertiser.example
の両方のコンバージョンに貢献度を割り当てることができます。
必須属性と省略可能な属性
HTML 要素を使用するか、JavaScript 呼び出しを行ってトリガーを登録する場合は、attributionsrc
または attributionReporting
を使用する必要があります。これらが必要になるタイミングについて詳しくは、次の表をご覧ください。
attributionsrc
が省略可の場合、使用すると、リクエストは Attribution Reporting の対象になることを示します。attributionsrc
を使用すると、ブラウザは Attribution-Reporting-Eligible
ヘッダーを送信します。また、アプリからウェブの測定にも役立ちます。attributionsrc
が存在する場合、ブラウザは Attribution-Reporting-Support
ヘッダーを送信します。
登録方法 | きっかけ |
---|---|
<a> タグ |
なし: アンカーはトリガーを登録できません。 |
<img> タグ |
attributionsrc は省略可です。トリガーを登録するにはヘッダーで十分です。 |
<script> タグ |
attributionsrc は省略可です。トリガーを登録するにはヘッダーで十分です。 |
fetch 個の電話番号 |
attributionReporting オプションは必須です。 |
XMLHttpRequest |
attributionReporting オプションは必須です。 |
window.open() |
該当なし: window.open はトリガーを登録できません。 |
ステップ 1: トリガーの登録を開始する
トリガーは、ピクセル(<img>
タグ)またはスクリプトタグを使用して登録できます。
新規または既存のコンバージョン ピクセルを使用する
次の例では、attributionsrc
属性を追加して、既存の画像のアトリビューションをトリガーします。
attributionsrc
のオリジンは、ソースの登録を実施したオリジンと一致する必要があります。
<img src="https://advertiser.example/conversionpixel"
attributionsrc="https://adtech.example/attribution_trigger?purchase=13">
次の例では、新しいコンバージョン ピクセル attributionsrc
属性を追加して、アトリビューションをトリガーします。
src
のオリジンは、ソースの登録を実施したオリジンと一致する必要があります。
<img src="https://adtech.example/conversionpixel"
attributionsrc>
スクリプトタグの使用
スクリプトタグを使用してトリガーの登録を実行できます。動作は <img>
と同じです。次のコードサンプルは、fetch()
と XMLHttpRequest()
(XHR)の使用方法を示しています。
このコードは、attributionsrc
を使用した HTML リクエストの動作を効果的にシミュレートします。
const attributionReporting = {
eventSourceEligible: false,
triggerEligible: true,
};
// Optionally set keepalive to ensure the request outlives the page.
window.fetch("https://adtech.example/attribution_source?my_ad_id=123",
{ keepalive: true, attributionReporting });
const attributionReporting = {
eventSourceEligible: false,
triggerEligible: true,
};
const req = new XMLHttpRequest();
req.open("GET", url);
req.setAttributionReporting(attributionReporting);
req.send();
attributionsrc
(値あり / なし)
attributionsrc
は、値の有無にかかわらず追加できます。
<!-- Without a value -->
<img src="..." width="1" height="1" attributionsrc>
<!-- With a value (URL) -->
<img src="..." width="1" height="1" attributionsrc="https://...">
attributionsrc
の値を設定する場合は、1 つ以上の URL をスペースで区切って指定できます。
URL を使用すると、ブラウザは Attribution-Reporting-Eligible
リクエスト ヘッダーを含む個別のキープアライブ取得リクエストを開始します(URL ごとに 1 つずつ)。
これは、要素のメイン リクエストとは別のリクエストに応答してトリガーを登録する場合に便利です。
たとえば、画像要素にトリガーを登録する必要がある場合、実際には画像レスポンスを制御できないことがあります。この場合、トリガー登録ヘッダーを画像とは別のリクエストへのレスポンスとして送信し、完全に制御できる構成が必要になります。attributionsrc
に明示的な値を指定すると、ブラウザにその追加のリクエストを行い、宛先が構成されます。
ステップ 2: ヘッダーで応答する
ブラウザ リクエストを受け取ったら、レスポンスに Attribution-Reporting-Register-Trigger
ヘッダーを含めます。
JSON.stringify({
event_trigger_data: [{
trigger_data: "412444888111012",
// Optional
priority: "1000000000000",
deduplication_key: "2345698765"
}],
debug_key: "1115698977"
});
次のステップ
詳しくは、アトリビューション ソースを登録する方法をご覧ください。