8 redenen waarom een tag in GTM niet activeert
In dit artikel
Een vertaling van het artikel ‘8 Reasons Why a Tag in Google Tag Manager is Not Firing‘ van Analytics mania.
Opmerking: Enkele schermafbeeldingen gebruiken de oudere versie van de GTM-voorbeeldmodus. Dit verandert niets aan de essentie van dit artikel. De antwoorden blijven van kracht.
Je hebt een tag geconfigureerd in Google Tag Manager, schakelt de voorbeeldmodus in, probeert deze te testen, maar de tag gedraagt zich niet zoals verwacht. Ook al denk je dat je alles goed hebt gedaan, het schiet gewoon niet op. Of de tag activeert op het moment dat dit niet moet. Waarom gebeurt dat?
In het artikel van vandaag gaan we in op een aantal redenen waarom een tag in Google Tag Manager niet wordt geactiveerd. Of de tag wordt geactiveerd wanneer dit niet zou moeten.
Sommige van de onderstaande redenen zijn vrij eenvoudig. Je kunt de reden gemakkelijk achterhalen door naar de voorbeeldmodus te kijken. In sommige gevallen vertelt de voorbeeldmodus echter niets, wat verwarrend is.
Wanneer je meer wilt weten over foutopsporing met Google Tag Manager, is dit artikel wellicht ook nuttig.
#1. Onjuiste trigger
Het eerste dat gecontroleerd moet worden om erachter te komen waarom een tag niet geactiveerd is in GTM, zijn de triggers. Zodra je in een situatie bevindt waarin de tag niet is geactiveerd, doe je het volgende. Kies een gebeurtenis in de gebeurtenisstroom van de voorbeeldmodus (links) en klik vervolgens op de tag die zich onverwachts heeft gedragen.
Scroll naar beneden om alle gekoppelde triggers te zien die aan die tag zijn gekoppeld, en kijk naar de icoontjes naast de voorwaarden. Als een pictogram (naast de triggernaam) een groen vinkje heeft, betekent dit dat deze trigger de tag heeft geactiveerd. Je kunt ook groene en rode pictogrammen zien naast elke voorwaarde van tags. Zodra er aan de voorwaarde is voldaan, is de pictogram groen gekleurd.
Dit helpt je mogelijke redenen te identificeren waarom een tag geactiveerd is, of juist niet. Om een tag te activeren, moet aan ALLE voorwaarden in een enkele trigger worden voldaan. Als een tag aan meerdere triggers is gekoppeld, moet TEN MINSTE EEN van de triggers worden geactiveerd.
Een veelgemaakte fout bij beginners is dat ze de relatie tussen alle voorwaarden in een enkele tag niet kennen. Hier is een voorbeeld.
Je wilt een tag activeren op één van de drie pagina’s, /pricingg/page1/, /pricing/page2/ of /pricing/page3/. Als je net bent gestart met het gebruik van Google Tag Manager, denk je misschien dat de volgende trigger een goede keuze is.
Maar dat is het NIET. Zoals de interface van GTM aangeeft, moet aan ALLE voorwaarden in dezelfde trigger worden voldaan. Om die reden zal een dergelijke trigger hoogstwaarschijnlijk nooit geactiveerd worden. Aangezien het niet mogelijk is dat de URL van een website alle drie de opties bevat (pagina1, pagina2, pagina3).
In dit geval heb je twee opties:
- Maak 3 afzonderlijke triggers voor elke pagina (niet erg optimaal, vooral niet wanneer je conditie kan groeien tot 10, 20 of meer pagina’s) en wijs ze allemaal toe aan een enkele tag.
- Gebruik reguliere expressies in een enkele trigger, bijvoorbeeld \/pricing\/page (1|2|3)\/
#2. Uitzonderingen zijn toegevoegd
Uitzonderingen zijn negatieve voorwaarden die bepalen wanneer een tag NIET geactiveerd mag worden. Zelfs als aan ALLE voorwaarden van de reguliere trigger wordt voldaan, heeft de uitzondering een hogere prioriteit.
Om erachter te komen of de uitzondering de reden is waarom je tag in Google Tag Manager niet is geactiveerd, volgt je dezelfde procedure als in het vorige hoofdstuk. Kies de gebeurtenis in de voorbeeldconsole (links). Wanneer die tag geactiveerd moest worden klik je op de tag. Vervolgens scrol je omlaag om te zien welke triggers zijn geactiveerd.
Als alle voorwaarden van de activeringstrigger een groen vinkje bevatten, scrol je omlaag naar de sectie “uitzonderingen”. Als je ten minste één trigger ziet met alle groene vinkjes, is dat de reden waarom je tag niet is geactiveerd.
#3. Verkeerd begrepen functionaliteit van uitzonderingen
Je bent bekend met uitzonderingen en verwacht dat ze een bepaalde tag blokkeren om te voorkomen dat deze activeert. Om de een of andere reden werd de tag echter nog steeds geactiveerd (ook al ben je er 100% zeker van dat alle voorwaarden van de uitzonderingen werkten).
Uitzonderingen werken alleen tegen het activeren van triggers die dezelfde gebeurtenissen gebruiken. Laat het me uitleggen.
Je hebt een tag die wordt geactiveerd bij een uitgaande klik op een link. Dit zijn de voorwaarden van de trigger:
In sommige gevallen wil je dat de tag geblokkeerd wordt. Als je besluit dit te bereiken met de uitzonderingen, kan het alleen werken wanneer de uitzondering hetzelfde type trigger gebruikt, link klik (ook wel Just Links genoemd).
Geen enkele andere uitzondering triggert de link, behalve de ‘link klik’- trigger. Als je de link klik trigger probeert te blokkeren met de page view trigger, zal dat niet werken. En hetzelfde principe geldt voor alle type triggers in GTM.
Dus de belangrijkste conclusie is dat je vuur met vuur bestrijdt. Een link klik trigger wordt geblokkeerd met een link klik trigger. Een page view trigger wordt geblokkeerd met een page view trigger, enz.
#4. Tagvolgorde
Laten we nu naar een reden gaan die niet wordt weergegeven in de GTM-voorbeeldmodus. Hier is een voorbeeld. Je hebt een tag, deze heeft maar één trigger: “alle pagina’s”.
Maar om de een of andere reden zie je in de samenvatting dat de tag twee keer geactiveerd is. Waarom?
Dit is waarschijnlijk gebeurd vanwege een andere functie in de GTM genaamd ‘tagvolgorde’. Met de tag volgorde kun je een reeks tags maken. Bijvoorbeeld zodra een tag wordt geactiveerd, activeer dan een andere tag.
De tagvolgorde activeert altijd een tag. Ook als er niet wordt voldaan aan de voorwaarden van de belangrijkste activeringstrigger van een tag. En dat is waarschijnlijk de reden waarom je tag twee keer is geactiveerd:
- De eerste keer op een ‘paginaweergave gebeurtenis’ (vanwege de trigger voor Alle pagina’s).
- En de tweede keer vanwege de tag volgorde.
Helaas is de voorbeeldmodus van GTM niet altijd duidelijk. Zo vertelt het je namelijk niet of de tag is geactiveerd vanwege tag volgorde.
Maar je kunt dit nog uitzoeken. Om dat te doen, ga je terug naar de interface van je GTM-container en open je de tag die twee keer is geactiveerd. Scrol omlaag naar het gedeelte ‘triggeren’. Als de tag deel uitmaakt van de reeks, wordt deze daar weergeven.
Pro tip: als je er zeker van wilt zijn dat de tag maar één keer per pagina is geactiveerd, kun je het veld tag activeer optie gebruiken. Stel het in op eenmaal per pagina. Lees het volgende hoofdstuk voor meer informatie over deze optie.
#5. Opties voor het activeren van tags
Dit is een tegenovergestelde situatie. Je ziet dat de tag meerdere keren op dezelfde pagina geactiveerd had moeten worden, maar dat gebeurt slechts één keer. Je klikt op de gebeurtenis in de voorbeeldmodus. Kies de juiste tag en je ziet vervolgens dat aan alle activeringsvoorwaarden is voldaan. Maar de tag is niet geactiveerd. WTF?
Het kan te maken hebben met uitzonderingen die dit veroorzaken. Dus waar ligt het probleem.
Dit is een andere mogelijkheid die deze situatie kan veroorzaken: de tag is ingesteld om slechts eenmaal per pagina geactiveerd te worden. Om deze hypothese te verifiëren, ga je naar de desbetreffende tag. Als deze is ingesteld om één keer per pagina te worden geactiveerd, ziet je dat meteen in het tag overzicht.
Als je de tag elke keer wilt activeren moet je de instellingen wijzigen. Ga naar de geavanceerde instellingen van die tag en kies ‘eenmaal per gebeurtenis’ in de keuzelijst met de tag Activering-opties.
#6. Tag-activeerschema
Het tag activeerschema is een andere GTM-functie waarmee je de voorwaarden kan instellen wanneer een bepaalde tag wel of niet wordt geactiveerd. Hiermee kun je de start- en einddatum instellen wanneer de tag actief moet zijn. Dit is handig voor tijdelijke campagnes.
Als de campagne (het tag activeerschema) is afgelopen, wordt de tag niet geactiveerd, zelfs niet wanneer aan alle voorwaarden van de trigger is voldaan. De enige uitzondering met hogere prioriteit hier is tag volgorde.
Wanneer het tag activeerschema is ingeschakeld, zie je in de voorbeeldmodus twee uitzonderingen:
De eerste is voor de startdatum van het activeerschema en de andere is voor het einde. In de bovenstaande schermafbeelding staat een groen vinkje naast een 2e uitzondering. Dit betekent dat het aangepaste activeerschema is beëindigd en de tijdelijke uitzondering is geactiveerd.
Als je verwacht dat de tag wordt geactiveerd en de functie tag activeerschema moet worden uitgeschakeld, open je de tag in de interface van GTM > geavanceerde opties en schakel je deze uit.
#7. Een tag alleen activeren in gepubliceerde containers
Deze functie is handig als je een zeer gevoelige tag hebt die alleen in actieve containers geactiveerd zou moeten worden.
Als deze optie is ingeschakeld, wordt de tag niet geactiveerd in de voorbeeldmodus. Het wordt ook niet geactiveerd in je testomgevingen. Het wordt alleen geactiveerd in je live-omgeving (waar het GTM-containerfragment de >m_preview=parameter niet bevat).
Hoe controleer ik of de tag deze optie heeft ingeschakeld? Open het in de GTM-interface. Ga naar de geavanceerde opties en zie het selectievakje ‘deze tag alleen activeren in gepubliceerde containers’.
Zolang het is ingeschakeld, is de enige plaats waar de tag wordt geactiveerd de live-omgeving. (Alleen wanneer de GTM voorbeeldmodus is uitgeschakeld en het GTM-codefragment niet de ‘>m_preview=‘ parameter niet bevat).
#8. gtm.blocklist en gtm.allowlist
Met de functie ‘blocklist’ kunnen de ontwikkelaars van de website, het gebruik van bepaalde tags in een GTM-container beperken.
Ontwikkelaars pushen bepaalde parameters naar de dataLayer. En op basis van de configuratie zal de GTM-tags zich hierna gedragen. Als bepaalde type tags worden toegevoegd aan de gtm.allowList, worden alleen deze geactiveerd. Als bepaalde type tags aan de gtm.blocklist zijn toegevoegd, dan werken alle type tags goed. Behalve die in de gtm.blocklist.
Hier is een snelle manier om te controleren of je te maken heeft met een uitzonderingenlijst/toelatingslijst in GTM. Open de ‘Voorbeeldmodus’ van je GTM-container en kijk of je berichten in de linkerzijbalk hebt die gtm.blocklist of gtm.allowList pushen (oudere dataLayer-setups gebruiken gtm.blacklist en gtm.whitelist. Deze werken ook).
Wanneer je een bericht als dit ziet, kan dit de reden zijn waarom bepaalde tags niet werken. Dan moet je deze documentatie lezen en je ontwikkelaars vertellen wat ze moeten toevoegen (of verwijderen) aan de uitzonderingen-/toelatingslijst.
In de bovenstaande schermafbeelding is klasse html geblokkeerd. Volgens de documentatie blokkeert dit alle customScripts (omdat het een alias is).
En dat is niet alles. Als je problemen ondervindt met tags die gebruikmaken van aangepaste tags sjablonen, lees dan deze waarschuwing aan het einde van de documentatie:
Als je een uitzonderingenlijst hebt, moet je een ontwikkelaar vragen om sandboxedScripts toe te voegen aan de gtm.allowList-array. Bijvoorbeeld:
Als je al iets in de allowList heeft, moet je ontwikkelaar de bestaande array bijwerken.
Bonustips
Hier zijn enkele aanvullende ideeën om verder te ontdekken waarom je tags in Google Tag Manager niet correct worden geactiveerd. Ik zal beginnen met de meest voor de hand liggende.
Zorg ervoor dat je de voorbeeldmodus correct hebt vernieuwd
Weet ik. Dit klinkt als één van de tips van ‘zit de stekker er wel in’, maar dit gebeurt vaker dan iedereen zou willen. Als je een aantal wijzigingen hebt aangebracht in je tag/trigger/variabele. Zorg er dan voor dat je eerst de voorbeeldmodus vernieuwt (door op de link Vernieuwen in de oranje banner te klikken.) Pas daarna de pagina waaraan je werkt.
Je ziet dat je tag wordt geactiveerd in de voorbeeldmodus, maar het blijft als “Still running”
Als je een tag op deze manier in de voorbeeldconsole ziet, wordt je tag niet correct geactiveerd.
Eén van de meest voorkomende redenen hiervoor is dat de vairagbele ‘Instellingen van Google Analytics’ in het verkeerde veld wordt ingevoegd. In plaats van het toe te voegen aan het speciale veld, voegen sommige GTM-gebruikers het toe aan het veld “GA Tracking ID”. En dat is NIET hetzelfde.
Gebroken dataLayer
Wanneer dit gebeurt, zie je geen nieuwe events in de voorbeeldmodus, dus worden er geen tags geactiveerd (behalve op DOM Ready en Window Loaded). Dit gebeurt zodra de dataLayer-codefragment onder de Google Tag Manager-container in de broncode wordt geplaatst.
Het herschrijft de bestaande dataLayer op een pagina en verbreekt de functie die Google Tag Manager helpt bij het bewaken van veranderingen in de dataLayer.
Een oplossing hiervoor?
- Vraag een ontwikkelaar om dat dataLayer-codefragment boven de GTM-container te verplaatsen
- Of gebruik in plaats daarvan ‘dataLayer.push’
Een tag in Google Tag Manager wordt niet geactiveerd? Korte samenvatting
In deze handleiding heb ik een aantal redenen uitgelegd waarom je tag zich mogelijk niet gedraagt zoals je zou verwachten. Misschien activeert het niet wanneer je het wilt. Of misschien activeert de tag, hoewel je dat niet/minder vaakt wilt. Dit zijn de mogelijke redenen waarom een tag in Google Tag Manager niet wordt geactiveerd (of onverwacht wél wordt geactiveerd):
- Verkeerde configuratie van triggers
- Het gebruik van uitzonderingen
- Het gebruik van tagvolgorde
- Configuratie in opties voor het activeren van tags
- Het gebruik van een tag activeerschema
- De optie om een tag alleen in gepubliceerde containers te activeren is ingeschakeld
Daarnaast is het een goede gewoonte om te kijken of:
- Je de voorbeeldmodus correct hebt vernieuwd
- Je de informatie correct hebt ingevuld in de variabele ‘Instellingen van Google Analytics’
- De dataLayer niet is verbroken
Met toestemming van Julius Fedorovicius (auteur) is dit een vertaling van het artikel ‘8 Reasons Why a Tag in Google Tag Manager is Not Firing‘ – Analytics mania.
Reacties