UTM Link Builder
Add utm_source, medium, campaign, term, and content to any URL, correctly encoded and preserving existing query parameters.
Processed locally in your browser — nothing is uploaded.
UTM Link Builder
Existing query parameters are kept.
Campaign URL
Output appears here…Convention: keep utm values lowercase and use dashes or underscores instead of spaces — analytics tools treat "Email" and "email" as different mediums.
About UTM Link Builder
Paste a destination URL, fill in the campaign parameters, and the tagged link builds as you type. Values are percent-encoded properly, existing query parameters and fragments are left intact, and an invalid URL is flagged before you paste a broken link into a campaign.
Presets fill source and medium for the usual channels — paid search, email, social, and offline QR codes — so a team tagging dozens of links stays consistent instead of inventing "Email", "e-mail", and "newsletter" for the same channel.
Common uses
- Tag links in a newsletter so the traffic is attributed correctly
- Build a consistent set of links for a multi-channel campaign
- Add campaign tracking to a URL that already carries its own query parameters
Example
Input
https://example.com/landing · google · cpc · spring_sale
Output
https://example.com/landing?utm_source=google&utm_medium=cpc&utm_campaign=spring_sale
Limitations
- UTM values are case-sensitive in most analytics tools — stick to lowercase to avoid splitting one channel into several
- Tagged URLs are public; anyone can read or edit the parameters, so never put anything sensitive in them
- Do not tag internal links between pages of your own site — it restarts the session attribution
Frequently asked questions
What's the difference between utm_source and utm_medium?
utm_source names where the click came from — a specific site or sender like google, newsletter, or facebook — while utm_medium names the channel type, like cpc, email, or social. Analytics tools group traffic by medium first, so keeping mediums to a small consistent set matters most.
Do the campaign links I build here get logged anywhere?
No. The URL is assembled in your browser using the standard URL API — destination URLs and campaign names never leave your device, so pre-launch campaign details stay private.
Why do my UTM parameters need to be lowercase?
Because most analytics tools treat values case-sensitively: "Email" and "email" show up as two separate mediums and split your reporting. Sticking to lowercase with dashes or underscores keeps one channel as one row.
Can I add UTM tags to a URL that already has query parameters?
Yes. Existing parameters and any #fragment are preserved — the utm_ parameters are appended alongside them, and if the URL already carries a utm_ parameter you set here, your new value replaces it.
Should I put UTM parameters on links within my own website?
No. Clicking a UTM-tagged internal link starts a new attributed session in most analytics tools, overwriting the visitor's real acquisition source. Reserve UTM tags for links in external channels — emails, ads, social posts, and QR codes.