GA4 als cross-channel data-hub: advertentiekosten van Meta, TikTok en Pinterest meten
Als je adverteert op Google, Meta en TikTok, maar je kosten staan in drie afzonderlijke dashboards, is het lastig om te vergelijken welk kanaal het meeste oplevert per euro. GA4 heeft de mogelijkheid om dit samen te brengen, maar de uitvoering gaat op een aantal punten regelmatig mis.
Hier leggen we uit hoe je GA4 inricht als gecentraliseerde databron voor alle betaalde kanalen, welke connectoren er zijn, en waar de matching het meest fout gaat.
Gebruik automatische connectors, niet handmatige import
GA4 heeft native automatische connectors voor Meta, Pinterest en TikTok. Je vindt ze via Instellingen > Data-import > Data source. Na het instellen haalt de connector dagelijks kostendata op uit het externe platform en koppelt die aan de sessiedata in GA4.
Het alternatief, handmatige import via een CSV-bestand, werkt technisch, maar heeft als nadeel dat het een menselijk proces is. Als de upload een keer wordt overgeslagen, ontstaat er een gat in de data dat niet retroactief te herstellen is. Een webshop die handmatig importeerde zag na een vakantieperiode dat drie weken aan Meta-kostendata ontbrak, precies de weken met het hoogste advertentiebudget. De automatische connector loopt continu en heeft geen periodiek onderhoud nodig.
Gebruik automatische connectors, niet handmatige import
GA4 heeft native automatische connectors voor Meta, Pinterest en TikTok. Je vindt ze via Instellingen > Data-import > Data source. Na het instellen haalt de connector dagelijks kostendata op uit het externe platform en koppelt die aan de sessiedata in GA4.
Het alternatief, handmatige import via een CSV-bestand, werkt technisch, maar heeft als nadeel dat het een menselijk proces is. Als de upload een keer wordt overgeslagen, ontstaat er een gat in de data dat niet retroactief te herstellen is. Een webshop die handmatig importeerde zag na een vakantieperiode dat drie weken aan Meta-kostendata ontbrak, precies de weken met het hoogste advertentiebudget. De automatische connector loopt continu en heeft geen periodiek onderhoud nodig.
UTM-matching: de meest voorkomende oorzaak van gebrekkige data
GA4 koppelt kostendata uit een externe connector aan sessies op basis van UTM-parameterwaarden. De campagnenaam in het advertentieplatform moet exact overeenkomen met de waarde van utm_campaign in de URL.
Een voorbeeld van hoe dit misgaat: een webshop noemde zijn campagne in Meta ‘Zomercollectie_2025’ maar had in de UTM-tag utm_campaign=zomercollectie2025 staan, zonder underscore en met kleine letters. GA4 kon die twee niet koppelen.
De Meta-kosten werden geladen maar niet gematcht aan de juiste sessies, waardoor de ROAS-berekening voor Meta onjuist was. Op basis van die onjuiste data werd het Meta-budget verhoogd.
De oplossing: stel één naamgevingsstandaard op voor campagnes en UTM-parameters en zorg dat iedereen die campagnes aanmaakt die standaard volgt. Dezelfde spelling, hetzelfde hoofdlettergebruik, dezelfde scheidingstekens, in het advertentieplatform en in de UTM-tag.
GA4 koppelt kostendata uit een externe connector aan sessies op basis van UTM-parameterwaarden. De campagnenaam in het advertentieplatform moet exact overeenkomen met de waarde van utm_campaign in de URL.
Een voorbeeld van hoe dit misgaat: een webshop noemde zijn campagne in Meta ‘Zomercollectie_2025’ maar had in de UTM-tag utm_campaign=zomercollectie2025 staan, zonder underscore en met kleine letters. GA4 kon die twee niet koppelen.
De Meta-kosten werden geladen maar niet gematcht aan de juiste sessies, waardoor de ROAS-berekening voor Meta onjuist was. Op basis van die onjuiste data werd het Meta-budget verhoogd.
De oplossing: stel één naamgevingsstandaard op voor campagnes en UTM-parameters en zorg dat iedereen die campagnes aanmaakt die standaard volgt. Dezelfde spelling, hetzelfde hoofdlettergebruik, dezelfde scheidingstekens, in het advertentieplatform en in de UTM-tag.
UTM-matching: de meest voorkomende oorzaak van gebrekkige data
GA4 koppelt kostendata uit een externe connector aan sessies op basis van UTM-parameterwaarden. De campagnenaam in het advertentieplatform moet exact overeenkomen met de waarde van utm_campaign in de URL.
Een voorbeeld van hoe dit misgaat: een webshop noemde zijn campagne in Meta ‘Zomercollectie_2025’ maar had in de UTM-tag utm_campaign=zomercollectie2025 staan, zonder underscore en met kleine letters. GA4 kon die twee niet koppelen. De Meta-kosten werden geladen maar niet gematcht aan de juiste sessies, waardoor de ROAS-berekening voor Meta onjuist was. Op basis van die onjuiste data werd het Meta-budget verhoogd.
De oplossing: stel één naamgevingsstandaard op voor campagnes en UTM-parameters en zorg dat iedereen die campagnes aanmaakt die standaard volgt. Dezelfde spelling, hetzelfde hoofdlettergebruik, dezelfde scheidingstekens, in het advertentieplatform en in de UTM-tag.
Valuta: een minder zichtbaar maar ingrijpend probleem
De valuta in de geïmporteerde kostendata moet overeenkomen met de valuta die je GA4-property gebruikt. Als Meta kosten rapporteert in USD en je GA4-property is ingesteld op EUR, zijn alle kostenberekeningen en ROAS-waarden in GA4 structureel onjuist.
Controleer dit direct na het instellen van een connector: ga naar de import-detailpagina en kijk hoeveel rijen succesvol zijn geladen en hoeveel rijen succesvol zijn gematcht aan GA4-sessiedata. Een hoog laadpercentage met een laag matchpercentage wijst op een UTM-mismatch of een valutaprobleem. Een matchpercentage boven de 95 procent is gezond. Onder de 80 procent is troubleshooten nodig.
Dubbele kosten door overlappende imports
Accounts die zijn gemigreerd van Universal Analytics naar GA4 hebben soms nog een handmatige kostenimport voor Google Ads staan naast de automatische Google Ads-koppeling die standaard actief is. Dat leidt tot dubbel getelde Google Ads-kosten.
Controleer in Instellingen > Data-import of je voor een kanaal zowel een automatische connector als een handmatige import hebt draaien. Zo ja, verwijder de handmatige import nadat je hebt geverifieerd dat de automatische connector correct werkt.
Consistente campagnenaamgeving als organisatorisch vereiste
De technische setup is alleen waardevol als de naamgevingsconventie wordt nageleefd door iedereen die campagnes aanmaakt. Één persoon die een andere schrijfwijze gebruikt, veroorzaakt een matchgat in GA4. Dat vraagt om een gedocumenteerde standaard die geldt voor alle platformen, alle teamleden en alle externe partijen die aan het account werken.
Een praktische aanpak is een campagnenamegenerator: een eenvoudige spreadsheet of tool waarin je de variabelen invoert (platform, doelstelling, doelgroep, periode) en de standaard campagnenaam en bijbehorende UTM-parameters automatisch worden gegenereerd. Dat voorkomt handmatige fouten en maakt de naamgeving consistent over tijd.
Dubbele kosten door overlappende imports
Accounts die zijn gemigreerd van Universal Analytics naar GA4 hebben soms nog een handmatige kostenimport voor Google Ads staan naast de automatische Google Ads-koppeling die standaard actief is. Dat leidt tot dubbel getelde Google Ads-kosten.
Controleer in Instellingen > Data-import of je voor een kanaal zowel een automatische connector als een handmatige import hebt draaien. Zo ja, verwijder de handmatige import nadat je hebt geverifieerd dat de automatische connector correct werkt.
Wanneer de voorspellingen van GA4 actief worden
GA4 heeft ingebouwde voorspellende modellen: verwachte omzet per gebruikerssegment, churnkans en voorspelde conversiewaarde. Die features worden actief zodra GA4 twaalf maanden aan gecombineerde campagne- en sessiedata heeft, de trainingsperiode die het model nodig heeft.
Hoe eerder je de cross-channel kostenimport correct inricht, hoe eerder die twaalf maanden vollopen. Een GA4-omgeving die nu goed wordt ingericht, kan over een jaar campagneprestaties voorspellen op segmentniveau. Dat is functionaliteit die momenteel door veel webshops onbenut blijft.