Meten 7 oktober 2026 5 min

Consent Mode v2: waarom weigeren toch een cookie laat plaatsen

Consent Mode v2 zet in theorie alles op weigeren, maar een verkeerd getimede cookiebanner plaatst toch een cookie. Check of jouw site het goed doet.

Waarom "weigeren" tonen niet hetzelfde is als "weigeren" toepassen

Een cookiebanner kan "weigeren" tonen en toch te laat zijn met het effectief toepassen van die keuze. De instelling die Google leest, moet vuren voor elke andere tag op je pagina begint met schrijven. Gebeurt dat te laat, dan heeft een tag zoals Conversion Linker soms al een cookie geplaatst voor de weigering binnenkomt.

Conversion Linker is een Google-tag die de klikgegevens van je advertentie in een cookie bewaart, zodat een latere conversie aan die klik gekoppeld kan worden, zoals een aankoop of een offerteaanvraag. Hij hoort zich te houden aan de keuze van de bezoeker, maar hij weet pas wat die keuze is zodra het juiste signaal hem bereikt. Komt dat signaal een fractie van een seconde te laat, dan heeft hij op dat moment al gehandeld op de standaardinstelling, en die stond mogelijk nog op "toegestaan" omdat de banner zelf nog aan het laden was, zoals Google beschrijft in zijn documentatie over consent.

Hoe ziet dat er in de praktijk uit?

Bij een test op een klantsite maten we dat exacte tijdsverschil, drie keer herhaald met hetzelfde resultaat. Google's eigen Conversion Linker-tag schreef een trackingcookie na 546 tot 756 milliseconden, terwijl de standaardinstelling "geweigerd" van de cookiebanner pas 100 tot 150 milliseconden later binnenkwam, nog voor de bezoeker iets kon kiezen. Klein genoeg om niemand op te merken, groot genoeg om een probleem te zijn.

Dat tijdsverschil van iets meer dan honderd milliseconden lijkt onbeduidend, maar het is precies het venster waarin een cookie al geplaatst wordt terwijl de weigering nog onderweg is. Google's eigen documentatie bevestigt waarom dat kan gebeuren. Commando's die naar Google Tags gestuurd worden, komen achteraan in een wachtrij terecht en zijn mogelijk nog niet verwerkt voor het volgende moment op de pagina al aanbreekt. Dit is één gemeten geval op één site, geen onderzoek over hoeveel Belgische sites hetzelfde probleem hebben. Het toont wel aan dat "de banner staat er, en hij zegt weigeren" niet hetzelfde is als "de weigering werkt ook echt op tijd".

Waarom een gewone GTM-tag dit niet oplost

Een cookiebanner die via een gewone tag in Google Tag Manager draait, mist meestal de enige trigger die gegarandeerd als eerste vuurt. Google Tag Manager heeft daarvoor een speciale trigger, Consent Initialization, die altijd voor alle andere tags loopt. Een gewone banner-tag zit daar doorgaans niet op.

Veel cookiebanners worden in Google Tag Manager geïnstalleerd als een gewone Custom HTML-tag, op een reguliere trigger zoals "alle pagina's". Dat werkt voor bijna alles, behalve voor het moment dat er echt toe doet, namelijk voor er iets anders gebeurt. Google zegt zelf dat de Consent Initialization-trigger altijd vuurt voor elke andere tag, ook voor tags op de gewone Initialization-trigger. Een banner die als gewone Custom HTML-tag draait, stuurt zijn instelling via een wachtrij, en die komt pas later aan de beurt. Een sjabloon dat de instelling rechtstreeks zet op de Consent Initialization-trigger, geldt meteen. Grote aanbieders zoals Cookiebot en CookieYes leveren zo'n sjabloon. De oplossing zit niet in een extra regel code toevoegen aan de bestaande banner, maar in hoe de banner zelf in Google Tag Manager is opgezet.

Wat de Belgische toezichthouder hierover zegt

Toestemming voor cookies moet volgens de Belgische Gegevensbeschermingsautoriteit onder meer vooraf gegeven worden, vrij zijn en ondubbelzinnig. Een weigerknop moet even makkelijk te vinden zijn als de knop om alles te aanvaarden, op dezelfde laag van de banner.

Een cookiewall, waarbij een bezoeker de site pas mag gebruiken na het aanvaarden van cookies, is volgens diezelfde toezichthouder niet toegelaten. Het gaat niet om een theoretische regel. De Gegevensbeschermingsautoriteit beboette in 2022 uitgeverij Roularta voor 50.000 euro omdat cookies op perssites geplaatst werden voor de bezoeker daarvoor toestemming had gegeven, en omdat de vakjes voor cookies van derde partijen al op voorhand aangevinkt stonden. Die beslissing dateert van 2022, maar het principe erachter staat nog altijd overeind. Een cookie die geplaatst wordt voor de bezoeker "nee" heeft kunnen zeggen, is een probleem, ongeacht of dat door een bewuste keuze komt of door een banner die simpelweg te traag reageert. Voor een zaakvoerder betekent dit twee dingen. Eerst een juridisch risico, want de GBA eist toestemming voor het plaatsen, en een vertraging verandert daar niets aan. En daarnaast een meetprobleem, want conversiemeting die op verkeerde cookiegegevens draait, geeft je verkeerde cijfers over wat je advertenties echt opleveren.

Wat je zelf kan checken op je eigen site

Wil je zelf checken of jouw site dit goed doet, dan hoef je geen ontwikkelaar te zijn om een eerste indruk te krijgen. Open je site in een privénavigatievenster, weiger alle cookies zodra de banner verschijnt, en kijk meteen daarna in de ontwikkelaarstools van je browser welke cookies er al op dat moment staan.

- Open je site in een nieuw privénavigatievenster, zodat er geen oude cookies meespelen. - Klik zodra de cookiebanner verschijnt meteen op "alles weigeren", zonder verder te scrollen of te wachten. - Open de ontwikkelaarstools van je browser (rechtermuisklik, "Inspecteren", tab "Application" of "Opslag") en kijk onder "Cookies" welke cookies er op dat moment al staan. - Zie je daar een cookie van Google Ads of Analytics staan die er normaal pas na toestemming hoort te zijn, dan is dat een signaal dat je banner te laat reageert. - Gebruik je Google Tag Manager, installeer dan de gratis Tag Assistant-extensie van Google. Die kan tonen wanneer een tag gegevens leest voor er een standaardinstelling gezet is.

Vind je zo'n cookie die er te vroeg staat, dan ligt de oplossing meestal niet bij de banner zelf, maar bij hoe die banner in Google Tag Manager is aangesloten. Twijfel je of je eigen Google Ads-metingen hierdoor geraakt worden, laat dan je site checken voor je verder optimaliseert op cijfers die mogelijk al vervuild zijn.

“Een cookiebanner die "weigeren" toont, betekent niet automatisch dat die weigering ook op tijd doorkomt. Dat verschil is precies waar het juridisch en meettechnisch misgaat.”

Toon Rombaut, HAI

Veelgestelde vragen

Wat is Consent Mode?

Consent Mode is het systeem waarmee de Google-tags op je site, zoals Google Ads en Analytics, weten of een bezoeker cookies heeft aanvaard of geweigerd. Op basis daarvan passen die tags zelf aan hoeveel gegevens ze mogen gebruiken. Afhankelijk van de instelling mag een tag hooguit nog anonieme signalen doorsturen.

Is een cookiebanner verplicht?

Ja, zo goed als altijd. Zet je niet-noodzakelijke cookies, zoals voor advertenties of meting, dan moet je vooraf toestemming vragen volgens de regels van de Belgische Gegevensbeschermingsautoriteit. Enkel cookies die strikt nodig zijn om je site te laten werken, mogen zonder toestemming geplaatst worden.

Hoe werkt een cookiebanner precies?

Een cookiebanner toont een keuze en stuurt die keuze door naar de tags op je site, zoals Google Ads of Analytics. Klikt een bezoeker op weigeren, dan moeten die tags stoppen met het plaatsen van niet-noodzakelijke cookies. Gebeurt dat te laat, dan is de banner formeel aanwezig maar werkt ze niet op tijd.

Waarom moet ik cookies laten accepteren als een bezoeker al "weigeren" heeft geklikt?

Omdat de standaardinstelling "geweigerd" van de cookiebanner, die al geldt voor je iets aanklikt, soms later binnenkomt dan de tags die al beginnen te schrijven. Dat heet een timingprobleem, geen bewuste keuze van iemand. Een cookiebanner die op de juiste technische plek in Google Tag Manager staat, kan dat probleem oplossen door haar instelling altijd als eerste te laten vuren.

Toon Rombaut

Toon Rombaut

Oprichter HAI

Wil je weten of jouw cookiebanner op tijd weigert?

We checken de timing van je consent-instelling en zeggen eerlijk of je metingen kloppen.

Vraag een check aan