# Google Tag Manager koppelen aan Workspace-sites [[TOC]] ## Google Tag Manager en Google Sites Google Sites is de ingebouwde websitebouwer van Google Workspace. Voor organisaties die een eenvoudige intranetsite of publieke site bouwen, biedt Sites een laagdrempelige oplossing. Door Google Tag Manager (GTM) te koppelen, voeg je analytics, conversietracking en andere tags toe zonder elke keer de Sites-pagina aan te passen. :::info title="Sites werkt anders dan een eigen website" Google Sites ondersteunt aangepaste code via het insluit-element. Dat is de manier om GTM toe te voegen. De mogelijkheden zijn echter beperkter dan bij een zelfgehoste website, omdat de code in een iframe draait. Niet alle GTM-functionaliteiten werken daardoor volledig in Sites. ::: ## Stap 1: GTM-container aanmaken :::howto title="Zo maak je een GTM-container" 1. Ga naar [tagmanager.google.com](https://tagmanager.google.com). 2. Maak een account aan of log in. 3. Klik op **Container aanmaken**. 4. Voer de sitenaam in. 5. Kies het doelplatform: **Web**. 6. Klik op **Aanmaken** en accepteer de servicevoorwaarden. 7. Noteer de container-ID. Die heeft het formaat `GTM-XXXXXX` en gebruik je in het script. ::: ## Stap 2: GTM toevoegen aan Google Sites ### Methode via HTML-insluiting :::howto title="GTM-script insluiten in Sites" 1. Open je Google Site in de editor. 2. Ga naar de pagina waaraan je GTM wilt toevoegen. Voor tracking op de hele site plaats je het element op een pagina die overal wordt getoond. 3. Klik op **Invoegen** in de rechterzijbalk. 4. Kies **Insluiten** en vervolgens **Insluitcode** (HTML insluiten). 5. Plak het GTM-` ``` :::warn title="Let op de juiste aanhalingstekens" Kopieer het script bij voorkeur rechtstreeks uit de GTM-installatie-instructies. Eén ontbrekend aanhalingsteken (bijvoorbeeld in het deel `?'&l='+l:''`) maakt het script ongeldig, waardoor de container helemaal niet laadt. ::: ### Beperkingen van Sites-insluiting Google Sites plaatst het insluit-element in een iframe. De GTM-code draait daardoor in een afgeschermd contextvenster. Dit heeft een paar gevolgen: - Cookies worden ingesteld op het iframe-domein, niet op het Sites-domein. - Sommige third-party tags werken niet correct binnen een iframe. - `dataLayer`-pushes vanuit de Sites-pagina zelf zijn niet mogelijk, omdat de pagina en het iframe gescheiden zijn. Voor volledige GTM-functionaliteit is een zelfgehoste website beter geschikt. ## Stap 3: Tags configureren in GTM ### Google Analytics 4 toevoegen :::howto title="GA4 koppelen in GTM" 1. Open je container in de GTM-interface. 2. Klik op **Tags** en daarna op **Nieuw**. 3. Kies als tagtype **Google Analytics: GA4-configuratie** (of de Google-tag). 4. Voer je Measurement ID in (formaat: `G-XXXXXXXXXX`). 5. Kies als trigger **All Pages**. 6. Sla de tag op en publiceer de container. ::: ### Aangepaste evenementen Binnen een eigen pagina kun je gebeurtenissen naar de `dataLayer` sturen: ```javascript window.dataLayer = window.dataLayer || []; window.dataLayer.push({ event: 'button_click', button_name: 'Contact opnemen', page_location: window.location.href }); ``` In Google Sites werkt dit alleen betrouwbaar wanneer de push gebeurt binnen hetzelfde insluit-element waarin ook GTM draait, omdat de Sites-pagina en het iframe verschillende contexten zijn. ## Eenvoudiger alternatief: ingebouwde Analytics-instelling Wil je alleen basis-analytics (paginaweergaven) en geen volledige tagstrategie? Dan is de ingebouwde Analytics-instelling van Sites vaak handiger dan GTM. :::howto title="GA4 direct koppelen in Sites" 1. Open je site in de editor. 2. Klik op het tandwiel (**Instellingen**) naast de knop **Publiceren**. 3. Open het tabblad **Analyse**. 4. Plak je GA4 Measurement ID (`G-XXXXXXXXXX`) in het veld. 5. Sla op en publiceer de site opnieuw. ::: Deze methode loopt niet via een iframe, waardoor paginaweergaven betrouwbaarder worden gemeten dan via een ingesloten GTM-snippet. ## Alternatieven voor meer controle Heb je geavanceerder tag-beheer nodig, dan is een zelfgehoste website waarin GTM volledig in de pagina is geïntegreerd de betere keuze: - **Sites achter een eigen domein via een proxy** (bijvoorbeeld met Cloudflare Workers): de Sites-inhoud wordt via je eigen domein geserveerd, wat sommige cross-domain-beperkingen verzacht. - **Sites-inhoud exporteren en zelf hosten**: niet ingebouwd, maar mogelijk via tools van derden. :::tip title="Kies bewust tussen GTM en de ingebouwde instelling" Voor losse analytics is de ingebouwde Analytics-instelling het simpelst en betrouwbaarst. Kies GTM in Sites alleen als je echt meerdere tags wilt beheren, en accepteer dan de iframe-beperkingen. ::: :::faq ### Werkt Google Analytics volledig in Google Sites via GTM? Basistracking zoals paginaweergaven werkt. Geavanceerde functies zoals e-commerce, cross-domain tracking en aangepaste dimensies via de `dataLayer` zijn beperkt door de iframe-sandbox. ### Kan ik remarketingtags toevoegen via GTM in Sites? Dat kan, maar de werking is beperkt. Remarketing-cookies worden op het iframe-domein geplaatst en niet op je Sites-domein, wat de effectiviteit vermindert. ### Is er een limiet aan het aantal tags in een GTM-container voor Sites? Er is geen harde technische limiet op het aantal tags in GTM. De praktische bruikbaarheid wordt vooral begrensd door de iframe-sandbox van Sites, niet door het aantal tags. ### Kan ik GTM gebruiken voor intranetpagina's in Sites? Ja. Bedenk wel welke data je van interne gebruikers verzamelt en communiceer dit transparant in het privacybeleid van de organisatie. ### Wat is het verschil met de ingebouwde Analytics-instelling van Sites? De ingebouwde instelling koppelt je GA4 Measurement ID rechtstreeks aan de site, zonder iframe. Voor basistracking is dat eenvoudiger en betrouwbaarder. GTM voegt waarde toe wanneer je meerdere tags centraal wilt beheren. ### Waarom laadt mijn ingesloten GTM-script niet? Controleer of je het volledige script hebt geplakt met de juiste aanhalingstekens en of je `GTM-XXXXXX` hebt vervangen door je echte container-ID. Eén foutief aanhalingsteken maakt het hele script ongeldig. :::