更新时间:2025年7月19号
如果你的网站需要遵循GDPR、ePrivacy Directive等隐私法规,或希望持续使用Google Ads、GA4进行成效分析,那么Consent Mode已经是不可忽略的重要功能。
本文将完整介绍GTM中的Consent Mode,包括它的运作原理、CMP的关系、v1与v2的差异、gcs 与gcd参数解析,以及如何检查是否部署成功。
什麼是Consent Mode?
Consent Mode(同意模式) 是 Google 推出的一套隐私授权管理机制,用于将 CMP(Consent Management Platform,用户同意管理平台) 获取的授权结果,转换成GTM可以识别的标准化授权参数(Consent Signals)。
GTM上的标签(就是Tags、例如GA4、Google Ads等)会根据这些授权状态,决定是否可以:
- 读取或写入Cookie
- 收集分析数据
- 收集广告数据
- 发送Cookieless Ping(无 Cookie Ping)
借助Consent Mode,网站可以在满足隐私合规要求的同时,尽可能减少数据损失。
为什么需要Consent Mode?
近年来,GDPR、DMA等隐私法规不断完善,越来越多的网站需要在设置Cookie前,先获得用户授权。
如果没有Consent Mode,GTM 上的标签无法知道:
- 用户是否同意分析 Cookie?
- 是否允许广告 Cookie?
- 是否允许广告个性化?
- 是否允许收集第一方用户数据?
因此,Google推出了Consent Mode,作为CMP与GTM之间的统一通信标准。
Cookie Banner、CMP与Consent Mode的关系
很多人会把Cookie Banner、CMP和Consent Mode混为一谈,但它们分别承担不同的职责。
整个流程如下:
三者之间的关系如下:
- CMP:向用户展示 Cookie 提示,并提供同意或拒绝按钮。
- CMP:保存并管理用户的授权状态。
- Consent Mode:将授权状态转换为 Google 统一的Consent Signals。
- GTM:根据Consent Signals决定标签是否执行。
简单来说:
CMP负责获取授权,Consent Mode负责传递授权,GTM根据授权状态决定是否执行标签。
Consent Mode的工作原理
以用户第一次访问网站为例,整个流程如下:
- 用户打开网站。
- CMP 弹出 Cookie Banner。
- 用户选择接受或拒绝Cookie。
- CMP 将授权结果传递给 Consent Mode。
- Consent Mode 更新对应的Consent Signals。
- GTM 读取这些授权状态。
- GA4、Google Ads等标签根据授权状态决定是否收集数据。
例如:
- 用户同意Analytics Cookie,GA4正常收集数据。
- 用户拒绝Analytics Cookie,GA4不会读写分析Cookie。
- 如果采用V2版本的Consent Mode,即使用户拒绝Cookie,Google仍可能发送Cookieless Ping,用于后续的数据建模
Consent Mode有哪些优势?
意见征求模式有如下优势:
- GTM上第三方代码的合规统一化:CMP向Consent Mode传递用户授权信息,Consent Mode将其转化为统一意见征求模式参数,GTM中的第三方跟踪代码能够读取并据此决定是否执行,降低合规的操作与成本
- 降低开发和维护成本:CMP只需要对接一次Consent Mode,即可让所有 Google 标签共享授权状态,大幅降低开发和维护成本。
- Consent Mode v2 支持数据建模:即使用户拒绝 Cookie,Google 标签仍可以发送 Cookieless Ping(无 Cookie Ping)。Google 会基于这些 Ping 数据建立统计模型,在满足建模条件的情况下,估算部分无法直接观测到的转化和访问数据。
哪些CMP支持Consent Mode?
目前,大多数主流 CMP 都已经支持 Google Consent Mode,例如Cookiebot、Consentmanager、OneTrust、Usercentrics、Didomi、iubenda、Osano、Sourcepoint、Cookie Information、Commanders Act、LiveRamp。
选择支持Consent Mode的CMP,可以大幅降低部署难度,并确保与Google产品兼容。
Consent Mode 的版本
意见征求模式分为两个版本:
Consent Mode v1
Consent Mode v1于2020年推出,仅支持两个授权类型::
- ad_storage:表示广告相关,如Google Ads
- analytics_storage:表示分析相关,如Google Analytics 4
在Consent Mode v1中,Google使用 gcs(Google Consent State)参数传递授权状态。
例如,在浏览器开发者工具的Network中,可以看到类似请求G1xy:
这个就是获取CMP中的授权结果,统一转换为标准化的意见征求模式参数(Consent Signals),其中
- 第一个字符固定为 G
- 第二个字符固定为 1(表示版本)
- 第三个字符表示 ad_storage,
1(授予)或0(拒绝) - 第四个字符表示 analytics_storage,
1(授予)或0(拒绝)
因此常见组合如下:
| gcs 值 | ad_storage | analytics_storage | 说明 |
|---|---|---|---|
| G100 | 拒绝 | 拒绝 | 广告和分析均未获得授权 |
| G101 | 拒绝 | 同意 | 仅允许分析 |
| G110 | 同意 | 拒绝 | 仅允许广告 |
| G111 | 同意 | 同意 | 广告和分析均允许 |
需要注意的是:
gcs主要用于Consent Mode v1,目前Google已推荐使用Consent Mode v2,因此在新项目中应优先部署v2。
Consent Mode v2
Consent Mode v2于2024年正式推出,也是目前Google推荐使用的版本。
从Consent Mode v2 开始,Google 共支持7种授权类型,可分为两大类:
- 用户授权参数(4 项)
- 隐私存储参数(3 项)
用户授权参数(User Consent)
这四项主要影响GA4、Google Ads 等产品的数据收集和广告功能。
| 授权类型 | 说明 | 常见应用 |
|---|---|---|
| ad_storage | 是否允许读取或写入广告相关 Cookie。 | Google Ads、Floodlight、转化跟踪 |
| analytics_storage | 是否允许读取或写入分析相关 Cookie。 | GA4 |
| ad_user_data | 是否允许将第一方用户数据用于广告用途。 | Enhanced Conversions、Customer Match 等 |
| ad_personalization | 是否允许广告个性化。 | 再营销、个性化广告 |
说明:ad_user_data 与 ad_personalization 是Consent Mode v2新增的两个授权类型,也是Google Ads面向欧洲经济区(EEA)的重要要求。
隐私存储参数(Storage Types)
除了广告与分析授权之外,Consent Mode还定义了三个与网站功能相关的存储权限。
| 授权类型 | 说明 |
| functionality_storage | 用于支持网站基本功能,例如语言偏好、地区设置等。 |
| personalization_storage | 用于保存个性化设置,例如视频推荐、主题偏好等。 |
| security_storage | 用于安全相关功能,例如身份验证、防止欺诈及其他安全机制。 |
这三个参数通常不会直接影响GA4数据收集,但可能会影响网站本身的功能,因此许多 CMP 也会提供对应的授权选项。
Consent Mode v2在网络请求中新增了 gcd(Google Consent Details) 参数。
与gcs相比,gcd包含的信息更多,不仅记录当前授权状态,还会记录默认状态以及用户更新后的状态。
因此,gcd 的结构也更加复杂。
网络请求中常见类似内容:
gcd=11r1r1r1r5
不同网站可能看到的字符串并不相同。
gcd的参数结构通常表现为:1*<ad_storage>*<analytics_storage>*<ad_user_data>*<ad_personalization>*
Google官方并没有公开gcd每一个字符的完整编码规则,目前社区通过大量样本分析,发现其中部分字母可能代表以下状态:
| 字母 | 含义 |
|---|---|
| l | 尚未设置 Consent Mode(未进入同意模式) |
| p | 默认拒绝(未被用户更新) |
| q | 默认拒绝,用户更新后仍拒绝 |
| t | 默认同意(未被用户更新) |
| r | 默认拒绝,用户更新后同意 |
| m | 无默认值,用户更新后拒绝 |
| n | 无默认值,用户更新后同意 |
| u | 默认同意,用户更新后拒绝 |
| v | 默认同意,用户更新后仍同意 |
重要提醒
上述字母含义并非Google官方文档公布,而是开发者社区根据大量网络请求逆向分析得到的结果,仅适合作为调试参考。
Google从未公开gcd的完整编码规则,因此不建议依据这些字母判断网站是否合规,也不应将其作为开发实现依据。
基础版 VS 高级版
| 项目 | 基础版(v1) | 高级版(v2) |
|---|---|---|
| 权限类型 | 2 | 4+3 |
| 无Cookie ping | ❌ | ✅ |
| 建模补数 | ❌ | ✅ |
对于大多数网站而言,如果需要使用GA4或Google Ads,通常建议部署v2,因为它能够在符合隐私要求的前提下,尽可能减少数据损失。
Consent Mode对GA4数据有哪些影响?
部署Consent Mode后,GA4 的数据收集方式会发生变化。
不同授权状态下,GA4的行为如下:
| 用户授权状态 | GA4 行为 |
|---|---|
| 同意 Analytics Cookie | 正常收集事件、Client ID、Session 等数据。 |
| 拒绝 Analytics Cookie(v1) | 不发送 GA4 请求,不收集任何数据。 |
| 拒绝 Analytics Cookie(v2) | 不读取 Cookie,但会发送 Cookieless Ping,用于数据建模。 |
因此,很多人在部署Consent Mode后会发现:
- GA4 报表仍然有数据;
- BigQuery 导出的数据却变少。
这是正常现象,因为:
- GA4 报表可能包含建模数据;
- BigQuery 导出的是实际收集到的事件数据,不包含建模结果。
这也是为什么部署v2后,GA4 与 BigQuery 的数据通常不会完全一致。
如何检查Consent Mode是否正常运行?
GA4提供了用户意见征求设置,可以帮助检查Consent Mode是否存在配置问题。
在GA4里点击「管理」——「媒体资源设置」——「数据收集和修改」——「用户意见征求设置」就可以看到,主要分为两部分:
问题概况
这里会显示:
- 当前发现多少个问题;
- 是否影响欧洲经济区(EEA)流量;
- 大约有多少比例的流量受到影响。
例如:检测到 4 个问题,约有 15%~20% 的流量来自 EEA,建议部署支持 Consent Mode 的 CMP。
问题详情
GA4 会进一步列出具体问题,例如:
- 未检测到 Consent Mode。
- 未正确发送授权状态。
- ad_user_data 未配置。
- ad_personalization 未配置。
根据提示逐项修复即可。
需要注意的是,GA4 的检测结果通常会有一定延迟,因此修改完成后可能需要等待一段时间才会更新。
如何部署Consent Mode?
选择已经加入Consent Mode的CMP,配置的过程都大同小异的,可以看Cookiebot和Consentmanager的配置案例:
常见问题 FAQ
安装 Consent Mode 后,GA4 数据为什么减少?
这是正常情况。
用户拒绝 Analytics Cookie 后:
- GA4 无法读取 Client ID。
- 无法创建正常 Session。
- 部分数据无法收集。
如果使用v1,数据减少会更加明显。
如果使用v2,Google 可以利用 Cookieless Ping 进行建模,因此GA4报表可能恢复部分数据。
GA4的数据与BigQuery不一致?
- GA4:包含实际收集的数据,可能包含Google建模数据。
- BigQuery:只导出实际事件数据,不包含Google建模结果。
因此:GA4 报表数据通常会高于BigQuery数据。
用户拒绝Cookie 后,GA4还有数据吗?
取决于 Consent Mode 的版本:
- 如果是 v1:没有数据
- 如果是 v2:仍然有数据,送Cookieless Ping。
Consent Mode v2 是否必须部署?
如果网站:面向欧洲经济区(EEA)用户、使用 Google Ads;、使用广告个性化功能;
建议部署 Consent Mode v2。
特别是 Google Ads 用户,如果没有正确传递:
- ad_user_data
- ad_personalization
可能影响广告转化和受众功能。
中国网站是否需要 Consent Mode?
不是强制要求。
但是如果:
- 使用 Google Ads 投放海外广告;
- 有欧洲访问者;
- 使用 GA4 分析全球流量;
建议部署 Consent Mode。
总结
Consent Mode 是 Google 为解决 Cookie 限制和隐私法规推出的重要机制。
它的核心作用不是获取用户授权,而是:
将 CMP 获取的用户授权状态转换为GTM可以理解的标准信号,让 GA4、Google Ads 等产品根据授权状态决定如何收集数据。
这样可以在满足 GDPR 等隐私要求的同时,通过 Cookieless Ping 和数据建模减少数据损失。
对于使用 GA4、Google Ads 或面向欧洲用户的网站,Consent Mode 已经成为现代数据分析部署的重要组成部分。



