3

根据官方指南,我已经使用我的 GA4 属性
(不是旧版 Universal Analytics)设置了谷歌标签管理器:https: //support.google.com/tagmanager/answer/6103696?hl=en&ref_topic= 3441530#zippy=%2Cweb-页面 ,我已经弄清楚如何使用 dataLayer.push({}) 对象发送自定义/推荐事件到 GA4,使用触发器和标签中的“事件”字段, 基于 Universal Analytics 指南 (https://www.analyticsmania .com/post/track-logins-with-google-tag-manager/), 因为这似乎是官方指南中的一个黑洞:https: //support.google.com/tagmanager/answer/9442095 仅描述,简而言之,故事的 GTM 方面。











发送用户 ID 也是如此:文档仅
在创建 Google Analytics 4 配置标记时告知:

To set a user ID, add a row to Fields to Set. 
Set the Field Name to user_id, and the Value to 
a Tag Manager Variable that returns the user ID.

我只从外部 UA 指南
中获取知识,使用从 dataLayer 读取 user_id 字段的数据层变量,
并在 Google Analytics 上创建相应的 user_id 用户属性,在 Universal Analytics 中,该属性曾经
有相关设置不再存在(https://www.analyticsmania.com/post/google-analytics-user-id-with-google-tag-manager/)。

因此,我使用配置中引用的user_id数据层变量部署了我的 GA4 事件
(并且它在调试视图中的数据层上可见),在 GA 中创建了相应的用户属性,并启用了用户 ID 报告。
然而,在我的实时视图中,这些user_id字段总是得到一些奇怪的“gtm.js”值
(好像我的数据层变量值被
默认 dataLayer.push({event:"gtm.js" ,user_id:"忽略的值"))。
我的 user_id 字段缺少什么才能被识别? 调试视图中的 user_id

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

谢谢!

4

2 回答 2

3

谢谢@bpstrngr!在找到你的答案之前绕了一会儿。

逐步澄清,以防其他人遇到此问题;

  1. 在发送 userId 时dataLayer添加事件名称:
window.dataLayer.push({
   'userId' : '{{ myUserId }}',
   'event': 'userIdSet',
})
  1. 在 GTM 中,创建一个Custom Event监听该事件的触发器(将事件名称设置为您在步骤 1 中编写的任何事件): GTM 触发器配置打印屏幕

  2. 将此事件作为触发触发器添加到您的代码中: GTM 标签配置打印屏幕

于 2021-05-24T14:44:55.960 回答
1

所以最后结果是,由于配置标签是由 Page View 事件触发的,这发生在我将 user_id 推送到 dataLayer 之前,所以它用事件名称填充了不存在的值。

我为 user_id 事件命名以创建自定义事件触发器,该触发器重新触发配置标记。这样 user_id-s 最终是可见的。

于 2021-02-07T12:39:27.430 回答