衡量跨网域的客户转化历程

利用网域链接器功能,可以将多个独立网域上的两个或多个相关网站作为一个整体进行衡量。gtag.js 框架为支持的 Google 产品提供了一种通用方式,可以在客户转化历程跨多个网域的情况下衡量活动。

网域链接器在来源网域和目标网域之间共享第一方衡量 Cookie。第一方衡量 Cookie 存储在网络浏览器中,只能由同一网域中的网页访问。

跨网域衡量的设置过程分为两个步骤:

  1. 来源网域调整指向目标网域的网址,使这些网址包含来源网域的第一方衡量 Cookie 值。
  2. 目标网域检查是否存在已链接的衡量 Cookie。

使用 gtag.js 进行跨网域衡量时,会将链接器参数添加到指向目标网域的网址。系统使用“_gl”键在网址查询参数中标识该链接器参数:

https://www.example.com/?_gl=1~abcde5~

在目标网域上,gtag.js 配置为检查网址中的链接器参数。如果找到了链接器参数且该参数是有效的,则 gtag.js 将提取第一方衡量 Cookie 并将其保存。

基本设置

要在来源网域上为指向目标网域的网址设置跨网域衡量,请使用 set 命令创建 linker 对象。该链接器将监听对指向目标网域的链接的点击,并为这些链接的网址自动添加链接器参数。

linker 对象需要 domains 参数,该参数是包含一个或多个网域的数组。此代码会将链接器参数附加到网页上指向目标网域 'example.com' 的链接:

<script async src="https://www.googletagmanager.com/gtag/js?id=GA_MEASUREMENT_ID"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('set', 'linker', {'domains': ['example.com']});
  gtag('js', new Date());

  gtag('config', 'GA_MEASUREMENT_ID');
</script>

您可以在 domains 属性中列出多个字符串值。如果 domains 属性具有至少一个值,那么 gtag.js 会默认接受收到的网域链接。这样一来,您就可以在每个网域上使用相同的代码段。

gtag('set', 'linker', {
  'domains': ['example.com', 'example-b.com']
});

decorate_forms

如果您的网站上有表单指向目标网域,请将 decorate_forms 属性设置为 true

gtag('set', 'linker', {
  'domains': ['example.com'],
  'decorate_forms': true
});

url_position

要将链接器参数配置为在网址中的片段 (#) 之后显示,而不是显示为查询参数 (?)(例如 https://example.com#_gl=1~abcde5~),请将 url_position 参数设置为 fragment

gtag('set', 'linker', {
  'domains': ['example.com'],
  'decorate_forms': true,
  'url_position': 'fragment'
});

accept_incoming

当用户到达目标网域上网址包含链接器参数的网页时,则需要将 gtag.js 配置为解析该参数。

如果目标网域已配置为自动链接网域,则它会默认接受链接器参数。目标网域上不需要其他代码。

如果目标网域未配置为自动链接网域,则您可以指示目标网页查找链接器参数,accept_incoming 属性设置为 true 即可。

gtag('set', 'linker', {
  'accept_incoming': true
});

参数表

参数 类型 已接受的值
'accept_incoming' 布尔值 true(如果 domains 具有值,则默认为 True)、false
'domains' 数组 包含一个或多个网域的数组,例如 ['example1.com', 'example2.com']
'decorate_forms' 布尔值 truefalse(默认值)
'url_position' 字符串 'query'(默认值)、'fragment'