UTM builder
A free UTM link builder: paste a link, pick where you’re posting it, and see which GA4 channel it will land in.
Build your UTM link
Everything happens in your browser. Nothing is sent or stored.
Your link
QR code
Scan to test before you print.
This link is over 1,000 characters, so the code will be dense and hard to scan. Try a shorter campaign name.
| Line | Tagged link | Warnings |
|---|
Your tagged link shows here
Add a URL, pick where you’re posting it and name the campaign. You’ll see the link, the GA4 channel it will most likely land in, and anything that would split your reports.
A UTM link is your normal URL plus tags that tell your analytics where a visitor came from: ?utm_source=linkedin&utm_medium=social&utm_campaign=launch. Google says to always set utm_source, utm_medium and utm_campaign (source).
Use lowercase every time. Google’s help page says values are case sensitive, so utm_source=google and utm_source=Google count as different sources (source).
The presets, and the GA4 default channel each one lands in (Google’s channel rules):
- X post: utm_source=x, utm_medium=social. Lands in Organic Social.
- LinkedIn post: utm_source=linkedin, utm_medium=social. Lands in Organic Social.
- Newsletter: utm_source=newsletter, utm_medium=email. Lands in Email.
- Cold email: utm_source=cold-email, utm_medium=email. Lands in Email.
- Product Hunt: utm_source=producthunt, utm_medium=referral. Lands in Referral.
Everything happens in your browser. Nothing is sent or stored.
Can’t tell which channel brings your sign-ups? Talk it through in a free 15-min call
Google’s rules
| Rule | Source |
|---|---|
| “You should always use utm_source, utm_medium, and utm_campaign.” | Google Analytics Help, “URL builders: Collect campaign data with custom URLs” |
| Parameter values are case sensitive: utm_source=google is different from utm_source=Google. | Same page |
| Keywords with different capitalization, such as Meta and meta, are treated as different values. Use lowercase as a standard practice. | Same page |
| Organic Social: medium is one of social, social-network, social-media, sm, “social network” or “social media”, or the source is on Google’s list of social sites. | Google Analytics Help, “[GA4] Default channel group” |
| Email: source or medium is email, e-mail, e_mail or “e mail”. | Same page |
| Referral: medium is referral, app or link. | Same page |
Presets and their GA4 channel
Every preset is lowercase, and you can edit it after picking. You always type the campaign name yourself.
| Preset | utm_source | utm_medium | Lands in (GA4 default channel) |
|---|---|---|---|
| X post | x | social | Organic Social |
| LinkedIn post | social | Organic Social | |
| Newsletter | newsletter | ||
| Cold email | cold-email | ||
| Product Hunt | producthunt | referral | Referral |
If you change the medium so it no longer matches one of the rules above, the builder says the link may land in Unassigned, which is what GA4 uses when no channel rule matches (source).
Bulk mode
Switch to Bulk and paste up to 200 URLs, one per line. They all get the same tags. To give each link its own tags, paste CSV instead, with this header:
url,source,medium,campaign,content,term
Blank lines are skipped. A line that isn’t a web address, or a CSV row with the wrong number of columns, is shown in red with its line number and left out of the download. If the same source is spelled two ways, like x and twitter, the builder points it out. Copy all the links at once, or download them as a CSV made in your browser.
QR code
Turn on QR code and the builder draws a code that holds the full tagged link, so you can put it on a flyer, a slide or packaging and still see the visits in GA4. Download it as PNG or SVG. Scan to test before you print. Very long links make dense codes that are hard to scan, so keep the campaign name short.
How it works
- The link is built with your browser’s own URL tools, so every value is encoded correctly. Tags already in your URL are read into the fields and replaced, other parameters stay, and a #section stays at the end.
- The channel line checks your medium (and, for Email, your source) against Google’s default channel rules, in Google’s order. Channel rules aren’t case sensitive, but reports are. Google also matches the source against its own lists of social, search, video and shopping sites, which this builder doesn’t copy, so the line says “most likely”.
- The warnings cover mixed case, spaces, tags already in the URL, a missing source, medium or campaign, characters like & or # inside a value, links without https, and links over 2,000 characters.
- Nothing leaves the page. There’s no account, no link shortener and no upload. The CSV and the QR code are made in your browser.
Questions
Are UTM parameters case sensitive?
Yes. Google’s help page says utm_source=google is different from utm_source=Google, so use lowercase every time. (source)
Which UTM parameters do I need?
Google says “you should always use utm_source, utm_medium, and utm_campaign.” Add utm_content or utm_term when you need to tell links or keywords apart. (source)
What UTM tags should I use for LinkedIn or X posts?
Use the platform as the source, like linkedin or x, and social as the medium, so GA4 puts the visit in Organic Social. (source)
Can I make a QR code with UTM tags?
Yes. Turn on QR code and the code holds the full tagged link. It’s made in your browser.
Is anything I type stored?
No. Everything happens in your browser. Nothing is sent or stored.



