Google Consent Mode:如何在Google Analytics中筛选用户已授权会话
我们目前使用正处于Beta测试阶段的Google Analytics consent mode (Beta)。据我了解,未获得用户授权的页面浏览由于不存在会话Cookie,每次页面浏览都会被记为一次新会话。
请问是否有方法可以仅筛选用户已授予同意授权的会话?我们需要使用对应的会话数量来计算转化率。
实现方案
方案1:自定义维度标记(推荐,可同时保留全量用户统计数据)
- 配置会话级自定义维度
进入GA4后台「管理」-「自定义定义」模块,创建新的自定义维度,维度范围选择会话,维度名称可设置为「用户同意授权状态」,关联的属性标识自行定义即可,例如consent_granted。 - 前端埋点上报同意状态
在网站同意弹窗的用户选择回调逻辑中,判断用户是否授予了分析类Cookie权限:如果用户同意,调用gtag接口上报属性:gtag('set', 'user_properties', {consent_granted: 'true'})
如果用户拒绝则对应上报值为false。注意要保证该上报逻辑早于所有GA事件上报的触发时间。 - 报表筛选有效会话
打开GA4探索报表,新增筛选条件选择你创建的「用户同意授权状态」维度,筛选值设为true,此时报表统计的会话数即为所有用户已授权的有效会话,直接用该数值计算转化率即可。
方案2:延迟初始化GA(极简方案,仅保留授权用户统计数据)
如果你们不需要统计未授权用户的任何行为数据,可以直接调整GA初始化逻辑:仅在用户确认同意授权分析Cookie之后,再加载GA的SDK代码、触发初始化上报。这种情况下GA后台统计的所有会话天然就是用户已授权的会话,不需要额外做筛选配置。
注意事项
- 自定义维度必须选择会话级别,如果选择事件级别会导致同一会话的多次事件被分开统计,最终会话数统计结果出现偏差
- 如果你后续调整了同意规则,需要同步更新埋点上报的逻辑,避免标记错误
内容的提问来源于stack exchange,提问作者Arun Abraham
相关产品推荐
相关产品推荐

