Skip to content

转化追踪 SDK

转化追踪用于在用户完成关键动作(下单、注册、留资等)后,把转化回传给 ADBNK,从而把转化归因到对应的点击、创意和广告活动。ADBNK 提供两种前端上报方式:Pixel(图片像素)JS 方式,两者最终都请求同一个转化接口。

先创建转化追踪器

上报前,需在广告主后台创建转化追踪器(Conversion Tracker),系统会生成一个唯一的追踪代码 tracking_code(格式形如 cvt_xxxxxxxx...)。后台会直接给出可复制的 Pixel / JS / Postback 代码,本页用于说明其原理与参数。相关操作流程见 转化追踪指南

Pixel 方式(图片像素)

在转化完成页(如订单成功页)嵌入一个 1×1 透明像素图片,浏览器加载图片即完成上报。适用于纯 HTML、无法执行复杂 JS 的场景。

html
<img src="https://track.adbnk.co/track/conversion.gif?c=cvt_你的追踪代码"
     width="1" height="1" style="display:none" alt="" />

带上金额与订单号、click_id 的完整示例:

html
<img src="https://track.adbnk.co/track/conversion.gif?c=cvt_你的追踪代码&value=99.00&click_id=CLK20260710xxxx"
     width="1" height="1" style="display:none" alt="" />

Pixel 请求命中 /track/conversion.gif,服务端记录转化后始终返回一张 1×1 透明 GIF。

JS 方式

若转化金额需要在页面运行时动态计算(如购物车总价),用 JS 动态构造像素请求更灵活。可在转化前把金额挂到全局变量:

html
<script>
  // 转化金额(如订单实付金额),可选
  window.adbnk_conversion_value = 99.00;

  (function () {
    var img = new Image();
    img.src = 'https://track.adbnk.co/track/conversion.gif'
            + '?c=cvt_你的追踪代码'
            + '&v=' + (window.adbnk_conversion_value || 0)
            + '&click_id=' + (localStorage.getItem('adbnk_click_id') || '')
            + '&_t=' + Date.now();   // 缓存破坏参数
  })();
</script>

click_id 从哪来

用户从 ADBNK 广告点击进入你的落地页时,ADBNK 会通过落地页 URL 宏 {click_id} 把点击 ID 附加到落地页链接上。你应在落地页读取该参数并存入 localStorage / Cookie / 服务端会话,转化时再回传,用于精确归因。宏机制详见 S2S Postback

请求参数

Pixel 与 JS 方式最终都请求转化接口(/track/conversion.gif/track/conversion),支持以下参数:

参数别名必填说明
ccode转化追踪器代码 tracking_code
click_idclickid点击 ID,用于把转化归因到点击/创意/活动
valuev / payout转化金额;不传时使用追踪器配置的默认转化价值
type转化事件类型,如 PURCHASELEADSIGNUPPAGEVIEWCUSTOM

金额与类型以后台配置为准

转化事件类型(event_type)与默认转化价值(conversion_value)通常在追踪器创建时就已配置。前端传入的 value 会覆盖默认值;不传则回落到追踪器默认价值。可传入的具体类型集合以广告主后台为准。

归因与去重

  • 归因:携带 click_id 时,系统会按 click_id 反查该点击对应的广告活动(campaign)、广告组(adgroup)、创意(creative)并写入转化记录;查不到时以空归因保留该转化。
  • 归因窗口:每个追踪器有 attribution_window(归因窗口,单位天,默认 30 天),超窗的点击不再计入归因。
  • click_id 时延:系统会从 click_id 中解析点击时间,计算“点击→转化”耗时用于分析。

去重是你的责任

转化接口本身不会按订单号自动去重——同一个像素/JS 被触发多次会产生多条转化记录。建议:

  1. 在转化成功页只触发一次上报(避免刷新重复触发);
  2. 通过 click_id 做归因,配合归因窗口过滤过期点击;
  3. 如需按订单去重,请在你自己的系统内保证每个订单只上报一次(例如上报后置标记位)。

_t / Date.now() 仅用于破坏浏览器图片缓存,不是幂等键,不具备去重作用。

服务器到服务器上报

如果你的转化发生在服务端(例如支付回调),推荐使用更可靠的 S2S Postback,避免依赖浏览器加载像素。详见 S2S Postback。转化上报的接口约定也可参考 事件与转化上报 API

按 MIT 许可发布的文档内容。