[GA4] 设置跨网域衡量

本文适用于需要跨多个网域(如客户网站和单独的购物车网域)进行统一衡量的网站所有者。本文针对 Google Analytics(分析)4 媒体资源;如果您使用的是 Universal Analytics,请改为参阅这篇文章

通过跨网域衡量,您可以将活动准确地归因于进行了跨网域访问的单个用户。如果出站链接指向您列为要进行跨网域衡量的网域,使用增强型衡量功能时一般会触发事件的出站点击将被忽略。

视频概览

 

Cookie 和跨网域衡量

Google Analytics(分析)使用第一方 Cookie 来为网站的每个唯一身份用户和会话设置标识符。

  • 如果不使用跨网域衡量,系统会为用户访问的每个网域设置带有新标识符的新 Cookie。Google Analytics(分析)会针对这些带有新标识符的新 Cookie 单独统计用户数和会话数。
  • 如果使用跨网域衡量,这些标识符会通过由键 _gl 标识的网址参数从一个网站传递至另一个网站,例如:https://www.example.com/?_gl=1*abcde5*

如果您还拥有一项 Universal Analytics 媒体资源

对于 Universal Analytics 媒体资源,您通过代码配置跨网域衡量(通过 analytics.jsgtag.jsGoogle 跟踪代码管理器在源代码中配置)。对于 Google Analytics(分析)4 媒体资源,您将通过“管理”页面进行配置。请按照以下说明添加您在 Universal Analytics 网页代码中标识的那些网域。

如果您已为 Universal Analytics 媒体资源配置全局网站代码,则它也将应用于您的 Google Analytics(分析)4 媒体资源。您在代码中或通过“管理”页面指定的任何网域都将应用于您的 Google Analytics(分析)4 媒体资源。不过,我们建议您仅在“管理”页面中进行配置。

通过“管理”页面设置跨网域衡量

您需要拥有“编辑者”角色才能设置跨网域衡量。

检查您希望纳入跨网域衡量的各个网域上的 Google Analytics(分析)代码(例如每个 HTML 网页上的全局网站代码)。每个网页上的代码都必须使用来自同一网站数据流的同一衡量 ID(即同一“G-”ID)。

  1. 管理页面中,转到您希望纳入跨网域衡量的某个媒体资源。
  2. 在“媒体资源”列中,依次点击数据流 > 网站
  3. 点击您的网站对应的数据流,然后在“其他设置”下点击更多标记设置
  4. 点击配置您的网域
  5. 在“包含符合以下条件的域名”下:
    • 选择匹配类型。
    • 在“域名”下方,输入您要匹配的网域的标识符(例如 example.com)。
    • 点击添加条件,以添加下一个网域(添加您希望纳入跨网域衡量的每个网域)。
    使用 OR 逻辑评估条件。
  6. 点击保存

手动设置

建议通过 Google Analytics(分析)界面配置跨网域衡量。不过,有些情况下,您可能需要通过衡量代码来实现自定义解决方案。对于此类情况,您可以通过使用 gtag.js API 的 get 和 set 命令跨网域存留 ID,手动设置跨网域衡量。

示例

要在来源网域上获取客户端 ID,您可以使用 get 方法:

  
  gtag('get', 'G-XXXXXXX', 'client_id', (client_id) => {
  // 将客户端 ID 存储在变量中。
});
gtag('get', 'G-XXXXXXX', 'session_id', (session_id) => {
  // 将会话 ID 存储在变量中。
});

  

在获得客户端 ID 和会话 ID 后,将其添加到指向目标网域的链接中:

<a href="https://example.com/?clientId=XXXXX&sessionId=YYYYY">example.com</a>

 

在目标网页上,读取网址中的 ID 并使用 config 命令设置这些 ID:


gtag('config','G-XXXXXXX', {
'client_id': getClientIdFromUrl(),
'session_id': getSessionIdFromUrl()
});
  

验证跨网域衡量是否正常工作

  1. 打开您网站上的某个网页,其中要包含一个指向您针对跨网域衡量进行了配置的网域的链接或表单。
  2. 点击该链接或提交表单,以转到目标网域。
  3. 验证目标网域中的网址是否包含链接器参数 _gl;例如:https://www.example.com/?_gl=1*abcde5*

问题排查

如果您按上述步骤不能确认目标网域中的网址是否包含参数 _gl,请仔细检查您在界面中配置的网域是否与您的网站所指向的网域一致。

还有一种可能是,您的网站的配置方式阻碍了跨网域衡量正常工作。您可以在经验丰富的 Web 开发者的帮助下,调查您的网站是否受到以下问题的影响。

网址重定向

如果目标网页重定向或不支持任意查询参数,那么即使 Google Analytics(分析)在上一个网页的网址中附加了参数 _gl,它最终也可能被移除(通常这一过程非常快,无法用肉眼观察到)。要确认您的网站是否存在此问题,请使用 Chrome 开发者工具检查上一个网页发出的网络请求。要解决此问题,请将您的网站配置为在重定向中保留参数 _gl

与其他脚本冲突

跨网域衡量的工作原理是,在网页的文档节点上创建事件监听器。当用户点击链接时,点击事件会向上传递到文档节点,然后参数 _gl 便会添加到链接网址中。此过程在下列情况下无法正常进行:

  • 当通过 JavaScript 触发导航(而不是通过直接响应用户操作)时。
  • 当网页中相互竞争的脚本在事件到达文档节点之前停止事件传播时,例如,当使用 Event.stopPropagation() 时。
该内容对您有帮助吗?
您有什么改进建议?
false
搜索
清除搜索查询
关闭搜索框
Google 应用
主菜单
搜索支持中心
true
69256
false
false