Use UTM parameters to track where your traffic comes from before someone books with you. This helps you measure the success of your ads, emails, or campaigns.
What are UTM parameters?
UTM parameters are tags you add to a link. They help you track where traffic comes from using tools like Google Analytics.
Calendly supports these standard UTM values:
- utm_source: (e.g., facebook, newsletter)
- utm_medium: (e.g., ad, email)
- utm_campaign: (e.g., spring_sale)
- utm_content: (optional – e.g., image1, linktext)
- utm_term: (optional – used for paid search)
Note: Each UTM value must be fewer than 255 characters. Longer values may not be tracked.
Option 1 – Add UTM parameters to the embed URL
If your Calendly embed uses a direct link, you can add UTM parameters manually.
<div class="calendly-inline-widget"
data-url="https://calendly.com/YOUR_LINK/30min?utm_source=facebook&utm_medium=ad&utm_campaign=spring_sale"
style="min-width:320px;height:630px;"></div>
This works for all embed types, including inline, popup text, and popup widget.
Option 2 – Pass UTM parameters with JavaScript (advanced)
If you use the advanced JavaScript embed, pass UTM values during setup.
Calendly.initInlineWidget({
url: 'https://calendly.com/YOUR_LINK/30min',
parentElement: document.getElementById('calendly-embed'),
utm: {
utmCampaign: "spring_sale",
utmSource: "facebook",
utmMedium: "ad",
utmContent: "shoes",
utmTerm: "spring"
}
});
Option 3 – Pass UTM values dynamically from the URL
Use JavaScript to capture UTM parameters from the page URL and pass them into the embed.
function getUrlVars() {
const vars = {};
window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,k,v) {
vars[k] = decodeURIComponent(v);
});
return vars;
}
const utms = getUrlVars();
Calendly.initInlineWidget({
url: 'https://calendly.com/YOUR_LINK/30min',
parentElement: document.getElementById('calendly-embed'),
utm: {
utmSource: utms["utm_source"],
utmMedium: utms["utm_medium"],
utmCampaign: utms["utm_campaign"],
utmContent: utms["utm_content"],
utmTerm: utms["utm_term"]
}
});
This method is useful when you’re reusing the same embed across multiple campaigns.
Option 4 – Hardcode UTM values for different sources
You can create different embeds for each traffic source by hardcoding UTM values in the embed links.
<div class="calendly-inline-widget"
data-url="https://calendly.com/YOUR_LINK/30min?utm_source=facebook"
style="min-width:320px;height:630px;"></div>
Create separate embeds for sources like Google Ads, email newsletters, or LinkedIn.