Measurebase instellen: de complete gids
Server-side tagging opzetten wordt vaak gezien als iets heel ingewikkelds. Dat valt gelukkig best mee. En met Measurebase proberen we de drempel nog lager te maken. In deze handleiding neem ik je stap-voor-stap mee in het installatieproces. Zodat je precies weet wat je wel en niet moet doen om jouw tracking goed op te zetten. Aan het eind is je server-side tracking ingericht op je eigen domein, van het eerste DNS-record tot de eerste audit; elke stap om server-side tagging in te stellen staat hieronder.
📋 Voordat je begint
Zorg dat je dit bij de hand hebt, dan kost de hele gids je zo'n vijftien minuten echt werk:
- Toegang tot je DNS-provider
- Een GTM Web container
- Een GTM Server container
01 · Je account aanmaken
Het aanmaken van een account op Measurebase is heel simpel: je kiest vooraf geen plan en hoeft nog niets in te stellen. Alles hieronder is optioneel en kan ook later nog. Meld je aan met Google of maak een account aan met jouw emailadres en verifieer het met één klik op de knop.
Maak je eerste account (werkomgeving) aan
Na verificatie kom je op het Accounts-scherm. Klik op "Add account" en geef het een naam. Elk nieuw account start automatisch op het gratis Free-plan, dus je hoeft hier nog niets te kiezen.
Werk je voor meerdere klanten?
Een Agency-account is een apart accounttype waarmee je meerdere Client-accounts vanuit één dashboard beheert (Partner → Clients). Je nodigt een klant uit op e-mailadres of op het bestaande GTM Container ID, maar de klant moet de koppeling eerst goedkeuren voordat jij ergens bij kunt. En een bureau kan nooit bij de facturatie van het abonnement van een klant.
Account aangemaakt? Dan staat je werkomgeving klaar - door naar het domein dat straks al het werk gaat doen.
02 · Je eerste domein aanmaken
Voeg het domein toe
Ga naar Domains → "+ New domain" en vul in:
- Naam: een herkenbaar label, bijvoorbeeld "Hoofdwebsite".
- Domain: je hoofddomein, bijvoorbeeld yoursite.com. Een www. ervoor halen we er zelf af, en Measurebase controleert meteen of het domein geldig is, een echte topleveldomeinextensie heeft en een bestaande DNS-zone.
- Tagging subdomain: een prefix, bijvoorbeeld mbase (dat geeft mbase.yoursite.com). Kies gerust iets anders als je dat wilt. Tip: vermijd voor de zekerheid sst of sgtm of andere termen die makkelijk te herkennen zijn door adblockers.
- Servercontainer: koppel Google Tag Manager of plak de configuratie, zie hieronder.
- Region: staat vast op Amsterdam, Nederland (EU).
Koppel Google Tag Manager, of plak de configuratie
Measurebase moet weten welke servercontainer het host. Jij kiest hoe het daarachter komt:
- Koppel Google Tag Manager: log direct in het venster in met Google, kies het GTM-account en je web- en servercontainer, en Measurebase leest de servercontainerconfiguratie zelf uit. Google vraagt om leesrechten op je containers plus bewerkrechten die beperkt zijn tot de eigen workspace van Measurebase. Met de koppeling controleert de tracking-audit ook beide containers (zie sectie 7).
- Plak de configuratie: plak hier de server container config string die je krijgt bij het aanmaken van een GTM Server container. In GTM: Admin → Container Settings → Manually provision tagging server.
Voor nu de configuratie geplakt? Je kunt Google Tag Manager later alsnog koppelen op de instellingenpagina van het domein, en de koppeling op elk moment weer verbreken.
Tracking setup en eerste audit
Met Google Tag Manager gekoppeld vraagt het venster nog twee dingen. Tracking setup: wat dit domein moet meten, en welke e-commerce datalayer je shop pusht (of geen, voor een site zonder shop). Eerste audit: optioneel. Hij leest de live servercontainer (en de webcontainer, als je die koos), draait een site-crawl en controleert routing, toestemming, dubbele tags en de aansluiting op je meetopzet. Plak je in plaats daarvan de config, dan draait de eerste tracking audit vannacht automatisch, zodra het DNS-record staat.
Hoeveel domeinen je kunt toevoegen, hangt af van je plan: 1 op Free en Solo, 3 op Growth, 5 op Scale, 10 op Business en maatwerk op Enterprise.
Domein toegevoegd? Dan wacht er nu nog precies één DNS-record op je.
03 · Je DNS record toevoegen
Open de Settings-pagina van het nieuwe domein. Daar staat precies één A-record dat je moet toevoegen.
Kopieer de getoonde Name en Value, voeg het record toe bij je DNS-provider en klik op Verify DNS now.
Zodra de DNS is doorgevoerd (meestal binnen een paar minuten) wordt er automatisch een SSL-certificaat uitgegeven en springt de status van het domein van Pending naar Active.
Controleer het zelf ook
Wil je het los van het dashboard controleren, open dan https://mbase.yoursite.com (je eigen tagging-subdomein) in een browsertabblad; er hoeft daarvoor nog niets op je site te staan. Is de DNS doorgevoerd en het certificaat uitgegeven, dan laadt de pagina zonder foutmelding of certificaatwaarschuwing. Zie je een van beide wel, wacht dan een paar minuten en probeer het opnieuw.
Meer dan één setup draaien
Heb je op hetzelfde hoofddomein een tweede GTM-property nodig, of een aparte setup voor een zustermerk? Voeg hetzelfde hoofddomein dan nog een keer toe met een ander tagging-subdomein. Elke setup staat volledig los en telt mee voor het domeinmaximum van je plan.
DNS staat? Dan is het domein Active en komt het leukste deel: je eerste hit zien binnenkomen.
04 · Het trackingscript installeren - en je oude verwijderen
Genereer je script
Open het domein en klik op Generate script. Vul je webcontainer-ID in bij het veld GTM client container ID (GTM-XXXXXXX). Je krijgt het Enhanced script: een gemaskeerd loaderpad met een ?mb= parameter die adblockers en privacyfilters in browsers niet herkennen.
- Enhanced Ad Blocker Protection staat standaard aan voor nieuwe domeinen, en het Enhanced-script draagt het zelf mee, dus ook elke vervolgrequest wordt gemaskeerd. Uitzetten vraagt eerst om bevestiging.
- Site op meerdere subdomeinen? Houd "All sites" aan voor één snippet overal. Genereer onder "For which site" een aparte snippet voor een subdomein dat zijn eigen webcontainer laadt of een eigen Same-Origin Tracking-adres heeft.
Installeer het
Je krijgt net als bij het reguliere GTM script twee snippets.
- Head script: plak het head-snippet zo hoog mogelijk in
<head>. - Body script: plak het body-snippet direct na de openende
<body>tag; precies op de plek die Google in zijn eigen GTM-instructies ook voorschrijft.
⚠️ Verwijder je oude snippet
Draaide je hiervoor standaard Google Tag Manager, dan staat er nog een oud paar snippets dat gtm.js rechtstreeks van googletagmanager.com laadt: een <script> blok in <head> en een bijbehorende <noscript><iframe> in <body>. Haal ze allebei helemaal weg. Als het oude en het nieuwe snippet naast elkaar draaien, vuurt elke tag dubbel en verdubbelen al je cijfers ongemerkt; dit is verreweg het meest voorkomende dataprobleem dat je jezelf kunt bezorgen (zie Problemen oplossen).
De installatie aan een developer overlaten
Installeert iemand anders het script? Gebruik dan Send instruction email, direct in het Generate script-paneel. Je vult een e-mailadres in en diegene ontvangt beide snippets plus de installatie- en teststappen, zonder dat jij iets hoeft te kopiëren of plakken.
Laat de Google Analytics-tag naar je domein wijzen
In je webcontainer heeft de Google Analytics-tag (of een verouderde Google-tag) één instelling nodig: server_container_url, ingesteld op je tagging-subdomein. De webcontainer-gids laat zien waar, en de tracking-audit controleert het elke nacht.
Snippets geplakt en het oude paar opgeruimd? Dan loopt je tracking vanaf nu over je eigen domein.
05 · Power-ups instellen - en bepalen welke je gebruikt
Je vindt elke power-up op de Power-ups-pagina van een domein. Ze zijn allemaal optioneel en terug te draaien, en voor gewone basistracking heb je er geen enkele nodig.
| Power-up | Wat het doet | Instelling |
|---|---|---|
| Data Enrichment | Voegt geo-signalen van de bezoeker (land/regio/stad/postcode) en apparaatsignalen (OS/browser/engine/bot/mobiel) toe als requestheaders, uit te lezen met de Request Header-variabele van GTM | Hoofdschakelaar + 11 losse headerschakelaars, standaard allemaal aan |
| Cookie Keeper | Vernieuwt herkende first-party marketingcookies bij elke request met hun volledige levensduur, voorbij de limiet van 7 dagen die Safari ITP hanteert voor cookies die via JavaScript zijn gezet (op Safari samen met Same-Origin Tracking) | Hoofdschakelaar + schakelaars per cookie, gegroepeerd per leverancier, standaard allemaal aan |
| Click ID Restorer | Haalt click-IDs van advertentieplatformen terug die Safari of Brave uit de landings-URL strippen; voor de overige platformen loopt het herstel via cookies | Back-upparameternamen voor Google/Microsoft (vrije tekst) + 5 losse schakelaars voor Meta, TikTok, Pinterest, ChatGPT en LinkedIn |
| IP Anonymization | Maskeert het IP-adres van elke bezoeker voordat het je servercontainer bereikt (bij IPv4 gaat het laatste octet op nul, bij IPv6 blijft alleen de /48 over) | Eén schakelaar |
| IP Filter | Houdt specifieke IP-adressen of reeksen (je eigen kantoor, je bureau, QA-verkeer) volledig buiten de tracking | Eén schakelaar + een vrije lijst met IP-adressen of CIDR-reeksen |
| Enhanced Ad Blocker Protection | Herschrijft de vervolgrequests naar hetzelfde gemaskeerde formaat als de Enhanced-loader, zodat blokkeerlijsten niet kunnen aanslaan op vaste paden zoals het GA4-pad /g/collect | Standaard aan voor nieuwe domeinen. Zet het aan en uit op de kaart of op de eigen pagina; het Enhanced-script draagt de bescherming mee, dus er is niets extra te installeren. Die pagina laat ook zien of er gemaskeerde requests binnenkomen |
| Same-Origin Tracking | Serveert je tagging vanaf een pad op je eigen website (zoals example.com/mb), zodat Safari cookies hun volledige levensduur laat houden en er geen aparte trackinghostnaam is om te blokkeren | Eén doorstuurregel bij je hosting (Vercel, Next.js, Cloudflare, Netlify, nginx, Apache, of de WordPress- en Shopware-plugins), daarna een live check op de eigen pagina |
| Auto Grant Consent | Zet het consentsignaal van elke hit geforceerd op volledig granted, zodat je kunt testen of tags vuren zonder telkens door je eigen cookiebanner te klikken | Eén schakelaar; alleen voor testen, zie hieronder |
| Winsttracking (POAS) | Voegt de winst van elke aankoop toe aan het event, zodat Google Ads en Meta op winst kunnen bieden in plaats van op omzet | Kostprijzen uit een feed, een bestand of je shop; per account op aanvraag aangezet |
🚫 Auto Grant Consent - alleen om te testen
Laat je dit aanstaan, dan zie je op de pagina zelf een steeds nadrukkelijkere waarschuwing, en na 24 uur opent de monitoring van Measurebase een echte melding op je account. Zet het dus uit zodra je klaar bent met testen; in productie hoort dit nooit aan te staan.
Power-ups naar smaak ingesteld (of gewoon overgeslagen, dat mag ook)? Dan is het tijd voor het bewijs.
06 · Het bewijs: je eerste hit
Tijd om te kijken of al dat plakwerk iets oplevert. Je installatie is pas echt klaar als je deze vijf punten kunt afvinken:
- De status van het domein is Active, niet Pending. Blijft de status op Pending staan, dan is de DNS meestal nog niet doorgevoerd; zie Problemen oplossen.
- Vuur een echte hit af - open je site in een gewoon (of incognito) tabblad en klik wat rond, of stuur een testevent vanuit de previewmodus van GTM.
- Controleer de requestlogs - er hoort al snel een nieuwe rij te verschijnen met een groene 200-status. Zie je nog niets? Klik dan op Refresh op de logpagina: die haalt de logs direct op in plaats van te wachten op de volgende geplande ronde, zodat je testhit meteen zichtbaar is.
- Bevestig het in GTM zelf - in de preview- en debugmodus van je servercontainer moet je de request zien binnenkomen en je tags zien vuren.
- Gebruik je Enhanced Ad Blocker Protection? Open dan de pagina van die power-up: de status hoort Working te zijn, met het tijdstip van de laatste gemaskeerde request. Wacht hij nog op de eerste gemaskeerde request, dan laadt je site het Enhanced-script nog niet.
Alle vijf afgevinkt? Gefeliciteerd: je server-side tracking staat. Wat nu nog komt is zorgen dat het zo blijft.
07 · De tracking-audit: zorgen dat het klopt
Je eerste hit bewijst dat de setup vandaag werkt. De tracking-audit blijft controleren of dat zo blijft. Hij draait elke nacht voor elk actief domein, zonder dat je iets hoeft aan te zetten: 40+ checks op routing, de gezondheid van je tags, deduplicatie, Consent Mode, de afstemming tussen je web- en servercontainer, en de installatie zelf (loader, DNS en HTTPS).
- Met Google Tag Manager gekoppeld bekijkt de audit ook je live web- en servercontainer, en kan Measurebase fixes voorstellen en die toepassen in een aparte workspace met de naam "Measurebase" in je container. Publiceren doet het nooit: je bekijkt en publiceert zelf in GTM.
- De sitecrawl is onderdeel van elke audit: een echte browser bezoekt je pagina's en toont elk script en elke pixel die buiten GTM om laadt, zoals hardcoded pixels, Shopify-app-pixels en consentbanners. Meetverzoeken worden in die browser geblokkeerd, dus er komt niets in je analytics of je rapportages terecht.
- Fouten openen een melding, één per domein, en waarschuwingen ook, de eerste keer dat ze verschijnen, via dezelfde kanalen als de meldingen in de volgende sectie. Wil je direct na een wijziging een vers resultaat? Plan dan vanuit het dashboard een handmatige audit in, tot vijf per domein per dag.
Elke check, en hoe de voorgestelde fixes werken, staat in de tracking-audit.
Eerste audit schoon, of de bevindingen weggewerkt? Bepaal dan hoe je over problemen wilt horen.
08 · Notificaties en meldingen beheren
Stel je drempel voor geen data in
Per domein in te stellen, op de Settings-pagina onder Monitoring: "Alert me if no data for", van 1 tot 168 uur (een hele week), standaard 24 uur. Zet de drempel hoger voor een rustige B2B-site waar een stil weekend normaal is, en lager als je op een drukke site binnen een uur wilt weten dat er iets mis is. Nieuwe domeinen krijgen eerst een korte gewenningsperiode voordat deze controle aangaat.
Slack koppelen
Maximaal 3 kanalen of workspaces per account, te koppelen via Settings → "Add to Slack". Dat is een gewone OAuth-flow, dus geen gedoe met webhooks plakken. Elk gekoppeld kanaal ontvangt elke melding; per kanaal filteren op type of domein kan niet. Een domeinmelding noemt het domein in het bericht, een accountbrede melding (zoals het quotum) noemt het account.
Meldingen ingesteld? Dan hoef je hier zelf niet meer dagelijks naar om te kijken - dat doet de monitoring voortaan voor je.
09 · Infrastructuurcheck: CDN, caching en CSP
Voor de meeste setups zijn secties 2 en 3 genoeg. Een paar infrastructuurlagen kunnen wel in de weg zitten als je ze al gebruikt; loop dit de eerste keer dus even na (vijf minuten werk), zeker als je site achter een CDN of een strikte CSP staat.
Een CDN vóór je eigen site
Loopt je hele domein via Cloudflare, Fastly of iets vergelijkbaars? Zorg dan dat het record van je tagging-subdomein niet wordt onderschept, gecachet of herschreven, tenzij je dat bewust zo hebt ingesteld. Het veiligst is om het tagging-subdomein helemaal buiten de proxy te houden (een gewoon "DNS only"-record), zodat het verkeer rechtstreeks bij Measurebase aankomt. Moet het toch door de proxy, schakel de caching dan uit voor precies die hostnaam.
Caching
Het loaderscript zelf mag best even gecachet worden, maar de collect-requests (elke echte trackinghit) moeten altijd live bij Measurebase aankomen. Let er dus op dat een brede regel als "cache alles onder dit pad" in je CDN of reverse proxy niet ook je taggingverkeer meepakt.
Content-Security-Policy
Stuurt je site een CSP-header, dan moeten de directives script-src en connect-src (en img-src, voor als een browser ooit terugvalt op een pixel) je tagging-subdomein toestaan. Omdat het first-party is (hetzelfde hoofddomein als je site) dekt een wildcard als *.yoursite.com het in de meeste policy's al af. Maar een CSP die exacte hostnamen eist, blokkeert de loader geruisloos totdat je het nieuwe subdomein expliciet toevoegt.
🛟 Het vangnet
Glipt een van deze dingen er na livegang toch ongemerkt doorheen, dan is dat precies waar de monitoring voor bestaat.
En dat was 'm: zo'n vijftien minuten werk, en je tracking draait voortaan op eigen grond.
10 · Veelvoorkomende problemen oplossen
| Symptoom | Waarschijnlijke oorzaak en oplossing |
|---|---|
| Je cijfers lijken verdubbeld | Je oude GTM-snippet draait nog naast het nieuwe. Ga terug naar sectie 4 en haal het oude helemaal weg. |
| Attributie blijft resetten op Safari / iOS | Check of Cookie Keeper echt aanstaat voor het specifieke cookie waar het je om gaat: de schakelaars werken per cookie, er is geen globale knop. Op Safari blijven cookies van je tagging-subdomein bovendien maar 7 dagen geldig, tot je je tagging vanaf je eigen domein serveert met Same-Origin Tracking. |
| Een deel van je verkeer lijkt te verdwijnen, vooral in Firefox/Safari/Brave | Waarschijnlijk vangt een adblocker of privacyfilter je requests af. Zorg dat je site het Enhanced-script laadt en dat Enhanced Ad Blocker Protection aan staat: de pagina van die power-up laat zien of er gemaskeerde requests binnenkomen. |
| De requestlog staat vol met 400's die alarmerend ogen | Kijk naar het Status-label, niet alleen naar de responscode. Een Pending-label op een GA4/gtag-request staat gemarkeerd als "NO DATA LOST" en is een normale, onschuldige retry. Alleen bij rijen met Error is er echt iets misgegaan. |
| Een domein blijft op Pending staan | De DNS is nog niet doorgevoerd, of het record komt niet precies overeen met wat er op de Settings-pagina van het domein staat. Controleer Host en Value nog eens, wacht een paar minuten en klik opnieuw op Verify DNS. |
| Een onbekend domein duikt als Referer op in je logs | De controle op vreemd verkeer doet gewoon zijn werk: iemand heeft je trackingsnippet ergens anders neergezet. Zoek uit waar en los het bij de bron op. |
| De tracking stopt en een banner meldt dat hij is gepauzeerd | Je zit voor deze cyclus aan het requestquotum van je plan. Kijk bij Billing: upgraden, wachten op de volgende cyclus, of auto-upgrade aanzetten zodat dit niet nog een keer ongemerkt gebeurt. |
| Auto Grant Consent bleef langer aanstaan dan de bedoeling was | Zet het meteen uit via Power-ups. Na 24 uur kun je de alert verwachten die Measurebase er al over opende (geen reden tot zorg). |