UTM parameters and campaign tracking done right
The five UTM parameters, naming conventions that keep reports clean, and where UTM links must never be used.
When a visitor arrives from a newsletter, a LinkedIn post, or a partner’s website, analytics tools can only attribute the visit correctly if the link says where it came from. UTM parameters are the standard way to do that. They are simple, but inconsistent naming quietly splits reports into dozens of fragments, and misuse can overwrite the real source of your traffic. This guide shows how to tag links so the data stays useful.
The five parameters
| Parameter | Answers | Examples |
|---|---|---|
utm_source (required) | Who sent the visitor? | newsletter, linkedin, partner-acme |
utm_medium (required) | What type of channel? | email, social, cpc, referral, display |
utm_campaign (required) | Which campaign? | autumn_launch, 2026-09-webinar |
utm_content | Which link or variant? | header_button, variant_b |
utm_term | Which paid keyword? | running_shoes |
With the UTM campaign builder, the landing page https://example.com/launch with source newsletter, medium email, and campaign autumn_launch becomes:
https://example.com/launch?utm_source=newsletter&utm_medium=email&utm_campaign=autumn_launchIf the URL already has parameters, they are kept, and existing UTM values are replaced rather than duplicated.
Naming conventions matter more than anything
Analytics tools treat values as exact strings. “Email”, “email”, and “e-mail” become three separate mediums, and “LinkedIn” and “linkedin” become two sources. Six months later, nobody can add up the numbers correctly. Agree on a convention and write it down:
- Lowercase everything. The builder can do this automatically.
- Use one separator consistently, either underscores or hyphens, and no spaces.
- Keep a shared list of allowed sources and mediums, and add to it deliberately.
- Put dates or quarters in campaign names when campaigns recur, such as 2026-q4-sale.
Mediums deserve special care. Google Analytics 4 assigns traffic to its default channel groups (Email, Organic Social, Paid Search, Referral, and so on) based largely on utm_medium. Using the expected values, such as email, social, cpc, and referral, puts your traffic in the right channel automatically. Invented values end up as “Unassigned”.
Where not to use UTM parameters
Never add UTM parameters to links between pages on your own site. When a visitor clicks such a link, analytics starts a new attribution with the internal values and overwrites the real source, whether that was a search engine, an ad, or a newsletter. Use UTMs only on links placed elsewhere: emails, social posts, ads, QR codes on print material, and partner sites.
Paid platforms such as Google Ads and Microsoft Ads usually tag clicks automatically with their own click IDs (gclid, msclkid). Follow each platform’s guidance on combining auto-tagging with manual UTMs.
UTMs and SEO
Each tagged link is technically a different URL for the same page. To stop search engines from treating the variants as duplicate content, the page should declare its clean address with a canonical tag. The meta tag generator includes one. Keep tagged links out of your sitemap and internal navigation.
Privacy considerations
UTM values are visible to anyone who sees the link, and they end up in browser history and server logs. Never put personal data in them, such as email addresses, names, or customer IDs. That can breach privacy law and platform policies. Campaign-level information is enough for attribution.
Checking a link before sending
- Open the link and confirm the landing page loads, with no redirect that drops the parameters.
- Paste it into the URL parser to see each parameter decoded, and check for typos and stray spaces.
- Use the query string editor to fix or remove parameters without hand-editing the URL.
- After sending, check your analytics real-time report to confirm the visit is attributed as expected.
