Ga naar inhoud

7.1 Tracking-fundament

Tracking is het fundament onder alle betaalde advertenties. Zonder correcte meting weet je niet welke advertentie verkoopt, optimaliseert het algoritme op verkeerde signalen en gooi je budget weg. Sinds iOS 14.5 (App Tracking Transparency) en de strengere AVG-handhaving in de EU is alleen een browser-pixel niet meer genoeg — je hebt server-side tracking en consent mode nodig. Dit hoofdstuk zet het volledige fundament op vóór je eerste euro.

Meta Pixel — een stukje JavaScript op je webshop dat browsergedrag (PageView, ViewContent, AddToCart, Purchase) naar Meta stuurt. Werkt client-side: de browser vuurt het event af. Sinds iOS 14.5 wordt een groot deel van deze events geblokkeerd door adblockers, trackingbescherming en geweigerde toestemming — in de praktijk mist een pure pixel 20% tot 40% van de conversies.

Conversions API (CAPI) — server-side tracking. Je server (of een serverless-laag) stuurt events rechtstreeks naar Meta, langs de browser om. CAPI is robuuster tegen adblockers en iOS-beperkingen en herstelt een groot deel van de gemiste conversies. Je draait Pixel én CAPI naast elkaar en koppelt ze met deduplicatie.

Google Ads-tag (gtag) plus Enhanced Conversions — de Google-equivalent. De tag meet conversies; Enhanced Conversions stuurt gehashte e-mailadressen (onomkeerbaar versleuteld) mee zodat Google conversies kan matchen die anders verloren gaan. Verhoogt gemeten conversies typisch met 5% tot 12%.

GA4 (Google Analytics 4) — je centrale analyseplatform. Meet sessies, gebeurtenissen en de volledige funnel. Niet je optimalisatiebron voor het algoritme, maar je waarheidsbron voor gedrag en attributie.

Google Tag Manager (GTM) — een container die al je tags (Pixel, gtag, GA4, CAPI-trigger) beheert zonder dat je telkens code in je shop hoeft aan te passen. Eén keer installeren, daarna alles via een interface.

Consent Mode v2 — Google’s verplichte mechanisme (sinds maart 2024 in de EER) dat tags vertelt of de bezoeker toestemming gaf voor analytics en advertenties. Zonder geldige consent mode v2 stopt Google met remarketing en verlies je modelmatige conversies. In de EU is dit geen optie maar een AVG-verplichting.

Event matching & deduplicatie — wanneer Pixel én CAPI hetzelfde Purchase-event sturen, moet Meta begrijpen dat het één aankoop is, niet twee. Dat gebeurt via een gedeeld event_id. Zonder deduplicatie tel je conversies dubbel en lijkt je ROAS te hoog.

UTM-tagging — parameters in je advertentie-URL (utm_source, utm_medium, utm_campaign) zodat GA4 weet via welk kanaal en welke campagne een bezoeker binnenkwam.

De volgorde is belangrijk: consent eerst, dan GTM als fundament, dan de tags, dan server-side, dan verifiëren.

  1. Installeer een AVG-conforme consent-banner. Kies een Consent Management Platform (CMP) dat Google Consent Mode v2 ondersteunt en het IAB TCF-kader gebruikt (Cookiebot, CookieYes of Complianz voor WordPress/Shopify). De banner moet vóór toestemming alle marketing- en analytics-cookies blokkeren en de keuze granulair maken (accepteren, weigeren, voorkeuren). Zie ook 1.6 Juridisch & administratief.

  2. Maak een Google Tag Manager-container aan en plaats de twee GTM-snippets in je <head> en direct na de openende <body>. Op Shopify gebruik je een GTM-app of de checkout-instellingen; op WooCommerce een plugin. Vanaf nu beheer je alle tags binnen GTM.

  3. Koppel consent mode v2 aan GTM. Stel de standaardtoestand in op denied voor ad_storage, analytics_storage, ad_user_data en ad_personalization. Laat je CMP de toestand naar granted updaten zodra de bezoeker accepteert. Zet alle marketing-tags op een consent-trigger.

  4. Installeer de Meta Pixel via GTM. Voeg de basiscode toe en configureer de standaard-events: PageView, ViewContent, AddToCart, InitiateCheckout, Purchase. Geef elk event een uniek event_id mee (bijvoorbeeld het ordernummer voor Purchase).

  5. Zet de Conversions API op. Voor Shopify gebruik je de native Meta-app (Facebook & Instagram) of een gateway zoals Stape; voor WooCommerce een CAPI-plugin. Geef CAPI hetzelfde event_id mee als de Pixel zodat Meta kan dedupliceren. Voeg zoveel mogelijk klantparameters toe (gehasht e-mail, telefoon, naam) voor betere matching.

  6. Installeer de Google Ads-tag plus Enhanced Conversions via GTM. Activeer Enhanced Conversions in je Google Ads-account en geef de tag toegang tot het gehashte e-mailadres op de bedankpagina.

  7. Installeer GA4 via GTM met het GA4-configuratietag en e-commerce-events (view_item, add_to_cart, begin_checkout, purchase) inclusief de items-array en value/currency.

  8. Definieer je UTM-conventie en gebruik die consequent in elke advertentie-URL. Documenteer de conventie zodat iedereen in je team dezelfde namen hanteert.

  9. Verifieer alles met Meta Pixel Helper, Google Tag Assistant en GA4 DebugView (zie hieronder). Pas live als alle events één keer vuren, deduplicatie werkt en consent mode reageert op de banner.

Een webshop draait Meta-advertenties en verkoopt voor 10.000 euro in een week, verdeeld over 200 orders. Zonder CAPI, met alleen de browser-pixel, ziet Meta hiervan maar 140 conversies (30% verlies door iOS, adblockers en geweigerde toestemming). Het algoritme optimaliseert dus op onvolledige data.

Met CAPI erbij en deduplicatie via event_id ziet Meta 192 van de 200 orders — een matchkwaliteit van 96%. Gevolgen:

SituatieGemeten conversiesGemeten ROASGevolg voor optimalisatie
Alleen Pixel140 van 2003,5Algoritme leert traag, mist signalen
Pixel plus CAPI192 van 2004,8Algoritme leert sneller, betere targeting

De werkelijke verkoop is in beide gevallen 10.000 euro. CAPI verandert niet wat je verdient — het verandert wat Meta ziet, en betere signalen leiden tot betere optimalisatie en lagere kosten per aankoop binnen enkele weken.

Event Match Quality (EMQ) is Meta’s score (1 tot 10) voor hoe goed je events te koppelen zijn aan een persoon. Hogere EMQ betekent goedkopere conversies omdat het algoritme beter target.

De vuistregel voor deduplicatiegraad:

Deduplicatiegraad = events ontvangen via beide kanalen / totaal Purchase-events

Reken een voorbeeld: 200 Purchases, waarvan 188 zowel via Pixel als CAPI binnenkwamen met matchend event_id. Dan is de deduplicatiegraad 188 / 200 = 94%. Onder de 80% klopt je event_id-opzet niet.

MeetwaardeSlechtAcceptabelGoed
Event Match Quality (Purchase)minder dan 5,05,0 tot 7,0meer dan 7,0
Deduplicatiegraad Pixel/CAPIminder dan 80%80% tot 90%meer dan 90%
Enhanced Conversions matchratiominder dan 50%50% tot 70%meer dan 70%
Consent acceptatieratio (NL)minder dan 50%50% tot 70%meer dan 70%
ToolFunctieWanneer kiezen
Google Tag ManagerCentraal tagbeheerAltijd — fundament voor alle tags
Meta Pixel HelperBrowserextensie die Pixel-events toontBij elke Pixel-verificatie
Google Tag AssistantVerifieert gtag en GA4Bij Google-setup en debugging
GA4 DebugViewRealtime event-stream in GA4Verifiëren of e-commerce-events kloppen
StapeServer-side GTM en CAPI-gatewayAls je server-side container of robuuste CAPI wilt
Cookiebot / CookieYes / ComplianzConsent Management PlatformAVG-banner met consent mode v2
ElevarServer-side tracking voor ShopifyShopify-shops die volledige server-side dataLayer willen
  • Alleen de Pixel installeren, geen CAPI. Je mist 20% tot 40% van je conversies en het algoritme optimaliseert op halve data. Dit is anno nu de duurste tracking-fout.
  • Geen consent mode v2. Sinds maart 2024 stopt Google in de EER met remarketing en modelmatige conversies zonder geldige consent mode v2. Je verliest data én loopt AVG-risico.
  • Geen gedeeld event_id tussen Pixel en CAPI. Dan worden Purchase-events dubbel geteld, je ROAS lijkt te hoog en je neemt verkeerde budgetbeslissingen.
  • De Pixel twee keer installeren (bijvoorbeeld via thema én via app). Dan vuurt elk event dubbel en zijn al je cijfers verdubbeld.
  • UTM-parameters vergeten of inconsistent gebruiken. GA4 schrijft verkeer dan toe aan “(direct)” of “(not set)” en je verliest het overzicht over kanaalprestaties.
  • Live gaan zonder te verifiëren. Eén verkeerd geplaatste tag kan je hele meting wekenlang vervuilen voordat je het merkt.
UTM-naamgevingsconventie

Gebruik altijd kleine letters en geen spaties (gebruik streepjes). Houd je aan deze structuur:

  • utm_source = [platform] — bijvoorbeeld: meta, google, tiktok, pinterest
  • utm_medium = [type] — bijvoorbeeld: cpc (betaald), paid-social, email, organic
  • utm_campaign = [campagnenaam-datum] — bijvoorbeeld: zomer-sale-2026-06
  • utm_content = [creative-id] — bijvoorbeeld: ugc-hook-a-v3
  • utm_term = [doelgroep] — bijvoorbeeld: broad-25-45-nl

Volledige voorbeeld-URL: https://[jouwshop].nl/products/[product]?utm_source=meta&utm_medium=paid-social&utm_campaign=zomer-sale-2026-06&utm_content=ugc-hook-a-v3