Google Tag Manager: Cookies plaatsen na accepteren cookiemelding

Leo 20 september 2018
Cookie Consent met Google Tag Manager

Google Tag Manager is een krachtige tool die veel wordt gebruikt voor het integreren van externe diensten in de website. Het is erg breed in te zetten voor bijvoorbeeld de integratie van Google Analytics, Google Ads Remarketing of de Facebook Pixel. Met name als je intensief bezig bent met online marketing voor jouw website is Google Tag Manager (GTM) een erg handige tool. Nu de nieuwe AVG-wetgeving scherper wordt gehanteerd is het belangrijk dat je geen cookies plaatst en persoonlijke gegevens verzameld zonder dat je daarvoor toestemming hebt. Zo mag je de Facebook Pixel niet plaatsen zonder toestemming van de bezoeker. Dit kan je doen middels een cookiemelding waarin je aangeeft dat je cookies wilt plaatsen en verwijst naar de privacyverklaring. Deze melding moet vervolgens door de bezoeker geaccepteerd worden. In dit artikel beschrijf ik hoe je de Facebook Pixel kunt inladen nadat de bezoeker cookies heeft geaccepteerd.

Cookiemelding tonen

Ten eerste is het nodig om een cookiemelding op je website te tonen. Daarvoor kan je de open source code gebruiken van Cookie Consent door Insites. Via de Download-pagina kan je de code naar wens aanpassen qua positie, layout, kleur, tekst en type cookiemelding. Als de code naar wens is kun je deze kopiëren.

Ga nu naar Google Tag Manager en bewerk de Container die wordt ingeladen op jouw website. Ga naar ‘Tags’ en maak een nieuwe aan.

  • Naam van Tag: “Cookie Consent”;
  • Type tag: Custom HTML;
  • Plak de code van de cookiemelding in de editor;
  • Kies bij triggers de optie ‘All pages’;
  • Kies ‘Save’ om de tag op te slaan.

Wat je hiermee aangeeft is dat de cookiemelding op iedere pagina moet worden ingeladen. De melding wordt op iedere pagina weergegeven als er niet op is gereageerd. Op het moment als iemand de melding accepteert of weigert zal de melding niet meer worden weergegeven.

Bij de oplossing van Insites’ Cookie Consent wordt op het moment van klikken in de cookiemelding, een functionele cookie geplaatst met de waarde ‘deny’ of ‘allow’. Deze cookie is onze basis voor de verdere instellingen voor het plaatsen van de analytische cookies.

De cookiemelding van Insites heeft een optie dat altijd een kleine melding onderin het scherm staat waarbij de bezoeker zijn/haar keuze van het wel/niet plaatsen van cookies nog kan wijzigen.

Variabele en triggers instellen

Om te bepalen of een ‘tag’ vanuit GTM wel of niet mag worden ingeladen hebben we één variabele en twee triggers nodig.

Maak een nieuwe variabele aan met naam ‘Cookie Consent’ en kies het type ‘1st Party Cookie’. Vul bij de cookienaam de volgende waarde in: ‘cookieconsent_status’ en sla de variabele op.

Google Tag Manager - Cookie Consent (triggers) - Cookiemelding

Maak een nieuwe trigger aan met de naam ‘Cookie Consent – Allow’. Kies als trigger type ‘Page view’ en kies als optie ‘Some page views’. Selecteer bij de voorwaarde de net aangemaakte variabele. Kies ‘contains’ als voorwaarde en als waarde ‘allow’.

Maak nog een trigger aan met de naam ‘Cookie Consent – Deny’. Vul dezelfde waarden is als de andere variabele met als verschil in de voorwaarde ‘does not contain’.

Deze triggers kijken dus of er een cookie ‘cookie_consent_status’ bestaat en of deze de waarde ‘allow’ bevatten. Op basis van deze voorwaarden kunnen vervolgens tags wel of niet worden ingeladen.

Tag wel of niet inladen

Nu gaan we de tag aanmaken die de Facebook Pixel bevat. Maak een Facebook Pixel aan bij Facebook. Kopieer de gehele code en maak in GTM een nieuwe tag aan. Geef deze de naam ‘Facebook Pixel’ en kies als tag type ‘Custom HTML’ en plak daarin de code van Facebook.

Kies bij ‘Triggering’ de trigger ‘Cookie consent – Allow’ en sla de tag op. Hiermee geef je aan dat de tag moet worden ingeladen wanneer het plaatsen van cookies is toegestaan. Is het plaatsen van cookies niet geaccepteerd, dan wordt de Facebook Pixel ook niet ingeladen.

Google Analytics wel én niet geanonimiseerd

Op basis van de twee Cookie Consent triggers kan je nu alle tags inladen die analytische gegevens implementeren. Eén voorbeeld is het implementeren van Google Analytics. Je mag Google Analytics bijvoorbeeld wel inladen zonder dat hier toestemming voor gegeven hoef te worden. De gegevens moeten dan o.a. wel worden geanonimiseerd én je moet hiervan melding maken in je privacyverklaring (zie ook ICTrecht.nl). Als iemand analytische cookies accepteert, mag je dus ook Google Analytics integreren zonder dat dit geanonimiseerd wordt. In GTM kan je hiervoor als basis een ‘Google Analytics Settings’ variabele instellen.

Vervolgens maak je twee Google Analytics tags aan waarbij je de geanonimiseerde versie de instellingen overruled en bij ‘Fields to set’ een veld ‘AnonymizeIp’ de waarde ‘true’ invult. Aan deze tag koppel je de trigger ‘Cookie Consent – Deny’.

Bij de andere versie overrule je niets en laad je de hele Google Analytics tag in. Aan deze tag koppel je de trigger ‘Cookie Consent – Allow’.

Log bijhouden van geaccepteerde cookies

Volgens de AVG moet je kunnen aantonen dat de bezoeker toestemming heeft gegeven voor de verwerking. Dit log kan worden bijgehouden via ‘Gebeurtenissen’ in Google Analytics. Wanneer je Analytics inlaadt (geanonimiseerd, of volledig), kan je de gemaakte keuzes altijd bijhouden. Hiervoor moeten 1 tag, 2 triggers en 2 variabelen worden toegevoegd.

Cookie Consent Log Google Analytics

De log met geaccepteerde cookieplaatsingen moet bepaalde gegevens bevatten waaraan een bezoeker kan worden herkend voor bewijsvoering van de acceptatie. In bovengenoemde weergegeven oplossing worden de ‘timestamp’, ‘clientId’ en ‘userAgent’ bijgehouden.

Voor alle benodigde tags, triggers en variables kan je onderstaande JSON-bestand downloaden. Dit bestand kan je importeren binnen Google Tag Manager waarna je als enige nog je eigen Google Analytics trackingcode moet toevoegen. Deze code moet je toevoegen aan de variable ‘gaProperty’.

Download GTM Cookie Consent JSON-bestand

0 reacties

Plaats een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *

Deze website gebruikt Akismet om spam te verminderen. Bekijk hoe je reactie-gegevens worden verwerkt.

Altijd op de hoogte blijven?