UTM Tracking Guide: A Naming System That Keeps Attribution Clean
UTMs are the cheapest attribution infrastructure that exists — and the most commonly ruined. One team writes Facebook, another facebook, a third FB, and six months later nobody can answer which channel actually drives revenue without an archaeology project.
Here's the UTM system that stays clean: conventions, governance, and the errors to ban.
Key takeaways
- UTMs only work as a convention everyone follows — lowercase, fixed vocabularies, one documented standard.
- Source = where (platform), medium = how (channel type), campaign = why (initiative) — keep the logic strict.
- Never UTM internal links — it overwrites the original session source and corrupts attribution at the root.
- Governance is a shared builder sheet or tool, not memory; audit quarterly because drift is guaranteed.
The parameter logic
Source names the referrer platform: google, facebook, instagram, newsletter, partner-name. Medium names the traffic type from a fixed list: cpc, paid-social, organic-social, email, affiliate, referral, qr. Campaign names the initiative in a consistent pattern — many teams use something like launch or promo plus date or region. Content distinguishes variants (ad creative, link position); term carries keywords where relevant. The discipline: each parameter answers its own question only, in lowercase, hyphens not spaces, no values invented on the fly.
Governance that survives turnover
Write the convention down — allowed mediums, source spellings, campaign pattern, examples — and build links only through a shared builder (a spreadsheet template or link tool) that enforces it. New hires get the document; agencies get it in onboarding; nobody hand-types UTMs in a hurry. Quarterly, pull a source/medium report and hunt the mutations: capital letters, synonyms, mediums used as campaigns. Fix the convention gaps that produced them, because every variant is a row that fragments your truth.
The corruption patterns to ban
- Internal links with UTMs — clicking them resets the visitor's true origin to your own banner. Use other analytics features for internal tracking.
- UTM-ing untracked channels into lies: dark-social and direct traffic mislabeled to look attributable.
- Inconsistent casing and synonyms — analytics treats Facebook, facebook, and FB as three channels.
- Stuffing campaign names with everything (channel, audience, date, owner, mood) until reports are unreadable — structure belongs across parameters, not crammed into one.
Frequently asked questions
Do UTMs still matter with auto-tagging and platform attribution?
Yes — auto-tagging covers its own platform's clicks, but UTMs unify email, partners, social, and offline QR into one comparable view your analytics owns.
Should UTM values ever contain spaces or capitals?
No — spaces encode messily and capitals create duplicate rows. Lowercase with hyphens, always, everywhere.
How do we fix months of messy historical UTMs?
Map variants together at the reporting layer (channel groupings or transformation rules) going forward — rewriting history is rarely worth it. Fix the convention so the mess stops growing.