Erori ale șirului de consimțământ care îți ucid în tăcere veniturile din reclame
Scurgerea silențioasă de venituri
Când eCPM-ul tău scade cu câteva procente în fiecare lună, cauza este rareori inventarul sau prețurile minime. Mai des este un TC string defect — semnalul Cadrului de Transparență și Consimțământ (TCF) al IAB care călătorește cu fiecare cerere de reclamă. Un șir malformat sau lipsă nu aruncă nicio eroare zgomotoasă. În schimb, serverul de reclame revine în tăcere la reclame nepersonalizate, partenerii de cerere se retrag, iar veniturile sângerează fără nicio alertă. Pentru editorii de aplicații și jocuri care monetizează în SEE și Regatul Unit, este cea mai trecută cu vederea cauză a pierderii de venituri.
Ce transportă de fapt TC string-ul
TC string-ul este un blob codificat în base64 creat de platforma ta de gestionare a consimțământului (CMP). Codifică alegerile utilizatorului: scopurile consimțite, furnizorii permiși, CMP ID-ul tău, versiunea politicii și o marcă temporală. Cumpărătorii îl decodifică în milisecunde pentru a decide dacă pot licita cu țintire personalizată. Două semnale contează la fel de mult:
gdprApplies— un indicator (1, 0 sau undefined) care le spune cumpărătorilor dacă GDPR este aplicabil.- Google Consent Mode v2 — semnalele
ad_storage,ad_user_datașiad_personalizationpe care Google le citește independent de șirul TCF.
Dacă oricare dintre acestea este greșit, cererea se evaporă — chiar și când utilizatorul a consimțit de fapt.
Cele cinci erori care te costă bani în tăcere
1. Șir lipsă sau expirat. Dacă CMP-ul nu scrie niciodată un șir, sau consimțământul din cache îmbătrânește dincolo de fereastra ta de re-solicitare, cererile pleacă fără semnal. Cumpărătorii tratează "niciun șir" ca "niciun consimțământ" și licitează doar cu cerere contextuală cu eCPM scăzut, sau sar peste licitație.
2. CMP ID greșit. Fiecare CMP certificat are un ID înregistrat încorporat în șir. Dacă se scrie un ID nerecunoscut, Google și furnizorii IAB îl resping — comun după o migrare cu SDK-ul vechi încă inclus.
3. Furnizor nedeclarat. Un partener de cerere poate avea consimțământ complet, dar dacă vendor ID-ul său nu este în lista furnizorilor permiși, nu poate licita personalizat. Editorii uită adesea să actualizeze lista după adăugarea unui partener.
4. gdprApplies malformat. Transmiterea unui șir "1" în loc de un întreg, sau lăsarea lui undefined pentru un utilizator clar în SEE, derutează cumpărătorii. Un gdprApplies=0 incorect te poate expune și la risc de conformitate, în timp ce pare în regulă.
5. Semnalele Consent Mode nu se declanșează. Șirul TCF poate fi perfect în timp ce Consent Mode rămâne în starea sa implicită refuzată — de exemplu, când SDK-ul încarcă reclame înainte ca consimțământul să se rezolve. Google servește atunci reclame nepersonalizate indiferent de TC string.
Un flux de depanare pas cu pas
Lucrează dinspre dispozitiv către exterior, spre serverul de reclame, și reprodu într-o stare curată — șterge datele aplicației sau folosește un profil de browser proaspăt, astfel încât consimțământul învechit să nu te inducă în eroare.
- Pasul 1 — Capturează șirul brut. Pe web, citește-l prin
__tcfapi('getTCData', 2, cb). Într-o aplicație, extrage cheiaIABTCF_TCStringdinSharedPreferences(Android) sauNSUserDefaults(iOS). - Pasul 2 — Decodifică și validează. Lipește-l în decodorul IAB TCF sau într-un validator CMP. Confirmă că CMP ID-ul este al tău, că versiunea politicii și marca temporală sunt actuale și că vendor ID-urile tale cheie apar în listă.
- Pasul 3 — Inspectează cererea de reclamă. Folosește Charles Proxy sau un inspector de rețea pentru a urmări cererea GAM și verifică dacă parametrii
gdprșigdpr_consenttransportă valorile corecte. - Pasul 4 — Verifică Consent Mode. Folosește Google Tag Assistant pentru a confirma că
ad_user_datașiad_personalizationtrec la granted când utilizatorul acceptă. - Pasul 5 — Confirmă în GAM. Deschide dimensiunea de raportare reclame nepersonalizate din Ad Manager. Un vârf de trafic NPA care nu se potrivește cu rata ta de excludere este amprenta unui șir defect.
Remedierea cauzei rădăcină
Peticirea unei singure cereri defecte este ușoară; prevenirea următoarei este munca. Fă reclamele să aștepte consimțământul înainte de inițializare, păstrează-ți lista de furnizori sincronizată cu stiva ta de cerere și urmărește raportul dintre afișările personalizate și cele nepersonalizate — o schimbare acolo este cel mai timpuriu avertisment al tău.
Aici un CMP certificat Google își câștigă locul. FlexyConsent emite șiruri IAB TCF 2.3 valide cu CMP ID-ul corect și declarațiile furnizorilor, declanșează semnalele Consent Mode v2 astfel încât ad_user_data și ad_personalization să urmeze alegerea utilizatorului și afișează analize ale ratei de consimțământ pe web, Android și iOS — astfel încât un șir defect apare pe un panou de bord, nu în plata ta.
Concluzii cheie
- Un TC string defect nu se blochează — te retrogradează în tăcere la reclame nepersonalizate și un eCPM mai scăzut.
- Cinci vinovați: șiruri lipsă/expirate, CMP ID greșit, furnizori nedeclarați,
gdprAppliesmalformat și semnale Consent Mode moarte. - Depanează de la dispozitiv la serverul de reclame: capturează, decodifică, inspectează cererea, verifică Consent Mode, verifică GAM.
- Urmărește continuu raportul tău personalizat-la-NPA — un CMP certificat precum FlexyConsent face din șirurile valide și semnalele Consent Mode v2 corecte opțiunea implicită.