Parameters doorsturen naar Calendly voor Offline Conversie Tracking of UTM Tagging
Parameters doorsturen naar Calendly voor Offline Conversie Tracking of UTM Tagging
Door Christian Broekmeulen op 26 juni 2024
Wil je weten welke Google Ads-klikken resulteren in afspraken of wil je meer inzicht in de herkomst van je afspraken via UTM-tagging? In deze blogpost leer je hoe je aangepaste parameters kunt doorsturen naar Calendly om zo de effectiviteit van je marketingcampagnes beter bij te houden.
Google Click ID (gclid) meesturen naar Calendly
We hebben een script geschreven om de gclid toe te voegen aan de Calendly-URL’s zodat deze later beschikbaar is naast een afspraak in de Calendly backend. We maken gebruik van de Salesforce UUID-kolom binnen Calendly om de aangepaste parameters (gclid) in op te slaan.
Plaats het onderstaande script op elke pagina met een link naar een Calendly-afspraak:
<script>
// Select the <a> element
var linkElement = document.querySelector('a[onclick*="Calendly.initPopupWidget"]');
if (linkElement) {
// Extract the existing URL from the onclick attribute
var onclickAttr = linkElement.getAttribute('onclick');
var urlMatch = onclickAttr.match(/url:\s*'([^']+)'/);
if (urlMatch && urlMatch[1]) {
var calendlyUrl = urlMatch[1];
// Check if the URL already has parameters
var separator = calendlyUrl.indexOf('?') !== -1 ? '&' : '?';
// Append the 'salesforce_uuid' parameter
calendlyUrl = calendlyUrl + separator + 'salesforce_uuid={{gclid}}';
// Update the onclick attribute with the new URL
var newOnclickAttr = onclickAttr.replace(urlMatch[1], calendlyUrl);
linkElement.setAttribute('onclick', newOnclickAttr);
}
}
</script>
Verander de {{gclid}} parameter in de code naar de variabele met de waarde van je Google Click ID:
Als de gclid wordt meegestuurd, zie je deze in de ‘Salesforce UUID’ kolom bij het exporteren van afspraken binnen Calendly. Je kunt deze kolom gebruiken voor koppelingen tussen bijvoorbeeld Zapier en Calendly om automatisch offline conversies te meten binnen Google Ads, zonder handmatige exports en imports.
UTM tagging meesturen met Calendly
Calendly heeft ook kolommen om de campagne, bron, medium, term en content aan een afspraak te koppelen. Deze worden gevuld als we de UTM-tagging meegeven met de Calendly-afspraaklink. Dit doen we door de UTM-tagging beschikbaar te maken in alle pagina-URL’s van de website indien aanwezig.
Voer de onderstaande code uit op alle pagina’s met een Calendly-link en controleer daarbij of UTM-tagging aanwezig is:
<script>
var domainsToDecorate = [
'dofollow.nl' //add or remove domains (without https or trailing slash)
],
queryParams = [
'utm_medium', //add or remove query parameters you want to transfer
'utm_source',
'utm_campaign',
'utm_adgroup',
'utm_content',
'utm_term'
]
//decorate all links on the page
var links = document.querySelectorAll('a');
// check if links contain domain from the domainsToDecorate array and then decorates
for (var linkIndex = 0; linkIndex < links.length; linkIndex++) {
for (var domainIndex = 0; domainIndex < domainsToDecorate.length; domainIndex++) {
if (links[linkIndex].href.indexOf(domainsToDecorate[domainIndex]) > -1 && links[linkIndex].href.indexOf("#") === -1) {
links[linkIndex].href = decorateUrl(links[linkIndex].href);
}
}
}
// decorates the URL with query params
function decorateUrl(urlToDecorate) {
//urlToDecorate uncessary ?
//check if there are any parameters existing
var collectedQueryParams = [];
for (var queryIndex = 0; queryIndex < queryParams.length; queryIndex++) {
if (getQueryParam(queryParams[queryIndex])) {
collectedQueryParams.push(queryParams[queryIndex] + '=' + getQueryParam(queryParams[queryIndex]))
}
}
//YL: added as a fix to ensure url is not modified when UTMs are not in place
if(collectedQueryParams.length < 1){
urlToDecorate = urlToDecorate
}
else{
urlToDecorate = (urlToDecorate.indexOf('?') === -1) ? urlToDecorate + '?' : urlToDecorate + '&';
}
return urlToDecorate + collectedQueryParams.join('&');
}
// borrowed from https://stackoverflow.com/questions/831030/
// a function that retrieves the value of a query parameter
function getQueryParam(name) {
if (name = (new RegExp('[?&]' + encodeURIComponent(name) + '=([^&]*)')).exec(window.location.search))
return decodeURIComponent(name[1]);
}
</script>
Verander de code op rij 3 zodat het domein van je site overeenkomt:
'dofollow.nl' //add or remove domains (without https or trailing slash)
Als je Google Tag Manager gebruikt, kun je de onderstaande trigger gebruiken om te controleren of er UTM-tagging aanwezig is:
De utm_source, utm_medium en utm_campaign URL-variabelen stel je als volgt in:
Tip: Gebruik je Google Ads? Google Ads stuurt standaard geen UTM-tagging mee na klikken op de advertenties. Je kunt offline conversies instellen of UTM-tagging meesturen met behulp van een tracking template in de account- of campagne-instellingen:
Een veel gebruikte tracking template voor de accountinstellingen is:
Christian wordt als performance marketing specialist blij als het gaat over het behalen van positieve ROI. Zijn weapons of choice zijn Google Ads, Facebook Ads, LinkedIn ads, Amazon Ads en SEO. Hij deinst ook niet terug voor de realisatie van goede dashboards of Tagmanager implementaties. Vooral als het wat ingewikkelder wordt.
Wij zijn dofollow. Wij gaan voor open, flexibele samenwerkingen waarin eerlijkheid en resultaat centraal staan. Wij zijn dol op datagedreven online marketing die online succes vergroot en echte resultaten oplevert.
Wij richten ons op heldere, meetbare marketing. En worden blij van effectieve campagnes, slimme strategieën en duurzame optimalisaties!
Online marketing uitbesteden
Met onze data-gedreven aanpak en focus op meetbare resultaten zorgen we ervoor dat jouw marketingbudget maximaal rendeert. Of het nu gaat om campagnes, slimme optimalisaties of baanbrekende innovaties met A.I., wij leveren bewezen impact. Kies voor een team dat jouw groeiambities begrijpt en samenwerkt als verlengstuk van jouw organisatie. Samen maken we online succes waar.
Wij zijn online marketing 'vakidioten', echte 'nerds'. Wij volgen alle ontwikkelingen op de voet. Ontdek wie wij zijn, waar we voor staan en wat ons bijzonder maakt.