登錄歸因觸發條件

瞭解如何登錄歸因觸發條件以便計算轉換。

歸因觸發條件是告知瀏覽器要擷取轉換的事件。

請按照本文件中的步驟登錄觸發事件,以便瀏覽器登錄轉換並歸因給相關來源事件 (即廣告曝光或廣告點擊)。

註冊方式

如要登錄觸發條件,請使用 HTML 元素或 JavaScript 呼叫:

  • <a> 標記
  • <img> 標記
  • <script> 標記
  • fetch 項電話素材資源
  • XMLHttpRequest
  • window.open

這會產生網路要求,讓您透過觸發事件登錄 HTTP 回應標頭來回應。

登錄觸發條件以歸因轉換

登錄觸發事件與登錄歸因來源事件類似。完整步驟會在後續章節中說明。摘要如下:

  1. 開始登錄觸發條件。使用像素或 fetch() 呼叫提出要求。
  2. 透過觸發觸發事件登錄標頭來完成觸發事件登錄作業

    收到像素要求後,系統會將要求傳送至一般 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]"
      }]
    }
    ```
    
    **Example for summary reports:**
    
    ```json
    {
      ... // 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
      }
    }
    ```
    

處理子網域

如果 destinationhttps://advertiser.example,系統即可歸因 https://advertiser.example 及其子網域的轉換 (例如 https://shop.advertiser.example)。

如果 destinationhttps://shop.advertiser.examplehttps://advertiser.examplehttps://shop.advertiser.example 的轉換都可歸因。

必要和選用屬性

當您使用 HTML 元素或發出 JavaScript 呼叫來登錄觸發條件時,可能需要使用 attributionsrcattributionReporting。請參閱下表,進一步瞭解在哪些情況下需要這些權限。

如果 attributionsrc 為「選用」,使用時表示這項要求符合歸因報表的資格。如果您使用 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 要求的行為:

// With fetch
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 });
// With XMLHttpRequest:
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 的值,則這應該是單一網址。

使用網址會導致瀏覽器啟動獨立的保持運作擷取要求 (每個網址一個,包含 Attribution-Reporting-Eligible 要求標頭)。

如果您想透過回應與元素主要要求不同的要求來註冊來源,這個方法就很實用。

舉例來說,如果您需要登錄錨定元素點擊來源,您實際上可能無法控管目的地。在這種情況下,建議您透過設定傳送來源登錄標頭做為回應,做為回應與導覽之外的要求,而您可以完全掌控。只要指定 attributionsrc 的明確值,就能指示瀏覽器發出額外要求,並設定其目的地。

步驟 2:使用標頭回覆

收到瀏覽器要求後,請回覆並加進回應的 Attribution-Reporting-Register-Trigger 標頭:

JSON.stringify({event_trigger_data: [{
      trigger_data: '412444888111012',
      // Optional
      priority: '1000000000000',
      deduplication_key: '2345698765'
    }], debug_key: '1115698977'})

後續步驟

瞭解如何登錄歸因來源