HubSpot-formulierinzendingen bijhouden in Google Analytics
Bijdrage van
SaaS Hackers
HubSpot is tegenwoordig een van de meest gebruikte marketingtools in B2B-bedrijven, en leadformulieren zijn een van de meest gebruikte functies. Leadformulieren staan meestal op websites bij CTA's zoals “Vraag een demo aan” of “Download een exemplaar”. De gebruiker moet dan wat gegevens invullen en het formulier verzenden.
Deze inzendingen volg je eenvoudig in HubSpot, maar hoe krijg je deze data ook in Google Analytics? Het is belangrijk om je conversietracking in GA in te richten, zodat je de prestaties van je website kunt bewaken en dieper kunt inzoomen dan HubSpot toelaat.
In dit artikel laten we je een snelle manier zien om elke HubSpot-formulierinzending te tracken met GA en Google Tag Manager, en om je eigen custom events voor afzonderlijke formulieren te maken.
Vereisten
Om dit te laten werken moet Google Tag Manager op je website geïnstalleerd zijn. Dat is vrij eenvoudig, je leest er meer over in de tutorial van Google. Google Tag Manager is een erg handige tool voor digital marketing analytics en ik raad je aan om het te gebruiken als je dat nog niet doet. Je beheert er al je eigen websitescripts mee zonder ze allemaal in de webpagina zelf te plaatsen: je installeert alleen Tag Manager en daarna alle andere scripts via Tag Manager.
Zodra Tag Manager is geïnstalleerd, kun je verder met de onderstaande stappen om tracking van HubSpot-formulierinzendingen in te richten in Google Analytics 4.
De stappen
Je hoeft maar een paar stappen te doorlopen. Het ingewikkeldste deel is de Javascript, maar geen zorgen: die code kun je gewoon kopiëren en plakken.
- Eerst maken we met Javascript een event listener
- Maak een custom event-trigger in Tag Manager
- Maak een GA4-eventtag met die trigger
- Bekijk een voorbeeld van de nieuwe tag in GTM en test hem
- Bekijk het event in GA en markeer het als conversie-event
Stap 1: een event listener maken met Javascript
Alle acties of events op een webpagina worden bijgehouden in de DOM (Document Object Model). Met wat heel eenvoudige Javascript kunnen we dus een zogenoemde event listener maken die naar een specifiek event 'luistert' en iets doet wanneer dat event plaatsvindt. Zo gaan we onze HubSpot-formulierinzendingen en conversieacties tracken en vastleggen.
Elke keer dat een HubSpot-formulier wordt verzonden, ontstaat er dus een event in de DOM. De details van deze events vind je in de Form API-documentatie van HubSpot. HubSpot maakt bij elke geslaagde inzending een specifiek event aan, genaamd onFormSubmitted. Dat is het event waarop we willen luisteren. Je hoeft je verder niet druk te maken over de details.
Hoe doen we dat? De eerste stap is Google Tag Manager openen en een nieuwe Custom HTML-tag maken. Hiermee voegen we de Javascript-listener toe. Onder de screenshot staat de code die je kunt kopiëren en hier in het HTML-gedeelte kunt plakken.

Dit is het meest complexe deel van het proces en als je geen ervaring hebt met Javascript, zegt het je misschien weinig of niets. Maar geen zorgen, met uitleg is het vrij makkelijk te begrijpen... hopelijk.
Negeer gerust een paar onderdelen van deze code, want ze zijn niet te begrijpen zonder te weten hoe Javascript werkt. In essentie voegt dit script een EventListener toe aan het venster dat je open hebt staan. Zodra het een event tegenkomt waarvan het datatype voldoet aan de genoemde vereisten, voegt het een nieuw event toe aan de zogenoemde data layer.
Een data layer is een Javascript-object (iets virtueels). Het geeft informatie van je website door aan Google Tag Manager, dus als dit event plaatsvindt, wordt de informatie doorgegeven aan de data layer.
Dit is code die je moet kopiëren en plakken. Dit betekent het:
Als je een event wilt maken dat ALLE HubSpot-formulierinzendingen trackt, kun je de voorwaarde uit de JS verwijderen die zegt dat event.data.id === “id”. Het ID dat je hier invult is het ID van het formulier, dat je uit HubSpot kunt halen. Als je dit onderdeel uit het script haalt, wordt het event bij elke formulierinzending getriggerd.
Een specifiek event voor een specifiek formulier afvuren is een betere werkwijze dan een globaal formulierevent. Zo houd je meer controle over de events en de naamgeving.
Het eindresultaat van deze code, zodra je hem publiceert in Tag Manager, is dat er een nieuw event wordt aangemaakt met de naam "form-submission-event-name" (je kunt het noemen zoals je wilt). Je kunt de naam van dit event nu gebruiken om iets anders te triggeren. We gaan dus een trigger instellen met deze eventnaam.
Stap 2: een custom event-trigger maken
Je hebt nu een event listener ingesteld en een nieuw event gemaakt. De volgende stap is een trigger instellen op basis van het event dat nu naar de Datalayer wordt gestuurd. Dat is eenvoudig: je maakt een nieuw custom event en voert de naam in van het event dat je in de JavaScript hebt gemaakt.

Voor de trigger moet je exact dezelfde eventnaam gebruiken als in de vorige stap in de Javascript-code. Zo wordt dat event een trigger waarmee we andere tags in Google Tag Manager kunnen afvuren. Het kan ook op een andere manier, maar ik vind dit de nettere aanpak.

Deze trigger gebruiken we straks als verwijzing voor ons GA4-event. Dat betekent dat de trigger elke keer dat dit event plaatsvindt het Google Analytics-event afvuurt.
Stap 3: een GA4-tag maken die naar het event verwijst
Deze stap is heel eenvoudig. Maak in Google Tag Manager een nieuwe GA4-eventtag, zoals hieronder te zien is. Hier moet je een trigger kiezen: dat is de trigger die we in stap 2 hebben gemaakt. Geef de tag ten slotte een naam. De onze heet bijvoorbeeld ‘Request a Demo’.

Stap 4: een voorbeeld van de nieuwe tag bekijken en testen
Bekijk vervolgens een voorbeeld van deze nieuwe tag en test hem op je dummyformulier of echte formulier, afhankelijk van hoe je het hebt ingericht. Zo controleer je of de tag correct afgaat en werkt zoals bedoeld. Als dat niet zo is, komt het meestal doordat de eventnaam niet overal hetzelfde is.
Stap 5: het event bekijken in Google Analytics en markeren als conversie
Zodra je hebt getest dat de tag en het event correct afgaan in je Google Tag Manager-container, kun je naar Google Analytics gaan om te zien of het event daar verschijnt. Dit doe je het best in de realtimeweergave.

Zie je dat het event in Google Analytics wordt vastgelegd, ga dan naar het beheergedeelte en zet het aan als conversie als je het zo wilt tracken. En dat was het, je bent klaar.
De meeste websites hebben maar één belangrijke conversieactie, maar misschien wil je ook conversies tracken voor gedownloade content of een andere aanmelding of registratie. Als je meer events gaat tracken, denk dan na over de naamgeving van je events en probeer die consistent te houden, zodat je ze later makkelijk allemaal kunt beoordelen.
Waarom conversies instellen in Google Analytics?
Sommige mensen stellen geen conversietracking in Google Analytics in, omdat ze al hun formulierinzendingen kunnen tracken en vastleggen in de tool waarin ze het formulier hebben gemaakt, zoals HubSpot of Salesforce.
Het probleem van alleen formulierinzendingen in je CRM tracken is dat je historische data verliest als je overstapt. Ook kun je de conversieratio's en andere metrics van je website lastiger beoordelen als je conversies niet in Google Analytics vastlegt.
Je kunt HubSpot direct koppelen aan je Google Ads-account en conversies van daaruit importeren, maar je kunt ook conversies importeren uit Google Analytics. Dat geeft je meer flexibiliteit en maakt je toekomstbestendig. Naar mijn mening is het best practice.
Events maken in HubSpot voor Google Ads
Naast het instellen van events in Google Analytics kun je in HubSpot custom events maken op basis van data in je CRM om je conversies in Google Ads te optimaliseren, mits je je Google Ads- en HubSpot-accounts koppelt.
In het voorbeeld hieronder zie je hoe ik 3 events met verschillende triggers heb gemaakt. Die worden teruggesynchroniseerd naar Google Ads, waar je ze kunt selecteren om je advertenties te optimaliseren voor deze conversieacties. Een uitgebreidere gids hierover vind je in de HubSpot-kennisbank.

Enhanced Conversions in Google Ads gebruiken met HubSpot
Enhanced conversions is een functie in Google Ads die de nauwkeurigheid van je conversiemeting kan verbeteren en krachtigere biedstrategieën mogelijk maakt. Het vult je bestaande conversietags aan door gehashte first-party conversiedata van je website op een privacyveilige manier naar Google te sturen.
Wanneer een klant op je website een conversie voltooit, zoals een demoaanvraag, ontvang je meestal first-party klantgegevens zoals een e-mailadres, een naam en wat andere bedrijfsinformatie. Deze gegevens kunnen worden vastgelegd in je conversietracking-tags, worden gehasht, in gehashte vorm naar Google worden gestuurd en vervolgens worden gebruikt om je conversiemeting te verbeteren.
Afhankelijk van welk type enhanced conversions je gebruikt, worden de gehashte gegevens op verschillende manieren ingezet om je meting te verbeteren. Voor B2B-marketeers is dit handig, omdat het systeem kan optimaliseren op basis van deze gegevens als iemand op het werk is ingelogd met een zakelijk Google-account.
De gegevens worden vervolgens gebruikt om je klanten te koppelen aan Google-accounts waarmee ze waren ingelogd toen ze met een van je advertenties interacteerden.
Bijdrage van
SaaS Hackers


