Salt la conținut

Cercetare

80% of Cookie Reject Buttons Don't Actually Work — Here's the Proof

GDPR Privacy Monitor Research · 2026-04-11 · 6 min citire

Fiecare banner de cookie-uri face aceeasi promisiune implicita: faceti clic pe "Respinge" si urmarirea se opreste. Bannerul dispare si navigati in liniste. Aceasta este intelegerea pe care se bazeaza modelul de consimtamant -- ideea ca utilizatorii au o alegere semnificativa si aplicabila.

Am testat aceasta promisiune pe 28.891 de site-uri web din UE. Pe 80,4% dintre ele, promisiunea este incalcata. Urmarirea continua dupa ce utilizatorul face explicit clic pe respingere. Cookie-urile persista. Pixelii publicitari continua sa se declanseze. Si pe 1.642 de site-uri, cookie-urile pe care actiunea de respingere le-a sters initial revin la urmatoarea incarcare a paginii -- un tipar pe care il numim respawn de consimtamant.

Aceasta nu este o constatare marginala despre cateva site-uri configurate gresit. Indica o problema sistemica in mecanismul pe care sute de milioane de rezidenti ai UE se bazeaza pentru drepturile lor de confidentialitate.

Ce ar trebui sa faca "Respinge" -- din punct de vedere legal

Cadrul juridic este clar. Conform articolului 5 alineatul (3) din Directiva ePrivacy, stocarea sau accesarea informatiilor pe echipamentul terminal al unui utilizator necesita consimtamant prealabil, cu o exceptie restransa pentru cookie-urile strict necesare pentru un serviciu pe care utilizatorul l-a solicitat in mod explicit. Articolul 7 alineatul (3) din GDPR adauga ca retragerea consimtamantului trebuie sa fie la fel de usoara ca acordarea acestuia, iar operatorul de date trebuie sa actioneze in baza acelei retrageri.

Orientarile EDPB 05/2020 privind consimtamantul conform GDPR specifica ce inseamna aceasta pentru butoanele de respingere: daca un site web ofera o optiune "Accepta tot", trebuie sa ofere si o optiune la fel de proeminenta si la fel de accesibila pentru a refuza. Si acel refuz trebuie sa fie eficient -- trebuie sa previna efectiv prelucrarea pe care consimtamantul ar fi autorizat-o.

CJUE a consolidat acest lucru in Planet49 (C-673/17): consimtamantul necesita un act afirmativ clar, iar casetele de selectare prebifate nu constituie consimtamant valid. Consecinta logica este ca un refuz -- un act negativ explicit -- trebuie respectat la fel de definitiv ca o acceptare. Daca facand clic pe "Accepta" activeaza urmarirea, facand clic pe "Respinge" trebuie sa o dezactiveze. Nu partial. Nu temporar. Complet si persistent.

Aceasta este ceea ce spune legea. Datele noastre arata ce se intampla de fapt.

Cum testam fluxul de respingere

Testul nostru de flux de respingere este conceput sa fie cat mai aproape posibil de experienta unui utilizator real care face clic pe respingere, cu adaugarea unei instrumentari cuprinzatoare. Iata procesul pas cu pas:

Pasul 1: Sesiune de browser curata. Scanerul lanseaza o instanta Chromium curata -- fara cookie-uri, fara stocare locala, fara resurse in cache, fara istoric de navigare. Acesta este un vizitator autentic care vine pentru prima data, fara nicio stare anterioara de consimtamant. Pasul 2: Navigare si inregistrarea starii pre-consimtamant. Scanerul incarca URL-ul tinta si asteapta ca pagina sa se stabilizeze. Inainte de orice interactiune, inregistreaza fiecare cookie prezent in browser, fiecare cerere de retea efectuata si fiecare domeniu tert contactat. Aceasta este linia de baza pre-consimtamant -- ceea ce face site-ul inainte ca utilizatorul sa aiba vreo oportunitate de a face o alegere. Pasul 3: Detectarea bannerului de consimtamant. Folosind biblioteca noastra de detectie care acopera 45 de CMP-uri cunoscute si euristici generice, scanerul identifica mecanismul de consimtamant si localizeaza butonul de respingere. Acest pas utilizeaza o abordare stratificata: mai intai verifica semnaturile de scripturi CMP cunoscute si structurile DOM asociate, apoi recurge la detectia generica a elementelor pozitionate fix cu text legat de consimtamant si etichete de butoane precum "Respinge tot", "Refuza", "Decline" sau echivalente traduse. Pasul 4: Clic pe respingere. Scanerul face clic pe butonul de respingere si asteapta ca pagina sa se stabilizeze. "Stabilizeze" inseamna asteptarea finalizarii cererilor de retea in curs, oprirea mutatiilor DOM si finalizarea oricaror animatii sau tranzitii. Folosim timeout-uri generoase pentru a evita rezultatele fals pozitive de la implementari CMP lente. Pasul 5: Instantaneu post-respingere. Scanerul inregistreaza din nou starea completa: toate cookie-urile, toata activitatea de retea, toate domeniile terte. Acest instantaneu este comparat cu linia de baza pre-consimtamant pentru a determina ce s-a schimbat. Pasul 6: Reincarcare si verificare pentru respawn. Scanerul reincarca pagina si asteapta din nou stabilizarea. Apoi face un instantaneu final. Acest pas este esential: reveleaza daca actiunea de respingere este persistenta (respectata de-a lungul incarcarilor de pagina) sau daca cookie-urile si urmarirea se reactiveaza cand pagina se incarca din nou. Daca cookie-urile sterse la pasul 5 reapar la pasul 6, acesta este respawn de consimtamant.

Fiecare pas produce dovezi cu marca temporala, arhivabile: inventare complete de cookie-uri cu nume, valori, domenii, date de expirare si flaguri; jurnale complete de cereri de retea cu URL-uri, metode, coduri de raspuns si timing; si capturi de ecran ale intregii pagini. Acest lant de dovezi permite verificarea si contestarea oricarei constatari individuale.

Rezultatele: 80,4% rata de esec

Dintre cele 28.891 de site-uri web in care am finalizat cu succes testul complet al fluxului de respingere:

  • 5.650 (19,6%) au trecut. Dupa clic pe respingere, cookie-urile neesientiale au fost sterse, cererile de urmarire s-au oprit si respingerea a persistat de-a lungul incarcarilor de pagina.
  • 23.241 (80,4%) au esuat. Urmarirea a continuat sub o forma sau alta dupa ce utilizatorul a facut explicit clic pe respingere.

Esuarile nu sunt uniforme. Se incadreaza in categorii distincte care se suprapun -- un singur site poate prezenta mai multe moduri de esec simultan.

Cookie-uri persistente: 10.848 de site-uri

Pe 10.848 de site-uri (37,5% din cele testate), cookie-uri neesientiale au ramas in browser dupa finalizarea fluxului de respingere. Acestea sunt cookie-uri clasificate ca fiind legate de analiza, marketing sau urmarire care ar fi trebuit sa fie sterse sau prevenite de la setare dupa o actiune de respingere.

Cele mai frecvente cookie-uri persistente apartin Google Analytics (`_ga`, `_gid`, `_gat`), Meta/Facebook (`_fbp`, `fr`) si diverse platforme de publicitate. In multe cazuri, CMP-ul sterge cu succes unele cookie-uri dar nu le prinde pe toate -- sugerand o integrare incompleta intre platforma de gestionare a consimtamantului si lista completa de scripturi terte ale site-ului.

Prezenta acestor cookie-uri dupa respingere nu este doar o problema estetica. Fiecare este un identificator persistent care leaga sesiunea curenta a utilizatorului de vizitele trecute si viitoare. Cookie-ul `_ga`, de exemplu, este un identificator unic de client pe care Google Analytics il foloseste pentru a construi un profil longitudinal al comportamentului utilizatorului pe parcursul sesiunilor. Daca persista dupa respingere, navigarea utilizatorului continua sa fie urmarita si agregata indiferent de refuzul exprimat.

Trackere persistente: 14.547 de site-uri

Pe 14.547 de site-uri (50,3% din cele testate), serviciile de urmarire au ramas active dupa respingere -- insemnand ca browserul a continuat sa faca cereri catre domenii de urmarire cunoscute chiar si dupa ce utilizatorul a facut clic pe butonul de respingere.

Acesta este un mod de esec distinct de persistenta cookie-urilor. Un tracker poate fi activ fara a seta un cookie: cererile pixel, apelurile beacon si incarcarile de scripturi transmit toate informatii (cel putin adresa IP a utilizatorului, pagina de referinta si datele de timing) catre servere terte, indiferent daca un cookie este stocat. Aceasta se numeste uneori "urmarire fara cookie-uri" si devine tot mai frecventa pe masura ce browserele inasprimesc restrictiile asupra cookie-urilor terte.

Diferenta dintre cifra cookie-urilor (10.848) si cifra trackerelor (14.547) este semnificativa. Inseamna ca pe aproximativ 3.700 de site-uri, actiunea de respingere a sters cu succes cookie-urile dar nu a reusit sa previna continuarea cererilor de urmarire. CMP-ul a gestionat curatarea cookie-urilor dar nu a blocat scripturile care genereaza traficul de urmarire. Aceasta indica o problema arhitecturala frecventa: CMP-ul este configurat sa gestioneze cookie-uri (sa le stearga la respingere, sa le previna la incarcare) dar nu sa gestioneze executia scripturilor.

Respawn de consimtamant: 1.642 de site-uri, 4.932 de cookie-uri

Respawn-ul de consimtamant este cel mai ingrijorator tipar pe care l-am identificat. Pe 1.642 de site-uri web, cookie-uri care au fost sterse cu succes de actiunea de respingere au reaparut dupa reincarcarea paginii. Pe aceste site-uri, 4.932 de cookie-uri individuale au prezentat acest comportament de respawn.

Respawn-ul de consimtamant nu este o eroare intr-un singur CMP sau o singura configuratie. Este o problema structurala in modul in care consimtamantul este implementat in stiva web.

Cum revine un cookie dupa stergere. Cand un utilizator face clic pe respingere, un CMP configurat corect face doua lucruri: sterge cookie-urile neesientiale existente (setand expirarea lor la o data trecuta) si actualizeaza o inregistrare de consimtamant (de obicei un cookie in sine sau o intrare localStorage) care instruieste logica de blocare a CMP-ului sa previna rularea scripturilor neesientiale la incarcarile viitoare de pagina. Daca ambele functioneaza, utilizatorul este curat: fara cookie-uri de urmarire, fara scripturi de urmarire.

Respawn-ul de consimtamant are loc cand stergerea reuseste dar blocarea esueaza. Scenariul cel mai frecvent:

1. CMP-ul sterge cookie-ul `_ga` cand utilizatorul face clic pe respingere.

2. CMP-ul seteaza un cookie de stare a consimtamantului inregistrand ca utilizatorul a refuzat analiza.

3. La urmatoarea incarcare de pagina, CMP-ul isi verifica starea de consimtamant si stie ca utilizatorul a refuzat.

4. Dar: tagul de script Google Analytics este incorporat direct in sablonul paginii (in afara managerului de taguri) sau este incarcat de o regula a managerului de taguri care nu verifica starea de consimtamant.

5. Scriptul GA se incarca, nu vede niciun cookie `_ga` si creeaza unul nou.

6. Decizia de respingere a utilizatorului a fost anulata.

Variatii ale acestui tipar includ: scripturi terte incarcate prin taguri `