Sådan læser du en TCF-samtykkestreng: en feltguide for udviklere
Hvad TC string faktisk er
IAB Transparency & Consent Framework producerer ét kompakt token — TC string — som rejser med hver annonceanmodning og fortæller leverandører præcis, hvad en bruger har og ikke har accepteret. Den er Base64-URL-kodet og pakket på bitniveau, så den ligner volapyk (CPxy...AAA), men koder en præcis, reviderbar optegnelse.
Segmenterne
En fuld TC string er flere punktadskilte segmenter. Det første er core-strengen; de andre er valgfrie:
- Core — CMP-ID, CMP-version, samtykketidsstemplerne, policy-versionen og afgørende bitfelterne for formålssamtykker og leverandørsamtykker.
- Disclosed vendors — hvilke leverandører der blev vist for brugeren.
- Publisher TC — samtykker specifikke for dig, udgiveren.
Bitfelterne er kernen i det: bit N sat til 1 betyder samtykke til formål N eller leverandør N. Formål 1 er “gem/tilgå information på en enhed,” formål 3 og 4 dækker personaliserede annoncer, og så videre.
At afkode én i praksis
Du afkoder sjældent bits i hånden. Brug de IAB-leverede biblioteker eller en offentlig dekoder:
- Opdel på
.og Base64-URL-afkod core-segmentet. - Læs headerfelterne med fast bredde (version, created, lastUpdated, cmpId, cmpVersion).
- Gå gennem formåls- og leverandørbitfelterne for at se præcis, hvilke der er givet.
I JavaScript returnerer kaldet __tcfapi('getTCData', 2, cb) det allerede parsede objekt — tcData.purpose.consents og tcData.vendor.consents er maps af id → boolean. Det er din grundsandhed ved runtime.
Fejlene der dræber indtægter
Når personaliseret demand stille forsvinder, er TC string normalt grunden:
- Manglende streng — annonceanmodningen bærer ingen
gdprApplies/TC string, så compliante SSP'er falder tilbage til ikke-personaliseret. - Leverandør ikke samtykket — din demand-partners leverandør-ID-bit er 0, så de kan ikke byde med personalisering.
- Udløbet eller forældet streng — et gammelt tidsstempel får downstream-platforme til at mistro den.
- Forkert CMP-ID — et ikke-registreret eller test-CMP-ID ugyldiggør hele strengen.
En fejlfindings-arbejdsgang
Reproducer brugerens samtykke, hent den live TC string fra __tcfapi eller annonceanmodningen, kør den gennem en validator, og sammenlign de afkodede formål/leverandører med, hvad dine partnere kræver. Ni ud af ti gange er kløften en enkelt leverandørbit eller et manglende formål 1.
Hvor FlexyConsent passer
FlexyConsent genererer spec-gyldige TC strings med et registreret CMP-ID, holder dem friske, eksponerer den afkodede tilstand til fejlfinding og rapporterer, hvilke formål og leverandører der faktisk gives på tværs af din trafik — så du kan se, ikke gætte, hvor samtykke (og indtægter) lækker.
Vigtigste pointer
- TC string er en bit-pakket, reviderbar optegnelse af hvert samtykkevalg.
- Formåls- og leverandørbitfelter afgør, om partnere kan servere personaliserede annoncer.
- De fleste indtægtsfald sporer til en manglende streng, en ikke-samtykket leverandør eller et forældet/ugyldigt CMP-ID.
- Afkod den live streng med
__tcfapi, og valider den mod partnerkrav ved fejlfinding.