如何实现Google高级版Consent Mode(同意模式)?
实现Consent Mode高级版:拒绝授权时发送匿名Ping请求
核心逻辑
当用户拒绝营销/分析类授权时,通过Google Tag Manager(GTM)配置标签,向GA4和Google Ads发送**完全不含个人识别信息(PII)**的"ping"请求——这类请求仅传递行为信号,不关联任何用户身份数据。
GA4 配置步骤
调整Consent Mode变量
- 在GTM中找到已有的Consent Mode变量(或新建一个),设置当用户拒绝授权时,
ad_storage和analytics_storage的状态为'denied',保留默认超时设置(如500ms)即可。 - 注意:绝对不能将状态设为
'granted',否则会触发常规用户数据收集。
- 在GTM中找到已有的Consent Mode变量(或新建一个),设置当用户拒绝授权时,
创建GA4匿名Ping标签
- 新建GA4标签,选择「自定义事件」类型,事件名可随意设置(比如
anonymous_ping),仅作为占位信号。 - 在「字段设置」里强制开启匿名配置:
这些设置会清空所有可能关联用户身份或页面隐私的字段,确保请求完全匿名。anonymize_ip: true, user_id: '', page_location: '', page_referrer: '' - 设置触发器:选「Consent 状态更改」触发器,触发条件设为
ad_storage或analytics_storage变为'denied',同时搭配「所有页面」触发器覆盖全站。
- 新建GA4标签,选择「自定义事件」类型,事件名可随意设置(比如
隔离常规GA4标签
- 给原有GA4页面视图/事件标签添加触发条件:仅当
ad_storage和analytics_storage均为'granted'时才触发,避免授权拒绝时发送常规数据。
- 给原有GA4页面视图/事件标签添加触发条件:仅当
Google Ads 配置步骤
创建Ads匿名Ping标签
- 新建Google Ads自定义标签,用
gtag代码发送ping请求:
替换gtag('event', 'anonymous_ping', { send_to: 'YOUR_ADS_CONVERSION_ID', allow_ad_personalization_signals: false });YOUR_ADS_CONVERSION_ID为你的Ads转化ID,allow_ad_personalization_signals: false会禁用个性化相关的用户标识符。 - 触发器和GA4保持一致:仅在用户拒绝授权时触发。
- 新建Google Ads自定义标签,用
验证请求合法性
- 用浏览器开发者工具的Network面板检查发送的Ads请求,确保URL中没有
gclid、dclid这类用户追踪参数,请求体里也没有任何可识别用户的信息。
- 用浏览器开发者工具的Network面板检查发送的Ads请求,确保URL中没有
必看注意事项
- 彻底匿名:所有ping请求必须排除IP(GA4已通过
anonymize_ip处理)、Cookie、用户ID、页面敏感信息等,绝对不能留下可关联用户身份的痕迹。 - 测试全覆盖:用GTM预览模式分别测试授权同意、拒绝、撤回三种状态,确保每种状态下的请求符合预期。
- 合规优先:即使是匿名请求,也要确认符合当地隐私法规(如GDPR),建议先咨询法务确认你的场景是否允许。
内容的提问来源于stack exchange,提问作者fs-doc
相关产品推荐
相关产品推荐

