注册归因触发器

了解如何注册归因触发器以统计转化次数。

归因触发器是告诉浏览器捕获转化的事件。

您可以按照本文档中的步骤注册触发器,以注册浏览器随后归因于相关来源事件(即广告展示或点击)的转化。

注册方法

如需注册触发器,请使用 HTML 元素或 JavaScript 调用:

  • <img> 标记
  • <script> 标记
  • fetch 次来电
  • XMLHttpRequest

这会生成网络请求,然后您使用触发器注册 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]"
      }]
    }
    

    摘要报告示例

    {
      ... // 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)进行归因。

如果destinationhttps://shop.advertiser.example,那么https://advertiser.example和 可对https://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>
<ph type="x-smartling-placeholder">

使用脚本标记

您可以使用脚本代码执行触发器注册;它的行为与 <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();
<ph type="x-smartling-placeholder">

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 值,则该值可以是一个或多个以空格分隔的网址。

使用网址会导致浏览器发起单独的 keepalive 提取请求 - 即 其中包含 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"
});

后续步骤

不妨了解如何注册归因来源