Skip to main content
UTM conventionsReference

UTM naming convention guide

UTM parameters are free-text, which means the only thing keeping your channel reporting readable is a convention everyone follows. Almost every fragmented analytics account we see is the same story: Facebook, facebook and FB as three separate sources, because UTMs are case-sensitive and nobody wrote the rules down. The convention that survives is boring — lowercase everything, a fixed vocabulary for source and medium, and a shared document that a new hire can follow on day one.

Free30 minutesNo obligation

UTM conventions · what breaks

Where teams get this wrong — UTM conventions

  1. 01

    No documented convention

    Then everyone invents one, and your channel reporting fragments within a quarter.

  2. 02

    Inconsistent case

    UTMs are case-sensitive. Facebook and facebook are two sources in every report you'll ever run.

  3. 03

    Free-text medium

    The one field that most needs a fixed vocabulary, and the one most often left open.

UTM conventions · the fix

What a correct implementation looks like — UTM conventions

  • Lowercase everywhere, always

    The single rule that prevents most fragmentation.

  • A fixed vocabulary for source and medium

    A short list, written down, that nobody adds to casually.

  • Hyphens rather than spaces or underscores

    Consistent, readable, URL-safe.

  • A shared builder

    A spreadsheet or tool, so links aren't hand-typed.

UTM conventions · architecture

The five parameters and how to use each — UTM conventions

Free-text fields with no validation. Discipline is the only mechanism keeping them useful.

  1. 1

    utm_source

    The platform. google, meta, klaviyo, partner-name. Not the campaign, and not a person's name.

  2. 2

    utm_medium

    The channel type, from a fixed short list. This is the field that drives channel grouping in analytics.

  3. 3

    utm_campaign

    The specific campaign, on a documented pattern. Date-prefixing makes chronological sorting work.

  4. 4

    utm_content

    For distinguishing creatives or placements within a campaign. Optional and useful.

  5. 5

    utm_term

    Originally for keywords. Largely superseded by auto-tagging for paid search.

UTM conventions · diagnose

Common mistakes and how to validate each — UTM conventions

Ordered by how often we find them. Each one has a specific check rather than a general instruction to be careful.

  1. 01

    Mixed case

    Group your analytics by source and look for the same platform appearing more than once. That's your evidence.

  2. 02

    Medium used as a second campaign field

    Check whether your channel grouping works. If most traffic is unassigned, medium is the culprit.

  3. 03

    Auto-tagging turned off to keep clean UTMs

    The expensive one. Click your own ad and check for a click identifier.

  4. 04

    UTMs copied into organic or internal links

    Which overwrites the real source. Search your own site for internal links carrying UTMs.

  5. 05

    No shared builder

    Hand-typed links produce typos. A spreadsheet with dropdowns eliminates most of it.

UTM conventions · prove

How to prove your implementation is right — UTM conventions

Against your own records and a live payload, not against a preview screen.

Source of truth

your analytics channel grouping — whether it resolves cleanly

  • Source and medium values listed and checked for near-duplicates.
  • Channel grouping resolving with minimal unassigned traffic.
  • No internal links carrying UTM parameters.
  • Auto-tagging confirmed still enabled alongside manual UTMs.
  • Checked on a live conversion, not in preview mode.
  • Reconciled over a fully closed window, matched per record.
  • Re-checked 30 days later.

UTM conventions · free audit

What we check in the free audit

  • Mixed case
  • Medium used as a second campaign field
  • Auto-tagging turned off to keep clean UTMs
  • UTMs copied into organic or internal links
  • No shared builder

Checked against

your analytics channel grouping — whether it resolves cleanly

Get my free conversion tracking audit

Free30 minutesNo obligation

UTM conventions · when not to buy

What this reference deliberately leaves out — UTM conventions

Stated openly, because a reference that's silent about its own gaps is the dangerous kind.

  • There's no universally correct taxonomy. What's here is a convention that works; yours can differ as long as it's documented and followed.
  • Analytics platforms apply their own channel-grouping rules to medium values, and those rules change. Check how yours groups before fixing a vocabulary.
  • This doesn't cover click identifiers, which do attribution rather than labelling and are covered separately.
  • Vendor documentation is the authority, not this page. Where the two disagree, the vendor is right and we'd like to know so we can correct it.
  • Parameter names and behaviour change. Anything here is accurate as we last verified it; verify against the current documentation before you rely on it for a build.

UTM conventions · what we deliver

The checklist — UTM conventions

  • Everything lowercase

    No exceptions, including campaign names.

  • Medium drawn from a fixed list

    cpc, email, social, affiliate, referral, display — a short closed set.

  • Source is the platform, not the campaign

    google, meta, klaviyo. Not spring-sale.

  • Campaign follows a documented pattern

    Something like yyyy-mm-campaign-name, applied consistently.

  • Auto-tagging stays on

    UTMs are for reporting; the click ID is what does attribution.

Pricing

Pick the package that fits your ad spend

Browser-side starter

$400One-time fee · lifetime ownership

Repairs and verifies your existing browser-side setup against this reference, on a live conversion.

  • Implementation checked against the spec
  • Verified on a live conversion
  • Reconciled against your own records
  • Written handover
Have mine checked

1st-party server-side

Recommended

$800One-time fee · most popular

Money events sent from your own records through a first-party container on your subdomain, built to this specification.

  • First-party server container on your own subdomain
  • Events from your records, not the browser
  • Deduplicated on a shared event ID at every destination
  • First-party cookies beyond Safari's 7-day cap
  • 95%+ accuracy and 8+ Meta EMQ, guaranteed in writing
Have it built properly

Full 1st-party stack

$1,800One-time fee · lifetime ownership

Every paid channel server-side plus the offline loop, documented to this standard.

  • Everything in 1st-party server-side
  • Pinterest, Snapchat, Reddit and LinkedIn CAPI
  • CRM and offline conversion loop
  • Refunds and cancellations corrected wherever each platform allows it
  • Monitoring so the next break surfaces in days
Get the full stack

FAQ

UTM conventions questions, answered

Yes, which is why Facebook and facebook appear as two separate sources. Lowercase everything and most fragmentation disappears.

Free · 30 min

Get your channel reporting readable again

Free30 minutesNo obligation