A UTM builder takes a URL, adds the right tracking tags, and gives you back a campaign URL your analytics tool can read. Google Analytics, Mixpanel, HubSpot, Matomo, anything that supports UTMs.
Simple enough. The problem is, most teams build campaign links on autopilot, miss a detail, and then spend the next quarter wondering why their LinkedIn campaign is logged as direct traffic in GA4.
This is the cheat sheet for getting it right, plus a naming convention that holds up once more than one person on the team is building links.
What is a UTM parameter?
A UTM parameter is a small tag added to a URL that tells your analytics where a visitor came from. UTM stands for Urchin Tracking Module, a leftover from the product Google bought in 2005 and turned into Google Analytics.
You've seen them:
https://yourdomain.com/?utm_source=twitter&utm_medium=social&utm_campaign=launch
Everything after the ? is tracking data. The destination page itself doesn't change. The parameters are there for analytics to read on arrival.
The five UTM parameters, explained
utm_source (required)
What it is: where the click came from.
Examples: linkedin, twitter, newsletter, google, producthunt
Rule of thumb: the specific platform or publication name.
utm_medium (required)
What it is: the category of channel.
Examples: social, email, cpc, affiliate, referral
Rule of thumb: GA4 uses this to group traffic into channels. Stick to a fixed vocabulary or your reports will fragment.
utm_campaign (required)
What it is: the campaign identifier.
Examples: q1_launch_2026, blackfriday, webinar_may
Rule of thumb: pick a naming convention and stick to it. q1_launch_2026 and Q1-Launch-2026 are two different campaigns to GA4.
utm_term (optional)
What it is: originally the paid search keyword.
Modern use: ad group or keyword targeting identifier.
Examples: url_shortener, analytics_tool
utm_content (optional)
What it is: the creative variant or placement.
Examples: hero_cta, carousel_v2, footer_link
Rule of thumb: use this for A/B testing. When two links lead to the same page from the same campaign, utm_content tells them apart.
Five mistakes that break tracking
1. Mixed case. LinkedIn and linkedin are different values in GA4. Always use lowercase.
2. Spaces. Spaces become %20 or + once encoded. Use hyphens or underscores.
3. Inconsistent source names. fb, facebook, FB, Meta. Pick one, document it, enforce it.
4. UTMs on internal links. Tagging links inside your own site creates new sessions in GA4 and wrecks attribution. Only tag links coming into your site from outside.
5. Forgetting UTMs after redirects. If your URL redirects (custom domain, campaign subdomain, anything with a hop), test that parameters survive. See our guide on UTM parameters lost after a redirect for the fix.
A campaign URL naming convention
Copy this and adapt it:
utm_source -> platform name, lowercase, no spaces
(linkedin, twitter, newsletter, google, producthunt)
utm_medium -> channel type, from a fixed list
(social, email, cpc, affiliate, referral, organic, display)
utm_campaign -> {quarter}_{initiative}_{year}
(q1_launch_2026, holiday_sale_2025)
utm_content -> {placement}_{variant}
(hero_v1, carousel_v2, footer_link)
Drop this into a shared doc and point every link your team builds at it. UTMs only work when everyone uses them the same way. A team of three with three different conventions produces three times the fragmentation in your reports, and GA4 won't tell you which version was right.
Shorten your UTM link after you build it
A tagged URL can easily run past 150 characters. Fine for analytics, painful to share on social, in print, or over SMS. Once you've used a UTM builder to compose the tagged URL, shorten it with ClickDash to get:
- A branded short link like
go.yourdomain.com/launchinstead of a 127-character monster - A downloadable QR code for print, slides, or booths
- Per-link click analytics (country, city, device, referrer) on top of your GA4 data
- The option to change the destination without reissuing the link
ClickDash keeps every query parameter through the redirect, so GA4 still records exactly what you tagged. The full walkthrough lives at how to shorten UTM links without breaking tracking.
FAQ
Do UTM parameters affect SEO? No. Search engines ignore query parameters for ranking. Your canonical URL handles indexing.
Do I need all five UTM parameters?
Only utm_source, utm_medium, and utm_campaign are required. utm_term and utm_content are optional but useful for paid ads and A/B tests.
Are UTM parameters case-sensitive?
Yes. Facebook and facebook are two different values in GA4. Always use lowercase.
Can I use UTM parameters on internal links? You shouldn't. Tagging internal links creates new sessions in GA4 and breaks attribution. Use UTMs only for external traffic.
How do I know my UTMs are working?
Open GA4, go to Reports, Acquisition, Traffic acquisition. Find your campaign and check that your utm_source / utm_medium / utm_campaign values appear exactly as you set them.
What's the difference between a UTM builder and a URL shortener? A UTM builder composes the tagged URL. A URL shortener makes it compact and shareable. Most teams want both. Build the tagged URL first, then shorten it. ClickDash puts a UTM builder inside the dashboard so both happen in one place.
Tagging URLs correctly is the cheapest marketing win available. A consistent campaign URL convention, applied across the whole team, makes every downstream report trustworthy. Skip it and you're making decisions on noise.