Marketing Tool Stackby Amit Gupta
← Learn

UTM Naming Conventions: Rules & Examples

Good UTM naming follows four rules: use all lowercase, never use spaces (use hyphens), apply a controlled vocabulary of approved values per parameter, and document every value in a shared sheet. UTM values are case-sensitive, so consistency is what keeps one campaign from splitting across many report rows.

The four naming rules

The core convention is short: lowercase everything, replace spaces with hyphens, pick values from a fixed list, and write that list down. UTM parameters are case- and character-sensitive, so analytics treats Email and email as different sources. Almost every broken-attribution story traces back to ignoring one of these four rules.

1. Always lowercase

Force every value to lowercase before it ever reaches a URL. Because the values are case-sensitive, Facebook, facebook, and FACEBOOK become three separate sources and scatter one channel across three rows. Lowercase is the simplest rule to enforce and prevents the most common mistake.

2. No spaces: use hyphens

A space in a UTM value is encoded as %20, producing ugly, error-prone URLs. Replace spaces with a single separator (hyphens are the most readable choice) and use that separator everywhere. Pick - or _ as a team and never mix the two.

3. One controlled vocabulary per parameter

Each parameter should draw from a short, pre-approved list of allowed values rather than free text. If medium can only ever be email, cpc, social, organic, or referral, then nobody can invent e-mail or paid-social and quietly fragment the data.

4. Be consistent and document it

Consistency is the rule that makes the other three stick. The exact same campaign should always carry the exact same tags, every time, from every person. The only reliable way to guarantee that across a team is to document the conventions and route every link through one builder.

Building a controlled vocabulary

A controlled vocabulary is a fixed list of permitted values for each of the five parameters, agreed once and reused forever. It is the single most valuable UTM habit: it turns naming from a judgement call into a lookup, so the same channel, campaign, or creative is always spelled identically.

Decide the allowed values per parameter, keep the list short, and resist adding new ones casually. Below is a typical starting structure; adapt the actual values to your own channels.

ParameterWhat it capturesExample controlled values
utm_sourceThe specific platform or propertygoogle, facebook, linkedin, newsletter
utm_mediumThe channel typecpc, email, social, organic, referral
utm_campaignThe named initiative or offerspring-sale-2026, q3-webinar, brand-launch
utm_contentThe variant, placement, or creativehero-cta, sidebar, variant-a
utm_termThe paid keyword (optional)marketing-automation, utm-builder

Source, medium, and campaign should appear on nearly every tagged link. Content and term are optional: add content when you need to tell two creatives or placements apart, and term mainly for paid-search keyword tracking.

Good vs bad examples

The fastest way to internalise the rules is to see them broken. In each pair below the value carries the same intent; only the formatting differs, and the bad version is what silently splits your reports.

BadGoodWhy
utm_source=Facebookutm_source=facebookMixed case creates duplicate sources
utm_campaign=Spring Saleutm_campaign=spring-saleSpaces become %20 and break the URL
utm_medium=paid-socialutm_medium=socialOff-vocabulary value fragments the channel
utm_source=fb&utm_source=facebookutm_source=facebookAliases for the same platform split the data
utm_campaign=campaign1utm_campaign=q2-demo-pushVague names are unreadable in reports later

A clean, fully tagged link reads almost like a sentence: https://example.com/?utm_source=newsletter&utm_medium=email&utm_campaign=spring-sale-2026&utm_content=hero-cta. It is lowercase and hyphenated throughout, and every value is drawn from the approved list.

Stop hand-typing UTMsThe UTM Builder enforces lowercase, strips spaces, and assembles a clean, consistent tracking URL you can copy in one click.
Open the tool →

Documenting it in a sheet

Keep one shared, link-accessible spreadsheet as the single source of truth for both the conventions and the links themselves. A convention that lives only in someone's head is a convention that erodes the moment they're on holiday; a documented one survives team changes and onboarding.

A simple two-tab structure works well for most teams:

  • Tab 1, Vocabulary. One column per parameter listing the allowed values. This is the reference everyone checks before inventing a new label.
  • Tab 2, Link log. One row per campaign URL with the source, medium, campaign, content, the destination page, and the date created, so any link can be traced back later.

Documentation alone won't stop typos, though. The durable setup is the sheet plus a builder that mechanically enforces the rules, so the conventions are applied automatically rather than relying on each person to remember them.

Frequently asked questions

Should UTM parameters be uppercase or lowercase?

Always lowercase. UTM values are case-sensitive, so writing Email or email or EMAIL registers as three separate sources in your analytics and splits one campaign across multiple rows. Standardising on lowercase everywhere removes that whole class of error and keeps reports clean.

How do I handle spaces in UTM values?

Never use raw spaces. A space becomes %20 in the URL, which looks broken and is easy to mistype. Replace spaces with hyphens or underscores and stick to one separator across the whole team, for example spring-sale rather than spring sale or spring%20sale.

What is a UTM controlled vocabulary?

A controlled vocabulary is a fixed, pre-approved list of allowed values for each parameter, for example only google, facebook, or linkedin for source. Everyone picks from the list instead of inventing labels, so the same channel is always spelled the same way and never fragments your reporting.

Do I need to tag utm_term and utm_content?

Not always. Source, medium, and campaign are the three that matter most and should appear on nearly every link. Term and content are optional: use content to tell two creatives or placements apart in the same campaign, and term mainly for paid keyword tracking.

Where should I document our UTM conventions?

In one shared, link-accessible spreadsheet that everyone uses to build links. List the allowed values per parameter on one tab and log every campaign URL on another. A single source of truth, plus a builder that enforces it, prevents the typos that quietly break attribution.

Last updated: 14 June 2026