Why UTM naming conventions matter

Analytics groups exact values. Email, email, and e-mailmay look equivalent to a person but can appear as separate rows in a report. A naming convention prevents that fragmentation and makes filters, dashboards, and comparisons more dependable.

The convention should govern values, not redefine what the five fields mean. If that distinction is unclear, start with the UTM parameters guide.

A practical convention in six rules

  1. Use lowercase everywhere

    Lowercase is easy to remember and prevents capitalization variants such as Facebook and facebook.

  2. Choose one separator

    Use an underscore or hyphen consistently. This guide uses underscores: autumn_launch. Avoid spaces, mixed punctuation, and separators that change by channel.

  3. Keep source and medium vocabularies controlled

    Source names the sender or platform; medium names the channel. Maintain a short approved list such as google / cpc, newsletter / email, and facebook / paid_social.

  4. Name campaigns around a durable initiative

    A pattern such as year_initiative_region produces 2026_autumn_launch_uk. Include only dimensions your team actually filters or compares.

  5. Use content for meaningful variants

    Prefer a readable description such as hero_button or story_video_a. Do not paste opaque ad-platform IDs unless those IDs are part of the reporting workflow.

  6. Document ownership and exceptions

    Name the person or team who can add vocabulary, show approved examples, and define how legacy values are handled. A convention without ownership quietly forks.

A compact naming template

FieldRuleExample
utm_sourceApproved platform, publisher, or list namegoogle
utm_mediumApproved channel vocabularycpc
utm_campaignyear_initiative_region2026_autumn_launch_uk
utm_termKeyword or approved targeting detail, when usefulbrand_exact
utm_contentplacement_asset_variantstory_video_a
Resulthttps://example.com/launch?utm_source=google&utm_medium=cpc&utm_campaign=2026_autumn_launch_uk&utm_term=brand_exact&utm_content=search_text_a

Adapt the vocabulary by channel, not the basic rules

The same casing and separators can serve every channel, while the allowed values reflect how each channel is bought and reported. For example, Google Ads may use google / cpc, email may use product_newsletter / email, and Meta ads may use facebook / paid_social.

Common naming mistakes

  • Encoding the org chart. Team names and owners change faster than campaign history.
  • Making every value unique. A timestamp or random suffix can stop useful campaign rows from grouping.
  • Using one field for several dimensions. Values such as facebook_paid_social_video are harder to filter than placing each fact in its proper field.
  • Renaming live campaigns casually. The old and new values remain separate in historical data.
  • Allowing undocumented synonyms. Decide whether the approved medium is cpc or paid_search before launch.
  • Writing sensitive details. Never place names, email addresses, customer IDs, or private audience attributes in a URL.

Pre-publish checklist

  • Source and medium come from the approved vocabulary.
  • Case and separator match the written convention.
  • The campaign name will still make sense six months from now.
  • Optional term and content values answer a reporting question.
  • The final URL opens the intended page and contains no sensitive information.

Put the convention to work

Use the free builder to assemble and encode a campaign URL without changing the meaning of your naming system. Save the approved vocabulary beside your campaign brief so every publisher uses the same values.

Build a consistent UTM link