更新时间:2024年9月4号
这一篇介绍GTM里的Consent Mode v2,也叫意见征求模式高级版,意见征求模式有基本和高级版之分,分别是v1和v2,这篇介绍的是v2,下文中所提到的意见征求模式特指v2。
什么是意见征求模式?
Cookie Consent Mode, 也叫Cookie Consent,Consent Mode,中文名是意见征求模式。
这实际是一个功能/机制,加入Consent Mode这个机制的CMP(Content Management Platform,同意管理平台)可以向Consent Mode传递用户授权信息,Consent Mode会转化为意见征求模式参数,可以直接被Google及GTM上第三方跟踪代码使用。
需要注意,Cookie Consent和CMP是两个不同的东西,Consent Mode是一个机制,你所看到Cookie Banner并不是Consent Mode所实现,而是CMP的,它们关系是:
- CMP:弹出一个Cookie Banner,告诉用户要跟踪什么,用途是什么,让用户知情和授权,可以向Consent Mode传递用户授权信息(前提是CMP有加入Consent Mode这个机制)
- Consent Mode:Consent Mode会转化为意见征求模式参数,可以直接被Google及GTM上第三方跟踪代码使用;用户拒绝的时候,会发送不使用 Cookie 的 ping,GA4会通过机器学习找回部分数据。
延伸阅读:TCF 、CMP和Consent Mode的关系?
推出意见征求模式的原因
首先是合规的需求,许多国家和地区的法律规定,广告客户在存储和分享用户相关信息之前必须征得用户同意,如GDPR(General Data Protection Regulation,通用数据保护条例)和DMA(Digital Markets Act,叫数字法案),GDPR是对网站个体做要求,DMA是对互联网大型平台做要求,直接在源头上控制。
其次是GTM上第三方跟踪代码的合规需要,不同CMP的传递用户授权信息方式不同,这对GTM上大量第三方跟踪代码的合规是一个巨大的挑战,所以推出Consent Mode这个机制,加入Consent Mode的CMP可以向Consent Mode传递用户授权信息,Consent Mode会转化为统一意见征求模式参数,可以被Google及GTM上第三方跟踪代码使用。
最后是可以通过模型预计找回因拒绝跟踪导致数据丢失问题,,基本可以找回六七成,能更好的去做分析和了解广告效果。
用户意见征求类型
Consent Mode将意见征求模式参数和隐私权参数,定义和命名如下:
用户意见征求参数 | 说明 |
ad_storage | 启用与广告相关的存储机制(例如 Cookie),如再营销就需要这个 |
ad_user_data | 就向 Google 发送与广告相关的用户数据设置用户意见征求机制,如使用设置Users ID就需要这个 |
ad_personalization | 设置有关个性化广告的用户意见征求机制,如再营销就需要这个 |
analytics_storage | 启用与分析(例如访问时长)相关的存储机制(例如 Cookie),如GA4收集数据就需要这个 |
隐私权参数 | 说明 |
functionality_storage | 启用可为网站或应用的功能(例如语言设置)提供支持的存储机制。 |
personalization_storage | 启用与个性化(例如视频推荐)相关的存储机制,,如再营销就需要这个 |
security_storage | 启用与安全性(例如,身份验证功能、欺诈防范功能和其他用户保护功能)相关的存储机制。 |
具体的逻辑是:CMP向Consent Mode传递用户授权信息,比如允许第三方分析工具跟踪,Consent Mode会转化为意见征求模式参数'
analytics_storage
': 'granted'
,可以直接被Google及GTM上第三方跟踪代码使用。
意见征求的优点
- 便于GTM上大量第三方跟踪代码的合规,加入Consent Mode的CMP可以向Consent Mode传递用户授权信息,Consent Mode会转化为统一意见征求模式参数,可以被GTM上第三方跟踪代码使用
- 如果用户拒绝,Google 代码会发送不使用 Cookie 的 ping,GA4会通过机器学习找回部分数据,基本可以找回六七成, 这是v2版所特有的
支持意见征求的CMP有哪些
目前加入的CMP有Commanders Act、Consentmanager、Cookie Information A/S、Cookiebot (Cybot)、Didomi、iubenda、LiveRamp、OneTrust、Osano、Sourcepoint、Usercentrics等
GTM上配置意见征求模块
启用意见征求
在GTM上点击「管理」——「容器设置」,在「其他设置」里勾选“启用用户意见征求概览”:
代码配置征求意见
在每个代码里的「高级设置」——「同意设置」里:
内置用户意见征求检查里的ad_storage,ad_personalization,ad_user_data,analytics_storage就是意见征求模式参数,默认有四个,能否跟踪数据就取决于参数里的值,如果是granted
就可以跟踪,如果是denied
,就不能跟踪。
是否需要额外的用户同意有三选项:
- 未设置:默认是这个,此代码不会执行更多用户意见征求。
- 无需更多用户意见征求:代码会需检查现有用户意见征求意见,也就是内置用户意见征求检查里已经设置意见征求模式参数
- 必须获得更多用户意见征求才能触发代码:还需要更多的意见征求模式参数才可以
一般是选「无需更更多用户意见征求」。
延伸阅读:通过Google Tag Manager的Consent Mode给网站部署Cookiebot
如何查看授权情况
可以通过检查请求里的gcs和gcd参数,看授权情况
gcs(v1)
gcs的全称是Google Consent Status ,gcs的格式是G1xy
x
代表同意 Google Ads cookie/ad_storage,可以是1
(授予)或0
(拒绝)。y
代表同意 Google Analytics cookie/analytics_storage,并且是1
(授予)或0
(拒绝)。
值 | 描述 |
---|---|
G100 | 尚未获得同意。 |
G110 | Google Ads 已同意,但 Google Analytics 未同意。 |
G101 | Google Analytics(分析)已同意,而 Google Ads 则没有。 |
G111 | Google Ads 和 Google Analytics 均已同意。 |
gcd(v2)
gcd的全称是Google Consent Default,gcd的格式是1*<ad_storage>*<analytics_storage>*<ad_user_data>*<ad_personalization>*,其中*表示数字,意义未知,可能出现1或3,ad_storage
、analytics_storage
、ad_user_data
和ad_personalization
分别会有不同的值,表示不同的意思:
值 | 描述 | 例子 |
---|---|---|
l | 小写 L 表示信号尚未设置为同意模式。 | 11l1p1l1l5 (仅analytics_storage 默认被拒绝)。 |
p | denied 默认情况下(不更新)。 | 11p1p1p1p5 (默认情况下所有同意状态均被拒绝)。 |
q | denied 默认情况下和更新后。 | 11p1q1p1p5 analytics_storage (在默认情况下已将其设置为拒绝后,用户将其同意选择更新为设置为拒绝)。 |
t | granted 默认情况下(不更新)。 | 11t1t1t1t5 (默认情况下授予所有同意状态)。 |
r | denied 默认情况下和granted 更新后。 | 11r1r1r1r5 (默认情况下,用户在首次拒绝服务后同意所有服务)。 |
m | denied 更新后(无默认值)。 | 11p1m1p1p5 (所有其他状态默认被拒绝,但analytics_storage 仅在用户拒绝后才设置)。 |
n | granted 更新后(无默认值)。 | 11n1n1n1n5 (该网站没有设置默认同意状态,而是在用户选择后将所有状态设置为已授予)。 |
u | granted 默认情况下和denied 更新后。 | 11u1u1u1u5 (默认设置为授予后,用户撤回了所有同意)。 |
v | granted 默认情况下和更新后。 | 11v1v1v1v5 (所有状态均默认授予并由用户确认)。 |
常见问题
GA4的数据与BigQuery不一致
这是因为使用Consent Mode v2,即时用户拒绝了跟踪,仍然会发送ping,GA4是基于ping的数据建模计算出来,而Bigquery是真实的ping数据计数计算,所以不同。延伸阅读:Consent Mode是如何影响GA4的数据收集