Free tool UTM link builder
Add campaign parameters to any URL, keep the naming consistent, and copy a link that your analytics tool will attribute correctly. Nothing is uploaded.
- Five standard UTM parameters
- Presets for common sources
- Runs locally
Compose the link
Source and medium are the minimum. Campaign names the push. Term and content are for keywords and creative variants.
The page people land on. Existing query parameters are kept.
Where the traffic comes from: newsletter, google, wechat…
The channel type: email, cpc, social, referral…
The push or promotion: spring_sale, launch_2026…
Optional. Paid keyword or audience name.
Optional. Which link or creative: hero_cta, footer_link…
Common sources
Common mediums
https://example.com/pricing?utm_source=newsletter&utm_medium=email&utm_campaign=spring_sale&utm_content=hero_cta| Parameter | Value |
|---|---|
| utm_source | newsletter |
| utm_medium | |
| utm_campaign | spring_sale |
| utm_content | hero_cta |
What each parameter answers
utm_sourceWho sent them. A site, newsletter or platform name. Required.utm_mediumHow. The channel type — email, cpc, social, referral. Keep a short fixed list.utm_campaignWhy now. The promotion, launch or issue number.utm_termWhich keyword. Mostly for paid search; audience name works too.utm_contentWhich link. Tells two links in the same email apart.
Four steps to a link you can trust
The builder takes a minute. The convention it encodes is what saves you hours later.
-
1
Paste the landing page
Use the final URL, after redirects. Existing query strings are preserved; UTM keys are replaced if already present.
-
2
Pick source and medium
Click a preset or type your own. Source is the sender, medium is the channel type. Both are required for clean reports.
-
3
Name the campaign
One name per push, reused across every channel in that push, so the campaign report adds up across sources.
-
4
Copy and test
Copy the link, open it once in a private window and check that the visit shows the right source in your analytics tool.
A convention beats a clever name
Analytics tools treat Email, email and e-mail as three mediums. The builder normalizes values; the table is the convention we recommend for the rest.
- Lower-case everything; separate words with underscores
- Keep medium to a short fixed list — six to eight values is plenty
- Put dates in campaign names as yyyy_mm, never in source or medium
- Never use UTM parameters on internal links — they reset the session source
| Parameter | Use | Good | Avoid |
|---|---|---|---|
| utm_source | The sender | newsletter · google · partner_acme | Newsletter #12 · www.google.com |
| utm_medium | Channel type | email · cpc · social · referral | e-mail · paid-social-ads |
| utm_campaign | The push | spring_sale · launch_2026_04 | Spring Sale! · campaign1 |
| utm_term | Keyword / audience | web_analytics · lookalike_buyers | Full match-type syntax |
| utm_content | Link / creative | hero_cta · footer_link · v2_blue | Copying the whole headline |
Tracked links are visible to anyone who clicks them. Never put personal data or internal notes into UTM values.
One campaign, three channels, one report
A spring sale announced by email, a paid search ad and a partner post. The campaign name is shared; source and medium differ; content tells the two email links apart.
| Channel | utm_source | utm_medium | utm_campaign | utm_content |
|---|---|---|---|---|
| Newsletter, top button | newsletter | email | spring_sale | hero_cta |
| Newsletter, footer link | newsletter | email | spring_sale | footer_link |
| Paid search | google | cpc | spring_sale | ad_group_a |
| Partner post | partner_acme | referral | spring_sale | — |
In the campaign report, "spring_sale" sums all four rows; the source breakdown then shows which channel actually converted.
Why campaign reports get messy
Almost every broken campaign report traces back to one of these.
Mixed case and spelling
"Google", "google" and "Google Ads" become three sources. Normalize on the way in and reports stay one line per channel.
UTMs on internal links
A tracked link from your homepage to your pricing page starts a new "campaign" session and erases the real source.
Medium used as a free-text field
Medium should be a channel type from a short list. Putting campaign details in it breaks the channel grouping.
Links that redirect and drop the query
Some short-link services or redirects strip parameters. Test the final URL once before sending.
UTM questions
Still have a question?
Chat with the team behind TapCub — we usually reply within a few hours on business days.
Which parameters are required?
utm_source is required for reports to group traffic; utm_medium is strongly recommended. Campaign, term and content are optional and can be added as your reporting needs grow.
Do UTM parameters affect SEO?
Not when used on links you share externally. Add a canonical tag to the landing page so search engines consolidate the tagged and untagged versions.
Should I use UTMs on paid ads if the platform sends a click ID?
Yes, both. Click IDs such as gclid or ttclid identify the platform; UTMs carry the campaign and creative names you chose. TapCub reads both.
Can I shorten the tracked link?
Yes. Build the full URL first, then shorten it. Check once that the shortener preserves the query string.
Stop pasting links into spreadsheets
Connect your site and every tracked link appears in the campaign report automatically, with conversions and revenue beside it.