打开空间

指南 · 行业标准

写给靠广告赚钱的人的 IAB TCF 详解

TCF 是欧洲的同意横幅和广告公司共同使用的通用语言。在本指南中,你将了解 TC string、现行版本、网站的义务,以及当信号缺失或损坏时收入会发生什么。

  • ✓基于 IAB Europe 和 Google 的规则
  • ✓解释 Ad Manager 的错误代码
  • ✓只读取,不修改网站
11访问者可以接受或拒绝的数据使用目的
3Google 要求使用经 TCF 认证的 CMP 的地区:欧洲经济区、英国和瑞士
755Google 在 TCF 全球供应商列表中的编号
2.42026 年 7 月发布的技术规范版本

是什么

横幅与广告合作伙伴之间的通用语言

Transparency and Consent Framework,简称 TCF,是欧洲数字广告协会 IAB Europe 制定的标准。它规定了同意横幅如何询问访问者、如何保存回答,以及如何把这个选择告知每家广告公司。

符合这个标准的横幅叫做 CMP,即同意管理平台的缩写。当访问者点击接受、拒绝或保存偏好设置时,CMP 会把选择记录在一个叫 TC string 的短代码里。这个代码会随每次广告请求一起传送。

这样,Google、Amazon、Microsoft 和数百家其他公司读取的是同一个回答,格式也相同。没有 TCF,每个合作伙伴都需要单独与你网站的横幅做集成,也没有人能确定选择是否完整送达。

TCF 是自愿性的,不是法律。它是帮助参与者遵守 GDPR 和欧洲 Cookie 规则的工具。即便如此,在实践中,它已经成为欧洲几乎整个广告市场都在使用的路径。

清单

你需要做到的事项

以下是 IAB Europe 的政策和 Google 对使用 TCF 的发布者提出的要求。

  1. 使用已注册并通过认证的 CMP

    TCF 政策只允许使用已注册且符合规则的 CMP。要在 EEA、英国和瑞士使用 Google 个性化广告,该 CMP 还必须在 Google 的认证列表中。

    示例

    签约之前,请在两个列表中查找该 CMP:IAB Europe 的列表和 Google 的列表。

  2. 发布带有可见链接的隐私政策

    发布者必须把法律信息放在公开的隐私政策中,并在内容页面上放置醒目的链接。

    示例

    每个页面的页脚都有“隐私政策”链接。

  3. 声明遵循 TCF

    政策要求公开声明网站遵守 TCF 规则,并写明所用 CMP 的识别编号。

    示例

    本网站参与 IAB Europe 的 Transparency and Consent Framework,并遵循其政策和规范。所用 CMP 的 ID 由您的 CMP 供应商提供。

  4. 选择并控制供应商

    发布者自行决定与哪些供应商合作。请在横幅中包含 Google 以及网站上实际运行的所有广告合作伙伴。

    示例

    每增加一个新的 header bidding 合作伙伴,就复查一次 CMP 的供应商列表。

  5. 把选择传递给合作伙伴

    访客的选择必须传达到网站上的合作伙伴。没有用途 1 的同意时,Google 建议不要调用其广告标签。

  6. 让访客可以重新打开选择

    访客应该能通过容易找到的链接或按钮重新打开 CMP 界面。政策还要求提醒访客有反对或撤回同意的权利。

    示例

    页脚中的固定链接“隐私偏好设置”可以重新打开 CMP。

  7. 新增供应商时再次显示横幅

    发布者新增供应商时,CMP 必须再次显示选择界面,以收集访客的回应。

  8. 不要改动标准

    发布者必须遵循规范,不得做规范之外的修改。用途和功能的名称不能更改。

实际案例

正确与错误示例

官方工具

经认证的 CMP 与官方链接

要使用 Google 广告,CMP 必须同时在两个列表中:IAB Europe 的列表和 Google 的认证列表。

适用对象

谁参与 TCF,以及它在哪里终止

该标准涉及四类参与者。每一类在 IAB Europe 的政策中都有各自的规则。

发布商

展示广告的网站和应用的所有者。他们选择 CMP,决定哪些合作伙伴出现在横幅中,并把信号传递给合作伙伴。

CMP

制作横幅的公司。必须向 IAB Europe 申请并获得批准,且严格遵守技术规范。

供应商

在全球列表中注册的广告和衡量公司。它们读取 TC string,并且只按所记录的选择使用数据。

不适用的地方

欧洲的 TCF 是为欧洲经济区和英国的规则设计的。对于来自美国或巴西的访问者,适用的是其他信号和法律。

定义

CMP 面板中出现的词语

这些术语会出现在 CMP 的设置、Ad Manager 的报告和合作伙伴的文档中。

TC string

保存访问者选择的代码:接受了哪些目的、允许了哪些公司,以及由哪个 CMP 生成的记录。

目的

共有 11 种数据用途,比如在设备上存储信息、创建个性化广告的用户画像,以及衡量广告效果。

特殊目的

不取决于用户选择的用途,比如安全和防欺诈、投放广告,以及保存用户自己的隐私选择。

特殊功能

较为敏感的技术,比如精确位置数据和设备识别,需要单独的许可。

供应商列表(GVL)

Global Vendor List 汇集了已注册的公司,每家公司都有一个编号。Google 是 755 号供应商。

已披露的供应商

TC string 的一部分,称为 disclosedVendors,说明哪些公司确实在横幅中展示过。从 v2.3 起为必填项。

用户同意和权利

访问者如何选择,以及之后可以做什么

对于每个目的,供应商要声明它使用的法律依据:用户同意或正当利益。依据用户同意时,在访问者说“同意”之前什么都不会发生。依据正当利益时,可以开始使用,但访问者有权反对。

CMP 必须清楚地展示这两种情况。访问者可以全部接受、全部拒绝,或者逐个目的、逐家公司地选择。他们还必须能看到合作伙伴列表,以及每个合作伙伴做什么。

选择不是一成不变的。访问者可以随时回到横幅,撤回同意或改变主意。所以配置良好的网站会在页脚放一个固定链接,比如“隐私偏好设置”。

对发布商来说,实用的规则很简单:横幅必须如实说明谁会收到数据,而且拒绝必须和接受一样容易。

网站的义务

发布商使用 TCF 需要做什么

  1. 使用已注册并通过认证的 CMP它必须获得 IAB Europe 的批准。要在欧洲经济区、英国和瑞士投放 Google 广告,它还必须在 Google 的认证 CMP 列表中。
  2. 谨慎选择合作伙伴在横幅中加入 Google 以及所有确实在网站上运行的广告合作伙伴。没有出现在横幅中的合作伙伴不能使用数据。
  3. 发布隐私政策TCF 政策要求有一份公开的政策,并从内容中提供链接,还要公开声明网站遵循 TCF。
  4. 把信号传递给所有合作伙伴广告代码必须读取 TC string,并在每次请求中发送它。Header bidding、Ad Manager 和其他广告网络都应收到同一个信号。
  5. 先等 CMP,再投放广告在 CMP 回答之前发出的请求是不带用户同意的。请使用 CMP 事件,在 TC string 准备好之后再放行广告。
使用 TCF CMP 标准 API 的示例
// Espera a CMP antes de liberar os anúncios
__tcfapi('addEventListener', 2, function (tcData, ok) {
  if (!ok) return;
  if (tcData.eventStatus === 'tcloaded' ||
      tcData.eventStatus === 'useractioncomplete') {
    // tcData.tcString está pronta
    // agora carregue ou libere os pedidos de anúncio
  }
});

AdSense 和 Ad Manager

对通过 Google 变现的网站有哪些变化

自 2024 年 1 月 16 日起,Google 要求使用经过认证并集成 TCF 的 CMP,才能在欧洲经济区和英国展示个性化广告。自 2024 年 7 月 31 日起,该规则也适用于瑞士。

没有认证的 CMP,这些地区的流量只能获得非个性化广告或受限广告。这两类广告的收入都低得多,也不是所有买家都参与。AdSense 和 Ad Manager 自带的“隐私权和消息”是经过认证的选项之一。

Ad Manager 直接在页面上读取 TCF。对于欧洲经济区、英国和瑞士的访问者,通过 GPP 发送的欧洲 TC string 不被接受。也就是说,即使在美国使用 GPP,欧洲仍然需要单独的 TCF。

如果网站同时使用 Google Analytics 或 Google Ads,经过认证的 CMP 通常会同时发送 Consent Mode。这是两种不同的信号:TCF 面向广告生态系统,Consent Mode 面向 Google 的标签。

时间线

改变了 TCF 和 Google 规则的日期

该标准以版本形式不断演进,并经历了欧洲司法层面的重要裁决。

  1. 2020

    Google 集成 TCF

    Google 的广告系统开始读取以 TCF 格式发送的用户同意信息。

  2. 2022 年 2 月 2 日

    比利时监管机构的裁决

    比利时数据保护机构因 TCF 对 IAB Europe 处以 25 万欧元罚款。

  3. 2024 年 1 月 16 日

    欧洲经济区和英国要求使用认证的 CMP

    要在这些地区投放 Google 个性化广告,网站必须使用经过认证并集成 TCF 的 CMP。

  4. 2024 年 3 月 7 日

    欧盟法院作出裁决

    在 C-604/22 号案件中,法院指出 TC string 可能属于个人数据,IAB Europe 可能是共同控制者。

  5. 2024 年 7 月 31 日

    瑞士适用 Google 的规则

    认证 CMP 的要求开始适用于瑞士的访问者。

  6. 2025 年 5 月 14 日

    比利时法院确认罚款

    比利时市场法院维持 25 万欧元的罚款,并确认 TC string 属于个人数据。

  7. 2026 年 2 月 28 日

    v2.3 过渡期结束

    自 2026 年 3 月 1 日起,每个新的 TC string 都必须包含已披露供应商的分段。

  8. 2026 年 10 月 23 日

    网站适用 v2.4 的期限

    网站的 CMP 开始显示 2.4 规范中的新文本和插图,该规范于 2026 年 7 月 23 日发布。

  9. 2027 年 2 月 23 日

    应用和电视适用 v2.4 的期限

    应用和联网电视中的 CMP 也被要求完成同样的更新。

监督执法

谁在监督,以及已经发生了什么

TCF 有两种监督。第一种来自 IAB Europe 自身,它批准 CMP、维护供应商列表,并可以暂停不遵守规则的一方。第二种来自数据保护机构,它们执行 GDPR 和 Cookie 法律。

最著名的案件始于比利时。2022 年,当地监管机构对 IAB Europe 罚款 25 万欧元。2024 年,欧盟法院裁定 TC string 可能属于个人数据。2025 年,比利时法院维持了这项罚款。

对发布商来说,教训是:使用 TCF 并不能转移责任。如果横幅误导访问者,或广告在选择之前就加载了,网站仍然要为这个错误负责。

还有商业层面的监督。Google 会在 Ad Manager 和 AdSense 中显示 TCF 错误报告,并在信号出错时减少广告。很多时候,问题最先就是在那里以收入下降的形式出现。

常见错误

TC string 缺失或出错时

Ad Manager 和 AdSense 会在报告中显示 TCF 错误代码。以下是最容易拉低收入的几种。

CMP 仍在加载

在 CMP 回答之前就请求了广告。没有 TC string,Google 只会投放受限广告,部分请求可能没有广告。

Google 未获许可

供应商 755 没有加入 CMP,或访问者没有接受它。结果同样是受限广告。

缺少 v2.3 分段

字符串中没有已披露供应商的列表,或者 Google 不在其中。这种情况下,Google 无法处理该请求。

CMP 未经认证

CMP 遵循 TCF,但不在 Google 的列表中。欧洲经济区、英国和瑞士的流量只能获得非个性化广告或受限广告。

欧洲访问者没有信号

请求来自欧洲,但没有任何 TCF 数据。Google 将其视为不受规则约束,并投放受限广告。

损坏或过旧的字符串

代码格式错误、TCF 版本 1,或供应商列表已过期。通常的修正方法是重新征求用户同意。

实际案例

使用 TCF 时可以做什么,不可以做什么

适用于有欧洲访问者和非欧洲访问者的网站的日常示例。

可以

  • 只向欧洲经济区、英国和瑞士的访问者显示 TCF 提示
  • 使用 AdSense 或 Ad Manager 的“隐私权和消息”,它已经通过认证
  • 把 Google 和其他广告合作伙伴加入 CMP 的列表
  • 等 CMP 准备好之后再请求广告
  • 在页脚留一个固定链接,让访问者可以更改选择
  • 让拒绝和接受一样容易

不可以

  • 把全世界所有访问者都标记为适用 GDPR
  • 用普通的 Cookie 插件替换经过认证的 CMP
  • 在 CMP 回答之前就加载广告代码
  • 使用不生成 v2.3 分段的过时 CMP
  • 在横幅中列出没有在网站上运行的合作伙伴,或隐藏正在运行的合作伙伴
  • 把拒绝按钮藏在另一个页面里

在 ConsentMode 中

审核对 TCF 检查什么

  • 以欧洲访问者和非欧洲访问者的身份打开网站,查看提示出现在哪里。
  • 通过页面代码识别 CMP,并说明它是否在 Google 的认证列表中。
  • 检查广告请求之前是否存在 TC string,以及是否包含已披露供应商的分段。
  • 检查 Google 是否出现在供应商中,以及点击横幅前后有什么变化。
  • 提供截图,以及在 CMP、WordPress 或广告代码中修正的路径。

常见问题

TCF 和 Google 的 Consent Mode 是一回事吗?

不是。TCF 是 IAB Europe 的标准,所有广告合作伙伴都会读取。Consent Mode 是 Google 在自己的标签(如 Analytics 和 Google Ads)中接收用户选择的方式。经过认证的 CMP 通常会同时处理两者。

我的网站在巴西。需要 TCF 吗?

只有当你想为欧洲经济区、英国和瑞士的访问者投放 Google 个性化广告时才需要。对于巴西的受众,Google 不要求 TCF。请按地区配置 CMP。

可以向所有人显示 TCF 横幅吗?

可以,但通常代价很高。欧洲以外的访问者会看到一个他们并不需要的提示,很多人会拒绝,收入就会下降。Google 建议只把属于法律适用范围的人标记为适用 GDPR。

因为 v2.4,我需要做什么吗?

如果你使用商业 CMP,技术工作由它负责。请向供应商确认已安装的版本遵循 2.4 规范,并保持插件或脚本是最新的。

访问者以前的选择在 v2.3 之后失效了吗?

没有。2026 年 3 月 1 日之前创建的 TC string 仍然有效,会在访问者更新或更改选择时逐步被替换。只有不含该分段的新字符串才是无效的。

在我的账户里哪里能看到 TCF 错误?

Ad Manager 和 AdSense 中都有 TCF 错误报告,列出代码和受影响的请求数量。Google 帮助中心会解释每个代码。

资料库

官方来源

本指南根据以下官方页面编写。请直接阅读原文:

查看你的 TC string 是否正确送达

审核会以欧洲访问者的身份打开网站,并告诉你要修正什么,不会改动任何内容。

开始审核