UTM Parameter
A small tag added to a link that tells your analytics tool where the click came from.
A UTM parameter is a small tag you attach to a link that tells your analytics tool where the click came from. Think of it as a return-address sticker on every URL you share — Google Analytics, Plausible, or whichever tool you use sees the tag and credits the visit to your newsletter, your Twitter post, your sponsored ad.
A clothing brand running a spring-sale email might share example.com/sale?utm_source=newsletter&utm_medium=email&utm_campaign=spring-sale. The visitor sees the page; the analytics tool sees the tags. Technically, UTM parameters are query-string parameters — extra text added after a question mark.
Anatomy
There are five UTM parameters. Only one is required.
Anatomy of a UTM-tagged URL
Where the click came from
newsletter, twitter, google
Type of channel
email, social, cpc, referral
Named promotion or initiative
spring-sale, q2-launch
Distinguishes creatives or links to the same page
header-cta, footer-cta
Paid keyword the click was attributed to
summer, running shoes
Only utm_source is strictly required by most analytics tools. The others are optional but make reports easier to read.
utm_source is the only one most analytics tools need to attribute the visit. The others sharpen the report.
Why they exist
Without UTMs, the only clue your analytics tool has about where a visit came from is the referrer — "the page the visitor was on right before yours." That clue gets stripped or hidden in plenty of cases:
- Moving from
httpstohttp. - Opening the link from an email client.
- Tapping the link inside an app's in-app browser (Twitter, Slack, Reddit).
- The source site has told browsers not to share the referrer.
A big chunk of real inbound traffic — sometimes most of it — shows up as "direct" as a result. UTMs solve this by being tags you control. As long as the link the visitor clicked had UTMs, the analytics tool sees them.
Try it
Paste a URL with UTM parameters and see what an analytics tool would extract. Common typos and casing issues are flagged.
Try it — UTM parser
Runs in your browser. Nothing is sent.
utm_souce looks like a typo of utm_source. Analytics tools won't recognize it.Destination
https://example.com/landing
Where the click came from.
- ! Mixed case — most analytics tools treat this as a separate value.
Channel type.
Named campaign.
- ! Contains a space — use a hyphen or underscore instead.
Common mistakes
- Mixed casing.
utm_source=Twitterandutm_source=twittercount as two separate sources in every analytics tool. Pick lowercase and stick with it. - Spaces in values. A literal space becomes
%20in reports. Use hyphens (spring-sale) or underscores. - UTMs on internal links. Tagging links between pages on your own site overwrites the original campaign — your newsletter visit looks like it came from your homepage two clicks later. Reserve UTMs for incoming links.
- Personal data in UTMs. Email addresses, names, or order IDs end up in analytics logs and shared reports. Don't put anything in a UTM you wouldn't want in a screenshot.
- Typos.
utm_souce,utm_campain— tools don't autocorrect. The tagged data is silently dropped.
UTMs and short links
A URL with all five UTM parameters can easily run past 200 characters — too long for SMS, paid ads, printed materials, or QR codes (where extra characters make the code denser).
The standard fix: wrap the tagged URL in a short link. The visitor sees nimble.li/sale; the short link sends them to the long tagged URL; the analytics tool sees the UTMs intact.
To carry UTMs through to the destination only when they're present on the click, use URL parameter forwarding. To send visitors to different pages based on the UTM value — ?utm_source=ads-a to landing A, ?utm_source=ads-b to landing B — use Redirect by Query Parameter.
A workable process
- Agree on a small vocabulary up front.
email,social,cpc— a short list everyone uses. Inconsistency is the single biggest cause of unusable UTM data. - Build the tagged URL with a campaign URL builder or spreadsheet.
- Wrap it in a short link before sharing.
- Reconcile after. Analytics sees the UTMs (which campaign drove visits); link analytics sees the click itself (where, when, what device). The two together close the loop.
References
The term UTM stands for Urchin Tracking Module — a convention introduced by Urchin, an analytics company Google bought in 2005 (which became Google Analytics). UTMs aren't a formal web standard; every modern analytics tool recognizes them because GA does. Background on Wikipedia.