// PrivacyBlog

Consent Mode v2 uitgelegd — wat betekent het voor je tracking?

Van default state tot consent updates en conversie-modeling. Hoe Consent Mode v2 écht werkt en waarom je het niet kunt negeren als je adverteert in Google.

// · 10 min lezen · Mink Helwig, Oprichter SignumCore

Verpleegkundige lacht met een oudere patiënt

Consent Mode v2 wordt vaak verward met een cookiebanner. Dat is onjuist: Consent Mode is geen banner, maar de signaallaag die Google vertelt of een bezoeker marketing- en analytics-cookies heeft geaccepteerd. Je cookiebanner stuurt het signaal; Consent Mode verwerkt het.

Sinds maart 2024 eist Google Consent Mode v2 voor conversiemeting en remarketing met Google Ads in de EER. Sindsdien zijn er twee nieuwe signalen toegevoegd (ad_user_data en ad_personalization) en is conversie-modeling uitgebreid. Dit artikel legt uit hoe het werkt, welke Consent Management Platforms (CMPs) het ondersteunen, en hoe je controleert of jouw setup klopt.

// 01 / DE VIER CONSENT SIGNALEN

Wat communiceren ze precies?

Consent Mode v2 werkt met vier signalen. Elk kan onafhankelijk op granted of denied staan:

  • ad_storage — toestemming om cookies te gebruiken voor advertentiedoeleinden (bijv. conversion tags, remarketing pixels). Zonder granted worden third-party cookies voor advertentie-tracking niet geplaatst.
  • analytics_storage — toestemming om cookies te gebruiken voor analytics (GA4, GTM analytics tags). Zonder granted krijgt GA4 een geanonimiseerd verzoek zonder client_id cookie.
  • ad_user_data — toestemming om gepersonaliseerde user-data naar Google-advertentienetwerken te sturen (email-hashes, fbc/fbp-achtige signalen). Nieuw in v2.
  • ad_personalization — toestemming om doelgroeplijsten te bouwen voor remarketing op basis van website-gedrag. Ook nieuw in v2.

De regel: default state is altijd denied. Alleen na expliciete gebruikersacceptatie gaan signalen op granted. Voor EU-bezoekers geldt daar geen uitzondering op.

// 02 / DEFAULT + UPDATE FLOW

Hoe signalen veranderen tijdens een sessie.

Elke pagina-load stuurt eerst een consent default-signaal (alles denied). Zodra de bezoeker op "Accepteer" of "Weigeren" klikt in je cookiebanner, stuurt de banner een consent update-signaal naar GTM. GTM en Google-tags luisteren hierop:

// Default — vóór user-interaction
gtag('consent', 'default', {
  'ad_storage': 'denied',
  'analytics_storage': 'denied',
  'ad_user_data': 'denied',
  'ad_personalization': 'denied',
  'wait_for_update': 500,
})

// Update — na 'Accepteer alles' klik
gtag('consent', 'update', {
  'ad_storage': 'granted',
  'analytics_storage': 'granted',
  'ad_user_data': 'granted',
  'ad_personalization': 'granted',
})

Belangrijk: wait_for_update: 500 in de default vertelt tags om 500ms te wachten op een update voordat ze vuren. Zonder die buffer vuren tags op denied-state voordat de banner consent heeft verwerkt — wat de hele setup onbruikbaar maakt.

// 03 / CONVERSIE-MODELING

Wat gebeurt er zonder granted?

Wanneer een bezoeker consent weigert, stuurt de pagina nog steeds een "cookieless ping" naar Google Ads en GA4 — maar zonder client_id of persoonsidentificatie. Google gebruikt deze pings voor conversion modeling: machine learning die geschatte conversies toekent op basis van observeerbare data (tijd, device type, campagne-signalen).

Twee praktische gevolgen:

  • Ads blijft meetbaar, ook bij lage consent rate. Wie Consent Mode correct implementeert, ziet in Google Ads meer conversies dan wie bij denied helemaal niets stuurt — hoeveel verschilt per site en zie je alleen in je eigen account. Die extra conversies zijn gemodelleerd, maar Ads gebruikt ze voor bidding-optimalisatie.
  • GA4 ziet geanonimiseerd verkeer als 'direct' of 'unassigned'. Dat maakt attribution-rapporten minder precies. Niet fataal, maar wel een reden om conversion-reports in Google Ads (dat wél gemodelleerd is) serieuzer te nemen dan GA4 voor campagne-evaluatie.
// 04 / CMPs DIE CORRECT WERKEN

Welke cookiebanners ondersteunen v2?

Sinds 2024 ondersteunen alle grote CMPs Consent Mode v2 native. Je hoeft niet zelf te kiezen voor v1 of v2 — modern CMPs sturen altijd de v2 signalen (inclusief ad_user_data en ad_personalization).

Cookiebot
CookieYes
OneTrust
Iubenda
CookieFirst
Complianz (WP)
Didomi
Usercentrics
Custom (met gtag)

Let op: ondersteuning is ingebouwd, maar de integratie moet je nog wel expliciet aanzetten in de CMP-instellingen (meestal een toggle "Enable Google Consent Mode v2"). Zonder die toggle stuurt de CMP geen signalen naar GTM en val je terug op denied-default.

// 05 / VEELGEMAAKTE FOUTEN

Waar valt het meestal uit elkaar?

  • Default niet op denied. Development-templates hebben soms granted als default voor tests. Bij launch blijft dat staan. Resultaat: je verzamelt data zonder consent — AVG-boete-risico.
  • wait_for_update ontbreekt. Tags vuren op denied-default voordat de banner kans krijgt een update te sturen. Pageviews gemist, remarketing-audience uitgehold.
  • CMP-toggle v2 niet aangezet. Je installeert Cookiebot, maar laat de Google Consent Mode v2-integratie uit staan. Pagina's sturen wel een banner, maar nul signalen naar GTM. Fix: Cookiebot dashboard → Declaration → Consent Mode v2 → On.
  • Dubbele consent-bronnen. Zowel een CMP-banner ÉN een hardcoded gtag('consent', ...) in de template. De laatste overschrijft de eerste. Bezoeker accepteert, CMP stuurt granted, hardcoded snippet stuurt denied — eindstaat: denied.
// 06 / HOE STEL JE CONSENT MODE V2 IN

Vijf stappen.

  1. Kies een Google-gecertificeerde CMP. Sinds maart 2024 eist Google een gecertificeerd Consent Management Platform voor remarketing in de EER. Cookiebot, CookieYes en Usercentrics staan op de lijst — zonder gecertificeerde CMP valt je Google Ads-remarketing stil.
  2. Zet de default op denied — vóór alle tags. Alle vier de signalen (ad_storage, analytics_storage, ad_user_data, ad_personalization) starten op denied, met wait_for_update: 500 zodat tags wachten op de bannerkeuze.
  3. Laad de consent-default als éérste in GTM. Gebruik een "Consent Initialization — All Pages" trigger; die vuurt vóór de gewone All Pages-trigger. De volgorde bepaalt of de denied-default op tijd staat.
  4. Zet de Consent Mode v2-integratie aan in je CMP. Bijvoorbeeld Cookiebot → Declaration → Consent Mode v2 → On. De CMP stuurt dan automatisch de consent update zodra de bezoeker kiest.
  5. Koppel je tags aan consent en publiceer. Per tag in GTM onder "Consent Settings" de vereiste signalen aanzetten (analytics_storage voor GA4, ad_storage voor Ads). Publiceer de container en valideer met de stappen hieronder.

Dit kost 20 tot 30 minuten. Onze gratis cookiebanner-toets (met de Consent Mode-signalen) controleert in seconden of de default-state, CMP-koppeling en laad-volgorde kloppen — handig als eindcontrole na de setup.

// 07 / HOE CHECK JE OF HET WERKT

Vier test-stappen.

  1. Open je site in incognito. Accepteer niet direct.
  2. Open DevTools → Network tab. Filter op "google". Kijk of je een g/collect?...&gcs=G100 (denied) request ziet, niet gcs=G111 (granted).
  3. Klik "Accepteer alles" in de banner. Tweede request moet nu gcs=G111 tonen.
  4. Doe een conversie (formulier, aankoop). Check GA4 DebugView: event staat daar én realtime rapport toont hem met correcte source/medium.

Deze test duurt vijf minuten en doe je zelf in de browser: wat er ná de klik met je tags gebeurt, is alleen daar zichtbaar. Wat er vóór de klik in de paginabron staat, leest onze gratis cookiebanner-toets in seconden voor je.

// 08 / TL;DR

Samenvatting.

  1. Consent Mode v2 is geen cookiebanner — het is de signaallaag die Google vertelt welke signalen granted of denied zijn.
  2. Vier signalen: ad_storage, analytics_storage, ad_user_data, ad_personalization. Default is altijd denied.
  3. Na user-action stuurt je CMP een consent update. wait_for_update: 500 is essentieel om tags te laten wachten.
  4. Zonder granted gebruikt Google conversion modeling: ML-schatting van conversies op basis van cookieless signalen.
  5. Alle grote CMPs ondersteunen v2, maar de integratie moet je expliciet aanzetten.
  6. Meest gemaakte fouten: default niet op denied, wait_for_update ontbreekt, v2-toggle in CMP uit, dubbele consent-bronnen.
// BRONNEN

Bronnen

Weet wat je website oplevertWachtlijst