Home/ Tools/ UTM builder
UTM builder · free, no signup
Build clean, trackable URLs in seconds.
A free UTM parameter generator and campaign URL builder. Paste a destination, tag it with source, medium, campaign — copy the encoded UTM code ready for any analytics tool. No signup, no tracking on this page, no nonsense.
UTM builder
Where the link should send people. Include https://.
Tagged URL
Properly encoded
Hmm — that destination URL isn’t valid yet. Include the https:// prefix.
The five parameters
A two-minute UTM cheatsheet.
UTMs are five little query-string tags. Three carry the report, two refine it. Same names every analytics tool reads — Google Analytics, Plausible, Fathom, your own.
utm_source REQUIRED
Where the click came from. The publisher, the platform, the newsletter.
utm_source=newsletterutm_medium REQUIRED
The kind of traffic. Channel category, not channel name.
utm_medium=emailutm_campaign REQUIRED
The named campaign. Pick something you’ll recognize three weeks later.
utm_campaign=spring-launchutm_term OPTIONAL
Paid keyword on search ads. Mostly Google Ads territory.
utm_term=url+shortenerutm_content OPTIONAL
Differentiates creatives, CTA positions, or A/B variants inside one campaign.
utm_content=header-ctaWhen it pays off
Four moments UTMs earn their keep.
If you ship anything more than once a month, the report writes itself. Same conventions every channel, every campaign.
You posted on three channels and now don’t know which one worked.
One short link per channel, same campaign name, different sources. utm_source=twitter, utm_source=newsletter, utm_source=linkedin — clicks sort themselves.
You want to know which email newsletter actually drove signups.
Tag every CTA with utm_medium=email and utm_campaign=may-newsletter. Two weeks later, the report grouped itself by source.
You’re running paid ads and need to compare creatives.
Identical utm_campaign, identical utm_medium=cpc, different utm_content per ad variant. ROI per creative without exporting from the ad platform.
You owe the team a launch recap on Friday.
If every link going out shared the same utm_campaign, the dashboard already grouped the clicks. Screenshot, paste, ship.
Why UTMs
The query-string lingua franca for campaign attribution.
UTM parameters are tiny tags appended to a URL’s query string. Every major analytics tool — Google Analytics, Plausible, Fathom, Matomo, Mixpanel — reads the same five names. Tag your links once, and every dashboard you ever use can group clicks by source, medium, and campaign without you doing anything else.
The hard part isn’t inventing them — it’s being consistent. Use the same utm_source value (lowercase, no spaces) for the same channel every time. Use the same utm_campaign across every link in the same campaign. Pick a naming convention on day one and stick to it.
Then shorten the result with slsh.me so the link you share isn’t a 240-character mess. The UTMs ride through the redirect untouched — destination analytics sees exactly what you set.
Questions
The honest answers.
What is a UTM parameter?
utm_source, utm_medium, utm_campaign, utm_term, utm_content) that tells analytics tools where a click came from. Originally from Urchin Tracking Module — Google Analytics’ ancestor — UTMs are now the standard for off-site campaign attribution across Plausible, Fathom, Matomo, Mixpanel, and dozens of other tools.Which UTM parameters are required?
utm_source, utm_medium and utm_campaign are conventionally required because every analytics platform groups reports by them. utm_term (typically for paid-search keywords) and utm_content (to differentiate creatives or CTA positions) are optional — useful, but only when you need them.Does slsh.me track UTM parameters on the short link?
Can I shorten a UTM-tagged URL?
Is this tool free?
Tagged. Now shorten it.
Free forever. No card. Real-time analytics for every click, grouped by your UTMs.
Shorten with slsh.meWant to see what real-time click analytics looks like? Tour the analytics · See pricing