TCF同意文字列の読み方:開発者のための実践ガイド

TC stringとは実際に何か

IAB Transparency & Consent Frameworkは、単一のコンパクトなトークン — TC string — を生成します。これはすべての広告リクエストとともに移動し、ユーザーが何に同意し何に同意していないかをベンダーに正確に伝えます。Base64-URLでエンコードされ、ビットレベルでパックされているため、意味不明に見えますが(CPxy...AAA)、正確で監査可能な記録をエンコードしています。

セグメント

完全なTC stringは、ドットで区切られた複数のセグメントです。最初のものはコア文字列で、他はオプションです:

ビットフィールドがその核心です。ビットNが1に設定されていれば、目的NまたはベンダーNへの同意を意味します。目的1は“デバイス上の情報を保存/アクセスする”、目的3と4はパーソナライズ広告をカバーし、以下同様です。

実際にデコードする

ビットを手作業でデコードすることはめったにありません。IABが提供するライブラリか公開デコーダを使用してください:

JavaScriptでは__tcfapi('getTCData', 2, cb)呼び出しが既にパース済みのオブジェクトを返します — tcData.purpose.consentsとtcData.vendor.consentsはid → booleanのマップです。これがランタイムでのあなたの基準となる真実です。

収益を殺すエラー

パーソナライズされた需要が静かに消えるとき、通常はTC stringが原因です:

デバッグのワークフロー

ユーザーの同意を再現し、__tcfapiまたは広告リクエストからライブのTC stringを取得し、バリデータにかけて、デコードされた目的/ベンダーをパートナーが要求するものと比較します。10回中9回、ギャップは単一のベンダービットか欠落した目的1です。

FlexyConsentの位置づけ

FlexyConsentは認定済みのCMP ID 317でTC文字列を生成し、__tcfapiを通じて提供するため、現在の文字列をデコードできます。レポートでは判断をソース別・地域別に確認できます。

主なポイント

← ブログ すべて読む →