Back to Blog
Analytics

UTM Parameters: Best Practices for Campaign Tracking

Learn how to properly structure UTM parameters for accurate campaign attribution and better marketing insights.

Maksym YaroshchukMaksym Yaroshchuk
Jan 18, 2025
5 min read
UTM Parameters: Best Practices for Campaign Tracking

Understanding UTM Parameters

UTM (Urchin Tracking Module) parameters are tags added to URLs that help you track the effectiveness of marketing campaigns. When someone clicks a link with UTM parameters, the data is sent to your analytics platform.

The Five Standard UTM Parameters

utm_source (Required)

Identifies where traffic originates: google, facebook, newsletter, etc.

utm_medium (Required)

Identifies the marketing medium: cpc, email, social, banner, etc.

utm_campaign (Required)

The specific campaign name: spring_sale, product_launch, etc.

utm_term (Optional)

Tracks paid search keywords.

utm_content (Optional)

Differentiates similar content or links: topnav, footer, cta_button, etc.

UTM Naming Conventions

  • Use lowercase consistently. GA4 is case-sensitive, so Facebook and facebook are counted as two separate sources and your campaign reports half its numbers twice.
  • Use hyphens instead of spaces. A space encodes as %20 or + depending on the tool, so the same campaign ends up with two names. Hyphens also survive copy-paste and spreadsheet imports more predictably than underscores.
  • Be descriptive but concise. The value has to be readable in a report six months from now.
  • Write the convention down as a pattern, not a paragraph. Something like {channel}-{region}-{quarter} that people fill in, rather than a rule they have to remember.

The Mistakes That Do Real Damage

None of these return an error. The link works, the page loads, the visitor converts β€” and the number lands in the wrong row.

  • utm_medium without utm_source: analytics needs both to attribute a session, so it usually lands in Unassigned.
  • An invented medium: GA4 only recognizes a known set for default channel grouping, so facebook-post never joins the Social channel.
  • Tagging internal links: this starts a new session and overwrites the original source, so a visitor from your ad looks like they came from your own footer.

Build and Check Them Without Guessing

Rather than assembling parameters by hand, use the free UTM builder β€” it has channel presets, a bulk mode and automatic lowercase normalization that shows you exactly what it changed. For links already published, the UTM checker flags capitalization, spaces, duplicates and encoding problems in a URL you paste.

If you are settling on a convention for a whole team, the campaign name generator expands one pattern into every name you need. All of them are free and run in your browser.

Revolink's built-in UTM builder saves templates to your workspace rather than to one person's browser β€” three on the free plan, unlimited on paid plans β€” so everyone tags links the same way. Revolink also preserves UTM parameters through its redirects, which is where campaign attribution most often breaks.

Related Topics:

UTM parameterscampaign trackingmarketing analyticsUTM tagsattributionGoogle Analytics
Maksym Yaroshchuk

Maksym Yaroshchuk

Revolink

Founder & CEO at Revolink. Writes about link management, marketing automation, and growth strategies.