Fejlsøg IAB GPP-strengen i browserkonsollen: en trin-for-trin-vejledning
Hvorfor GPP-problemer er svære at få øje på
Når en amerikansk besøgende fravælger salg eller deling af sine data, skal det valg nå hver annoncepartner på siden. Med IAB Global Privacy Platform (GPP) rejser det som en kompakt streng og en liste over sektions-id'er. Hvis en af dem er forkert — mangler, er forældet eller indeholder den forkerte sektion — går der ikke noget synligt i stykker. Annoncer indlæses stadig, banneret ser stadig fint ud, og problemet viser sig først senere ved, at partnere ignorerer opt-outs eller byder mindre på dit inventar.
Den gode nyhed er, at du kan inspicere næsten alt fra browserkonsollen. Denne vejledning gennemgår tjekkene i den rækkefølge, vi ville køre dem på en live side.
Trin 1: Bekræft, at API'et findes og er klart
En GPP-kompatibel CMP udstiller en global funktion __gpp. Åbn DevTools på din side og kør en ping-kommando:
__gpp('ping', function (data) { console.log(data); });
Det returnerede objekt fortæller meget med et enkelt blik:
- gppVersion — bør være 1.1 i nuværende implementeringer.
- cmpStatus — om CMP'en er indlæst eller er løbet ind i en fejl.
- cmpDisplayStatus — om banneret er synligt, skjult eller deaktiveret for denne besøgende.
- signalStatus — “ready”, når CMP'en har fastlagt en samtykketilstand, “not ready”, mens den stadig afgør det.
- supportedAPIs — de sektioner, CMP'en kan producere.
- applicableSections — de sektions-id'er, der gælder for denne besøgende lige nu.
- gppString — selve den kodede streng.
Hvis __gpp er udefineret, mangler CMP-stubben, eller den indlæses for sent. Stubben skal være på plads før ethvert annoncescript, der forventer den, ellers ser disse scripts ingen CMP og venter enten eller fortsætter uden signal.
Trin 2: Tjek den gældende sektion
Hvert privatlivsframework i GPP har et numerisk sektions-id. Dem, udgivere oftest møder, er 2 (EU TCF v2), 5 (canadisk TCF), 7 (US National, “usnat”) og 8 og opefter for individuelle statssektioner som Californien, Virginia, Colorado, Utah og Connecticut. En besøgende fra en amerikansk stat bør normalt se enten den nationale sektion eller den relevante statssektion i applicableSections, ikke EU-sektionen.
Test fra flere placeringer. En almindelig fejl er en CMP, der registrerer geografien korrekt til banneret, men skriver en standardsektion i strengen uanset hvad, eller omvendt. Brug en VPN eller din CMP's forhåndsvisningsværktøjer til at sammenligne, hvad banneret viser, med hvad applicableSections rapporterer.
Trin 3: Læs sektionsdataene
I stedet for at afkode strengen i hånden kan du bede CMP'en om den parsede sektion:
__gpp('getSection', function (data, success) { console.log(data, success); }, 'usnat');
I US National-sektionen følger opt-out-felterne en enkel konvention: 0 betyder ikke relevant, 1 betyder, at brugeren har fravalgt, og 2 betyder, at brugeren ikke har fravalgt. Fokusér først på disse felter:
- SaleOptOut og SharingOptOut
- TargetedAdvertisingOptOut
- De tilsvarende notice-felter, som registrerer, om den besøgende har fået besked om hver praksis
Udfør nu opt-out'en på siden — klik på dit “Do Not Sell or Share”-link eller skift indstillingen i præferencecenteret — og kør getSection igen. Opt-out-felterne bør skifte fra 2 til 1. Gør de ikke det, er UI og signal ude af trit.
Trin 4: Test Global Privacy Control-stien
Flere statslove kræver, at virksomheder behandler et Global Privacy Control-signal som en opt-out. Aktivér GPC i en browser eller udvidelse, der understøtter det, bekræft, at navigator.globalPrivacyControl returnerer true i konsollen, og indlæs derefter siden i en ny session. De relevante opt-out-felter bør allerede vise 1, uden at den besøgende rører ved banneret. Nogle sektioner indeholder også et felt, der angiver, at valget kom fra et GPC-signal.
Trin 5: Følg hændelser, ikke kun øjebliksbilleder
Annoncescripts bør ikke læse strengen én gang ved sideindlæsning og glemme den. Registrér en listener for at se, hvad partnere ser:
__gpp('addEventListener', function (evt) { console.log(evt.eventName, evt.pingData); });
Du bør kunne observere hændelser som listenerRegistered, signalStatus og sectionChange. Når den besøgende ændrer et valg, bør en sectionChange-hændelse med en opdateret streng følge. Hvis din header bidding-wrapper eller adserverintegration kun læser strengen, før signalStatus bliver “ready”, sender den måske en tom eller forældet værdi.
Trin 6: Følg strengen ind i annonceanmodninger
Åbn til sidst fanen Network og filtrér efter dine annonceanmodninger. Mange annonceendepunkter accepterer parametrene gpp og gpp_sid (strengen og de gældende sektions-id'er). Tjek, at:
- begge parametre er til stede på anmodninger fra amerikanske besøgende;
- strengen matcher den, ping returnerede på tidspunktet for anmodningen;
- efterfølgende anmodninger efter en opt-out bærer den nye streng frem for en cachet.
Hvis du bruger Prebid.js, så bekræft, at dets consent management-modul er konfigureret til GPP, og inspicér både de budanmodninger, der forlader wrapperen, og det endelige adserverkald.
Almindelige fejlmønstre
- Stub indlæses efter annoncetags — partnere ser slet ingen CMP.
- Forkert sektion for regionen — EU-sektion sendt for amerikansk trafik, eller slet ingen sektion.
- UI og signal ude af trit — kontakten ændrer sig, strengen gør ikke.
- GPC ignoreret — browsersignalet bliver aldrig en opt-out.
- Forældede strenge i anmodninger — wrapperen cacher den første værdi, den så.
Vigtigste pointer
- Start med ping: version, status, gældende sektioner og strengen fortæller det meste af historien.
- Brug getSection til at læse opt-out-felter; 1 betyder fravalgt, 2 betyder ikke fravalgt.
- Test opt-out-linket og GPC hver for sig og bekræft, at begge ændrer signalet.
- Lyt efter hændelser og vent på et “ready”-signal, før annonceanmodninger læser strengen.
- Verificér gpp og gpp_sid i rigtige netværksanmodninger, før og efter en opt-out.