Back to the Tracly blog

Campaign Analytics

UTM Naming Conventions: A Practical Campaign Tracking Template

Create a consistent UTM naming convention with clear source, medium, campaign, and placement fields so your team can compare campaign results reliably.

Tracly Team · September 14, 2026 · 4 min read

Direct answer

A useful UTM naming convention defines what each parameter means, supplies approved values, and assigns one owner to maintain the rules. Keep source and medium consistent, use a stable campaign identifier, and reserve content or Sub-ID values for the creative and placement detail you need to compare.

A report containing Newsletter, newsletter, and weekly-email may describe one source three different ways. Small naming differences accumulate into manual cleanup. A short shared dictionary prevents that fragmentation before the next campaign link leaves your team.

SourceApproach oneApproach two
SourceAd hoc: labels vary by link authorControlled: one approved value per source
CampaignRenamed whenever the headline changesStable across the campaign's related placements
MaintenanceCorrect categories after reporting breaksValidate values before links are distributed

Define a small parameter dictionary

Start with utm_source for the referring publisher or platform, utm_medium for the channel type, and utm_campaign for the initiative. Use utm_content to distinguish creative or placement when it is useful. Google Analytics documents that parameter values are case-sensitive, so adopt one casing convention and enforce it consistently.

Choose values that make sense to someone joining the team next month. For an email example, source newsletter, medium email, campaign autumn-course, and content hero-button form a readable hierarchy. This is an illustrative naming scheme, not a required platform taxonomy. Check your analytics channel rules before introducing new medium values.

  • Publish the meaning and owner of each field
  • List approved source and medium values
  • Define when a new campaign identifier is required

Keep stable identity separate from creative detail

Use the same campaign value across related placements if you want to report on the initiative as a whole. Put hero-button, footer-text, or creative-b in the placement field instead of copying those variations into campaign names. That preserves a useful total while allowing a more detailed comparison underneath it.

Record a stable internal campaign ID in your working register if display names may change. Where a partner needs Sub-IDs, map their meaning separately rather than assuming every system understands the same field. Avoid embedding personal details, confidential audience labels, or information that should not appear in browser history and logs.

Build and test a reusable link record

For each distributed link, store the owner, destination, source, medium, campaign, placement, and creation date. An example destination is https://example.com/course?utm_source=newsletter&utm_medium=email&utm_campaign=autumn-course&utm_content=hero-button. Generate URLs with a builder or URL API so existing query parameters and special characters are handled correctly.

Open the final link and inspect the arriving URL and analytics record. If the destination already has a query string, another question mark can corrupt the intended parameters. Redirects can also drop or replace values. Validate the delivered link rather than approving a naming spreadsheet without testing its output.

Make the convention easy to maintain

Assign one owner to add approved values and keep a mapping for historical aliases. Do not silently rename old labels in a way that makes past reports impossible to reproduce. Explain whether a report shows original source data or a normalized reporting category, and preserve the original values when cleaning exports.

Apply the dictionary when creating Tracly campaign links and planning Sub-ID reporting. Review unexpected source and medium values after each launch, then fix the generation process that created them. A lightweight weekly review is more useful than an elaborate naming policy that nobody follows under deadline pressure.

Frequently asked questions

Should UTM values always be lowercase?

Lowercase is a practical team convention, not a universal technical requirement. The key is consistency because systems such as Google Analytics distinguish values by case.

Should I tag internal website links with campaign UTMs?

Reserve acquisition tags for incoming campaign links. Measure internal navigation with suitable event or placement tracking so internal clicks do not introduce misleading acquisition labels.

Can I change a campaign name after launch?

You can change future link values, but that may split reporting across labels. Prefer a stable campaign identifier and document any mapping needed to combine old and new names.

Make campaign decisions with clearer data

Tracly brings attribution, traffic quality, testing, and performance signals into one practical workflow.

Explore Tracly

Related articles