如何通过Google Analytics与Google Tag Manager追踪不同用户类型
如何在Google Analytics中追踪管理者、员工、主管等不同用户类型
嘿,这个问题我帮不少多用户类型的网站处理过!答案很明确:你完全可以用Google Tag Manager(GTM)来细分这些用户,也能用原生JavaScript实现——两种方案各有优势,看你团队的技术配置和需求复杂度。下面给你详细拆解实操步骤:
方案一:用Google Tag Manager(GTM)实现用户细分追踪
GTM的优势是不需要改动网站核心代码(只要基础GTM代码已经部署),适合非技术团队或者需要快速迭代追踪规则的场景:
- 第一步:让网站暴露用户类型数据
首先得让GTM能拿到用户类型信息——可以把用户类型存在页面的data-*属性里,或者全局JavaScript变量:
或者用全局变量:<!-- 示例:把用户类型存在body标签的data属性中 --> <body data-user-type="manager">// 用户登录后,前端设置全局变量 window.currentUserType = "employee"; - 第二步:在GTM中创建对应变量
进入GTM后台,创建一个变量来获取这个用户类型:- 如果用全局变量:创建「自定义JavaScript变量」,代码写:
function() { // 兜底返回unknown避免空值 return window.currentUserType || "unknown"; } - 如果用data属性:创建「DOM元素变量」,选择CSS选择器
body,属性名填data-user-type。
- 如果用全局变量:创建「自定义JavaScript变量」,代码写:
- 第三步:配置GA标签传递用户类型
在你的GA4(或UA)标签里,把用户类型作为自定义属性/维度传递:- 对于GA4:在标签的「用户属性」区域,添加键值对,比如键为
user_type,值选择你刚才创建的GTM变量。 - 对于UA:在「自定义维度」里,把变量对应到你在GA后台预先创建的自定义维度(比如索引1对应「用户类型」)。
- 对于GA4:在标签的「用户属性」区域,添加键值对,比如键为
- 第四步:测试并发布
用GTM的预览模式验证变量是否能正确获取到用户类型,确认无误后发布容器,之后就能在GA的用户探索、自定义报告里按user_type细分用户了。
方案二:用原生JavaScript直接实现
如果你的团队有前端开发能力,直接在代码里处理会更灵活,适合复杂用户场景(比如动态切换用户类型):
- 第一步:登录后向GA推送用户类型
当用户完成登录并确定用户类型后,直接调用GA的API设置用户属性或自定义维度:- 针对GA4:
// 设置全局用户属性,后续所有事件都会附带 gtag('set', 'user_properties', { user_type: 'supervisor' }); // 或者在发送页面视图时单独附带 gtag('event', 'page_view', { user_type: 'supervisor' }); - 针对UA:
// 假设你在GA后台把自定义维度1设为「用户类型」 ga('set', 'dimension1', 'manager'); // 发送页面视图时就会带上这个维度 ga('send', 'pageview');
- 针对GA4:
- 第二步:在GA后台配置对应维度
不管用GA4还是UA,都需要先在后台创建对应的自定义维度/用户属性,这样GA才能正确接收并存储这些数据。
关键注意事项
- 隐私合规:如果用户类型涉及敏感信息,要确保符合GDPR、CCPA等法规,比如先获取用户同意再追踪这些属性。
- 命名规范统一:用户类型的取值要保持一致(比如全用小写,避免
Manager和manager被识别为不同类型)。 - 测试验证:一定要用GA的实时报告或者GTM预览模式确认数据是否正确上报,避免出现变量未定义或取值错误的问题。
内容的提问来源于stack exchange,提问作者Gaston Velarde




