UTM parameters are the simplest, most durable way to measure which marketing efforts actually send traffic and sales. They are five optional tags you append to any link, and your analytics tool reads them when someone clicks. This guide explains what each tag does, how Google Analytics 4 reports on them, and the naming conventions that keep your data clean.
What UTM parameters are and how they work
A UTM-tagged URL is your ordinary destination link with up to five extra query parameters appended: utm_source, utm_medium, utm_campaign, utm_term, and utm_content. "UTM" stands for Urchin Tracking Module, after the analytics company Google acquired in 2005. When a visitor clicks the link, the parameters travel with them to your site, and your analytics tool records them against that session.
The builder assembles the link by appending each non-empty value as a percent-encoded key=value pair, joined with &. It inserts a ? only when the base URL has no query string yet — if your link already contains parameters, the UTM tags are added with & so nothing is overwritten. A trailing #fragment is kept at the very end, where the browser expects it.
How GA4 reports on UTM tags
In Google Analytics 4, utm_source and utm_medium populate the Session source / medium dimension, and utm_campaign populates Session campaign. You will find them under Reports → Acquisition → Traffic acquisition, and you can use them as the primary dimension in Explorations. utm_term and utm_content are available as separate fields for deeper slicing — for example, comparing two creatives or keywords inside one campaign.
GA4 also applies its default channel grouping based partly on your utm_medium value. Using recognised mediums such as email, cpc, social, affiliate, and referral means your traffic lands in the right channel automatically instead of an "Unassigned" bucket.
Naming conventions that keep data clean
UTM values are case-sensitive. Facebook, facebook, and FaceBook are three different rows in your reports, and a stray capital letter quietly splits one campaign into several. The single most valuable habit is to lowercase everything and replace spaces with one consistent separator — this builder does both for you when normalization is on.
- Pick one separator. Many teams use underscores in UTM values so they stand apart from the dashes in URL slugs; either works, but be consistent.
- Keep a shared vocabulary. Agree on the exact source and medium values your team uses and reuse them — the saved-links table here helps you keep them in front of you.
- Never tag internal links. Adding UTMs to links between pages on your own site overwrites the visitor's original attribution and corrupts your data.
Term versus content: when to use each
The two optional tags are easy to mix up. utm_term exists for paid-search keywords — the search term you bought, such as running_shoes. If you are not running keyword-level paid search, you usually leave it blank. utm_content exists to differentiate links that are otherwise identical: the same source, medium, and campaign, but a different button, image, or A/B variant.
A practical example: a single email might contain a hero button and a text link, both pointing to the same campaign. Tag one utm_content=hero_button and the other utm_content=text_link, and your reports will tell you which placement people actually clicked.