更新时间:2024年9月26号
User ID原理
详细过程为:用户注册生成ID的时同时生成ID的hash值GA_UID,两者之间是唯一对应关系,再将GA_UID设置成页面的全局变量,GTM中通过js变量将GA_UID读入,再将其设置为自订维度。
为什么用User ID
从上面可以知道User ID是用户唯一标示,而Client ID会由于设备,浏览器等因素而不同,因此不适用。
Google Analytics 4 中设置User ID
步骤一:生成User ID
用户注册时生成账户ID同时生成ID的Hash值GA_UID,也就是User ID。
如当我注册用户时候,账户ID为789,同时在数据库中生成的值为c11e9d2df。
注意:不要用PII信息作为User ID,如邮箱、电话号都是不行的,这会违反谷歌分析的隐私保护政策。User ID不要用hash值,因为hash值的是64个字符,而用户属性是36个字符。
步骤二:GTM中获取User ID
获取UserID有多种方式:
- 页面JavaScript变量,也就是全局变量。
- 第一方Cookie:就是放到第一方cookie里
- 数据层:让开发通过数据层主动发送User ID
- DOM元素:放到页面元素里,然后通过DOM元素获取
这里以全局变量的方式为例子,这个需要前端的同事协助将这个GA_UID设置全局变量,需要在每个页面都能找到这个:
然后GTM中通过JavaScript变量将GA_UID读入,生成变量getUserid:
步骤三:设置User ID
在GA4的基础跟踪代码中做如下设置:
这里是做了两个设置:
- 一个是设置User ID,在“要设置的字段里”,字段名称可以为user_id或&uid,这个名字是系统定义,你不能修改的,右侧的值就是你要传递的变量了
- 一个是将User ID设置为用户级别自定义维度,你可以自定义,但命名上不要使用空格或特殊符号,避免不能在GA4里注册,一般建议是采用a_b_c的命名结构
这样就设置好了。
步骤四:GA4中注册User ID
要注册的的是user_id_custom_dimension,在GA4中点击「管理」——「媒体资源设置」——「数据显示」——「自定义设置」——「创建自定义维度」,然后做如下设置:
注意:范围是要选用户。
步骤五:跨设备报告解读
在GA4中就可以用User ID这个维度了。
有可以在探索中使用跨设备报告。
这个报告可以让你知道
- 各种终端的使用情况,如上图中移动端的占比仅为2成,而国内国外同期第三方报告中,移动端的都已经超过桌面端的,所以对上面这个数据来说,移动端的比例是低于行业水平的,应该还有不小的空间可以提高的。当然这个需要考虑自身产品的目标用户群的的属性问题,如移动端是智能移动设备出现后的十年间才形成的这个趋势,用户都是偏年轻的。
- 跨设备比例情况:在多终端的时代,用户不免就会跨设备,移动端的便捷性可以提高用户的使用频率,所以设备的现状可以给你在引导和营销提供数据上的支持。跨设备报告有助于关联来自不同会话的设备和活动数据,更好地了解自己的用户,以及在转化过程中每一步的行为。
User ID对数据的处理机制
同个会话内,User ID会通过会话ID将其关联,如用户访问页面A,访问页面B,然后登录后有User ID,这几个访问都市通过会话内的,所以默认都会有User ID。
常见错误
Client ID被四舍五入
将Client id 设置为用户属性,你可能会遇到Client ID被截断的情况,如:
其实,这并不是被截断,而是Client ID被四舍五入,如果Client ID被谷歌分析视为是数字类型,那么会自动的四舍五入,解决方式是在Client ID前面添加字符,欺骗谷歌分析。
这种情况不是所有人都会遇到,是偶发的。
转化划分到直接渠道
这是因为将Users ID设置为事件参数,这会导致转化都划分为直接渠道,这是bug。
官方在2024年9月25号公告,这个bug已经修复。