IAB Europe 最终审定了与 IAB Tech Lab、共同成员公司一起拟定的透明度和用户意见征求框架 (TCF) v2.0。Google 与 TCF v2.0 集成后,您可以更轻松地直接使用 IAB TCF v2.0,也可以使用意见征求管理平台 (CMP),后者可使用 IAB TCF v2.0 向 Google 传递用户意见信号。
2020 年 8 月 15 日,IAB 将从 TCF v1 切换到 TCF v2.0。
运作方式
从 2020 年 8 月 13 日起,Google 将支持 IAB TCF v2.0。Google Ads 将能够读取和解读用于转化跟踪代码的 TCF v2.0 透明度和用户意见征求 (TC) 字符串。这样一来,根据用户的选择创建 TCF v2.0 字符串的意见征求管理平台 (CMP) 便可以向 Google Ads 发送用户意见信号。
与 TCF v2.0 集成意味着我们的广告产品将能够读取透明度和用户意见征求字符串。您已关联的 Google 代码会根据 TC 字符串的内容调整自身的行为。
设置透明度和用户意见征求框架 v2.0
若要将 TCF v2.0 字符串用于 Google Ads 代码,您需要在相应代码上方添加一行代码来选择启用,以便这些代码能够正确读取 TCF 字符串。若要启用 TCF v2.0 支持,您需要:
- 确保您在网站上使用的是 Google 代码或 Google 跟踪代码管理器。如需了解具体操作步骤,请参阅为网站设置转化跟踪。
- 使用 TCF v2.0 CMP。
- 在您的 Google 代码或 Google 跟踪代码管理器代码上方添加 TCF 代码段。
您需要在已植入 Google Ads 代码的所有网页中的 Google 代码或 Google 跟踪代码管理器代码段上方添加下面这行代码。
示例代码
为了启用 TCF v2.0 支持,您需要将上述一行代码放置在 Google 代码或 Google 跟踪代码管理器容器代码段上方的任意位置。以下示例展示了将这行 TCF 代码放置在示例 Google 代码上方的情形。
<script>
window ['gtag_enable_tcf_support'] = true;
</script>
<!-- Google 代码 (gtag.js) - Google Ads:TAG_ID -->
<script async src="https://www.googletagmanager.com/gtag/js?id=TAG_ID"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config','TAG_ID');
</script>
Google Ads 行为与透明度和用户意见征求框架 v2.0
TCF 按照“用途”对数据处理进行整理。每种用途都有对应的“征得用户同意”或“合法权益”法律依据。通过 Google 跟踪代码管理器或 Google 代码植入的 Google Ads 转化跟踪代码会使用以下方式处理包含用户意见征求字符串的请求:
用途 | Google 的注册法律依据 | 说明 | 缺少时对 Google Ads 的影响 |
1 | 征得用户同意 | 在设备上存储和/或访问信息。 | Google Ads 将不会创建 Cookie,也不会将其用于衡量或个性化调整。如果未征得用户同意,再营销名单将不会积累相应用户的数据,且归因报告显示的内容可能更为有限。 |
3 和 4 | 征得用户同意 | 创建和使用用于投放个性化广告的个人资料。 | 事件不能用于广告个性化功能和再营销名单。已添加至受众群体名单的用户不会受到影响。 |
7 | *灵活 - 默认为合法权益 | 衡量广告效果。 | Google Ads 要求所有转化都必须符合此用途。如果不具有此用途,Google Ads 将不会记录相应转化。 |
9 | *灵活 - 默认为合法权益 | 开展市场调研以进行受众群体分析。 | Google Ads 要求所有转化都必须符合此用途。如果不具有此用途,Google Ads 将不会记录相应转化。 |
10 | *灵活 - 默认为合法权益 | 开发和改进产品。 | Google Ads 要求所有转化都必须符合此用途。如果不具有此用途,Google Ads 将不会记录相应转化。 |
特殊用途 1 | 合法权益 | 确保安全、预防欺诈和调试。 | 此用途始终存在,且在 TCF 内提供。 |
*Google 可就用途 2、5、6、7、9 和 10 进行灵活注册,且这些用途的默认法律依据为合法权益。除非您将 CMP 配置为仅限 Google 就这些用途征得用户同意,否则 Google 将以 CMP 与用户达成的合法权益作为法律依据。Google 不能就用途 1、3 和 4 进行灵活注册,且始终需要就这些用途征得用户同意。其余 TCF 用途不会用于 Google Ads 转化跟踪代码,但可能会用于其他 Google 产品。
注意:Google 跟踪代码管理器和 Google 代码只接受按照 TCF 政策和技术规范正确实现,且遵循 Google 的《欧盟地区用户意见征求政策》的 TCF 字符串。如果您的 CMP 没有在 500 毫秒内做出响应,或者显示“错误”“存根”或“正在加载”状态,即表示该代码会在受限模式下继续运行:
- Google Ads 第一方和第三方转化 Cookie 的写入和读取将受到限制
- Google Analytics(分析)广告功能会与 IAB TCF v2 集成,并将这些请求视为拒绝所有用途的请求,相关影响已在上表中列出。
- 再营销功能将被停用。
对错误消息进行问题排查
如果您的 CMP 没有在 500 毫秒内做出响应,或者显示“错误”“存根”或“正在加载”状态,即表示该代码会在受限模式下继续运行。解决这一问题的方法如下:
如果您是通过手动调用函数来触发转化跟踪代码:
- 请务必在 500 毫秒内发送对
getTCData TCData.eventStatus = 'tcloaded'
或'cmpuishown' + 'useractioncomplete'
的响应。这表明 CMP 已做好准备,可以为用户提供意见征求选项。
如果您不是通过手动调用函数来提交转化跟踪代码:
- 请与您的 CMP 合作,确保对方实现 getTCData 支持并返回
TCData.eventStatus = 'tcloaded'
或'cmpuishown' + 'useractioncomplete'
,表明用户意见征求可在 500 毫秒内通过 API 使用。
TCF 如何与个性化广告、意见征求模式和其他信号交互
如果 Google 收到多个存在冲突的信号,则会采取最保守的方法将信号整合在一起,以便保护隐私。例如:
- Google 发现 Google 代码中显示的是
allow_ad_personalization_signals=true
,但实际上客户拒绝了 TCF 用途 3。 - Google 发现 Google 代码中显示的是
allow_ad_personalization_signals=false
,但实际上客户同意了 TCF 用途 3。
上述处理流程也适用于接收到的信号在 TCF 和受限的数据处理参数之间出现冲突的情况。
为确保代码植入尽可能精简以及避免出现意外交互,我们建议仅实施 TCF v2.0 或意见征求模式中的一个。两者都可以设置为解读用户意见并相应地调整代码行为。