Meta Pixel in Google Tag Manager wacht nu automatisch op cookietoestemming

Door Tapio Kauranen (opent in een nieuwe tab) ·

Een gebruiker van de plugin stuurde me een bericht: op zijn site startte de Meta Pixel zodra een bezoeker statistische cookies accepteerde, ook al was marketing geweigerd. En als een bezoeker alleen marketing accepteerde, startte de pixel helemaal niet.

Zijn opzet was heel gebruikelijk: Google Tag Manager geïnstalleerd met de plugin GTM4WP, en de Meta Pixel in GTM als een aangepaste HTML-tag die wordt geactiveerd op All Pages.

Versie 1.8.10 lost beide problemen op, en je hoeft niets in je container te wijzigen.

Waarom het gebeurde

Een plugin voor cookietoestemming ziet de pagina die WordPress verstuurt. Google Tag Manager is één script in die pagina, en de plugin hield het tegen totdat de bezoeker statistieken accepteerde.

Alles in de container was onzichtbaar voor de plugin. GTM voegt zijn tags pas aan de pagina toe nadat het is geladen. Dus toen statistieken waren geaccepteerd:

  1. De plugin liet GTM laden.
  2. GTM voerde elke tag met de trigger All Pages uit, de Meta Pixel inbegrepen.
  3. Niets vertelde GTM dat marketing was geweigerd, omdat een aangepaste HTML-tag Consent Mode niet volgt zoals de eigen tags van Google dat doen.

En als alleen marketing werd geaccepteerd, werd GTM nooit geladen, dus de pixel kreeg nooit de kans.

Met Geavanceerde Consent Mode, waarbij Google-tags vóór elke keuze laden, was het erger: de Meta Pixel draaide voordat de bezoeker iets had gekozen. Niemand had dat nog gemeld, maar ons testlab liet het zien.

Wat 1.8.10 doet

De plugin plaatst nu een kleine bewaker vooraan in de head van de pagina. Wanneer een code, GTM inbegrepen, nadat de pagina is geladen een script aan de pagina toevoegt, controleert de bewaker het adres van het script aan de hand van de trackers die de plugin kent, en aan de hand van je eigen regels Blokkeren op adres.

  • Een tracker waarvan de bezoeker de categorie niet heeft toegestaan, wordt tegengehouden.
  • Wanneer de bezoeker die categorie toestaat, wordt het tegengehouden script uitgevoerd. De Meta Pixel verstuurt dan de paginaweergave die hij in de wachtrij had gezet.
  • Al het andere laadt zoals voorheen.

En bij Basis Consent Mode laadt Google Tag Manager nu wanneer de bezoeker statistieken of marketing accepteert. Binnen de container wacht elke tag op zijn eigen categorie:

Bezoeker accepteert GTM Meta Pixel, LinkedIn, TikTok… Google Ads Google Analytics
Niets Wacht Wacht Wacht Wacht
Alleen statistieken Laadt Wacht Laadt, Consent Mode weigert opslag voor advertenties Laadt
Alleen marketing Laadt Laadt Laadt Wacht
Alles Laadt Laadt Laadt Laadt

Moet ik mijn GTM-container aanpassen?

Nee. Tags die “verkeerd” waren ingesteld, gedragen zich nu correct, en tags die al toestemmingsinstellingen hadden, blijven werken zoals voorheen.

De tab Integratie van de plugin, versie 1.8.10, met Google Consent Mode v2 aan in de basismodus

De tab Integratie in 1.8.10. Consent Mode v2 staat standaard aan, in de basismodus.

Wil je grondig zijn, dan blijven de eigen toestemmingsinstellingen van GTM een goed idee: kies bij een Meta Pixel-tag Advanced Settings → Consent Settings → Require additional consent for tag to fire en voeg ad_storage toe. De plugin stelt dat signaal in vanuit de marketingkeuze van de bezoeker.

Hoe ik het heb getest

De plugin heeft een testlab dat echte WordPress-sites bouwt en ze aanstuurt in een headless browser. Voor deze fix kreeg het twee nieuwe scenario’s met de echte GTM4WP-plugin en een container die een Meta Pixel, LinkedIn Insight en Hotjar draait in aangepaste HTML-tags, plus GA4- en Google Ads-tags.

Dezelfde tests mislukken op versie 1.8.9 precies zoals de gebruiker beschreef:

Testlabrapport voor versie 1.8.9: de Meta Pixel en LinkedIn laden met alleen toestemming voor statistieken, en er laadt niets uit de container met alleen toestemming voor marketing

Versie 1.8.9. S3 is alleen toestemming voor statistieken, S4 alleen toestemming voor marketing.

En ze slagen op 1.8.10:

Testlabrapport voor versie 1.8.10: alle 71 en 60 controles slagen

Versie 1.8.10. Elke controle slaagt.

Een bredere test voegt alle 31 trackers die de plugin kent met JavaScript toe nadat de pagina is geladen: versie 1.8.9 liet ze allemaal draaien vóór elke keuze, en 1.8.10 houdt ze allemaal tegen.

Werk de plugin bij vanuit je WordPress-dashboard, of download hem van WordPress.org (opent in een nieuwe tab). De details staan in de documentatie over Google Consent Mode.


← Alle berichten