All articles
Fundamentals · 10 min read

UTM Parameters:
The Complete Guide (2026)

UTM parameters tell you exactly where your traffic comes from — but most marketers get them wrong. All 5 parameters explained with real examples and the mistakes that silently corrupt your attribution.

·10 min read

UTM parameters are five URL tags that tell GA4 (and your CRM) exactly where a visitor came from. But despite being simple in theory, they're routinely implemented wrong — and wrong UTMs don't throw errors. They silently misattribute revenue, corrupt your channel attribution data, and make it impossible to answer the question every CFO asks: "Where did that customer come from?"

This guide covers everything: what each parameter does, how to use them correctly across every channel, and the mistakes that corrupt attribution data for months before anyone notices. By the end, you'll have the framework to implement UTMs consistently across your entire marketing stack.

5
UTM parameters
Every major analytics platform — GA4, Mixpanel, Amplitude — reads all five
40%
of links have errors
Within 6 months, most teams accumulate significant UTM inconsistency in attribution data
8 wks
avg. time to discover
How long attribution corruption typically goes unnoticed before surfacing in reports

What Are UTM Parameters?

UTM stands for "Urchin Tracking Module" — a naming quirk that dates back to 2005 when Urchin Software built URL tagging into their web analytics platform. Google acquired Urchin in 2005 and incorporated UTM tracking into Google Analytics, where it's been the industry standard ever since. Now, every analytics platform — GA4, Mixpanel, Amplitude, Segment — reads and respects UTM parameters.

UTM parameters are appended to URLs as query parameters. When someone clicks a link with UTM parameters, analytics platforms capture those values on page load and attribute the session to the source, medium, and campaign you specified.

Here's a complete example with all 5 UTM parameters:

https://example.com/pricing?utm_source=linkedin&utm_medium=paid-social&utm_campaign=2026-q1-brand&utm_content=cta-button&utm_term=utm-tools

URL anatomy

https://example.com/pricing?utm_source=linkedin&utm_medium=paid-social&utm_campaign=2026-q1-brand&utm_content=cta-button&utm_term=utm-tools
utm_source
Who sent the traffic
utm_medium
How it was delivered
utm_campaign
Which campaign
utm_content
Which creative/link
utm_term
Paid keywords only

When a user clicks this link, GA4 records:

  • Source: linkedin
  • Medium: paid-social
  • Campaign: 2026-q1-brand
  • Content: cta-button
  • Term: utm-tools

The 5 UTM Parameters Explained

Each UTM parameter serves a specific purpose in your attribution model. Getting these right is the difference between knowing exactly where your revenue comes from and guessing.

utm_source — Where Traffic Comes From

The platform or property that sends traffic to you. This is the referring source — the place where your audience saw your link.

Examples: google, linkedin, newsletter, partner-name, g2, twitter, facebook

Rule: Always lowercase. Always present. Never use "website" or "direct" as a source — those aren't sources, they're channels. utm_source should be the actual platform.

utm_source=linkedin

utm_medium — How Traffic Got There

The marketing channel — the mechanism by which traffic arrived. This is your primary channel dimension in GA4.

Examples: cpc, email, paid-social, organic-social, display, referral, affiliate, organic

Rule: This is the most important parameter for channel attribution. Be disciplined with naming — "paid-social" and "social-paid" are two different channels. Pick one naming convention and stick to it across your entire organization. This is your single source of truth for channel reporting.

utm_medium=paid-social

utm_campaign — Which Campaign Sent Traffic

The specific campaign name — the marketing initiative that generated the traffic. Name it descriptively so you can identify it months later.

Examples: 2026-q1-brand-awareness, trial-nurture-sequence-3, product-hunt-launch, revops-conference-2026

Rule: Include date/quarter for time-bound campaigns. Include the product or motion (nurture, retargeting, prospecting) for ongoing programs. Use hyphens, not spaces. This makes it easy to filter and analyze campaigns in GA4.

utm_campaign=2026-q1-brand-awareness

utm_content — Which Specific Creative or Link

The specific asset or variant — used for A/B testing and to distinguish multiple links in the same email or page.

Examples: hero-cta, nav-link, footer-link, blue-button, text-ad-variant-a

Rule: Optional but valuable when you're running creative tests. If you're not testing, it's still useful for diagnosing which links in an email get clicks. Use it liberally — it costs nothing and pays dividends in attribution clarity.

utm_content=hero-cta

utm_term — Which Keyword Triggered the Ad

The paid search keyword — typically auto-populated by {keyword} macros in Google Ads, Microsoft Ads, or other paid search platforms.

Examples: utm-governance-tool, utm-builder-for-teams, martech-attribution

Rule: Use utm_term for paid search only. Don't repurpose this parameter for other channels — it pollutes your search keyword reporting and confuses your analytics model. Leave it blank for non-paid-search channels.

utm_term={keyword}

UTM Parameter Examples by Channel

This is the section people actually want: complete, ready-to-use examples for every major channel. Copy-paste these and adapt them to your naming convention.

Google Ads (Paid Search)

utm_source=google
utm_medium=cpc
utm_campaign=2026-q1-brand
utm_term={keyword}
utm_content=headline-variant-b

Use automated rules in Google Ads to populate utm_term with {keyword} macro. GA4 will capture the actual keyword that triggered your ad.

LinkedIn Paid Ads

utm_source=linkedin
utm_medium=paid-social
utm_campaign=2026-q1-revops-ica
utm_content=thought-leadership-carousel

LinkedIn doesn't have a keyword equivalent, so utm_term can be left blank. Use utm_content to distinguish between different creatives in the same campaign.

Email (HubSpot, Marketo, etc.)

utm_source=hubspot
utm_medium=email
utm_campaign=trial-nurture-week2
utm_content=cta-main

Every link in every email should have UTMs. Without them, email traffic shows up as "direct" in GA4. Use utm_source to identify which email platform (HubSpot, Marketo, Klaviyo, etc.) sent the traffic.

Newsletter (Owned Channel)

utm_source=newsletter
utm_medium=email
utm_campaign=weekly-roundup-2026-03-18
utm_content=feature-link

For owned newsletters, use a generic utm_source like "newsletter" or name it after the publication (e.g., "morning-brew"). Include the date in utm_campaign for weekly sends.

Organic Social (LinkedIn, Twitter, etc.)

utm_source=linkedin
utm_medium=social
utm_campaign=organic-thought-leadership

Use utm_medium=social (not "organic-social") for consistency. Many teams skip UTMs on organic social posts because it risks polluting direct traffic data, but if you're disciplined, it provides valuable insights. Never use utm_source="social" — specify the platform.

Partner / Affiliate Links

utm_source=partner-acme-corp
utm_medium=referral
utm_campaign=2026-partnership-launch

Use the partner's name in utm_source so you can segment by partner in GA4. utm_medium=referral distinguishes partner traffic from paid or organic channels.

The 7 UTM Mistakes That Corrupt Attribution

These are the mistakes we see repeatedly. Avoid them and your attribution data will stay clean for months.

1. Inconsistent Capitalization

GA4 is case-sensitive. "Google" and "google" are treated as different sources. This silently creates duplicate channels in your reporting. Set a naming standard (lowercase) and enforce it across your team.

2. Spaces in Parameter Values

Spaces become %20 or + depending on the encoder. Use hyphens instead. "Q1 Brand" becomes "q1-brand" — shorter, cleaner, and guaranteed to render the same way everywhere.

3. Skipping utm_medium

This is the channel. Without it, you can't do channel attribution. Every UTM must include utm_source and utm_medium at minimum. They're your primary dimensions.

4. Using utm_source for Brand Name

utm_source=ourcompany on internal links creates an "ourcompany" source in GA4. Don't UTM internal links. Reserved UTMs for external traffic — traffic from real external sources.

5. Putting Campaign Details in utm_source

utm_source=google-q1-awareness mixes source and campaign. Source = the platform. Campaign = the campaign. Keep them separate. utm_source=google, utm_campaign=2026-q1-awareness.

6. Not UTMming Email Links

Email traffic shows up as "direct / none" in GA4 without UTMs. Every link in every email should have UTMs. This is non-negotiable if you want email attribution in GA4.

7. Forgetting to Test

Build the link, click it in an incognito window, open GA4 real-time, verify the UTMs appear correctly. 30 seconds of testing saves hours of cleanup later.

UTM Parameters and Your CRM

GA4 captures UTMs as session-level data. To connect that data to your CRM (Salesforce, HubSpot, Pipedrive) and attribute revenue to specific marketing campaigns, you need to pass UTM values through your form submission.

The standard approach: hidden form fields that auto-populate with JavaScript by reading URL parameters. When someone fills out your form, their utm_source, utm_medium, and utm_campaign get captured as CRM fields, and you can now do revenue attribution by campaign.

If your CRM doesn't have fields for utm_source and utm_medium, you're doing channel attribution in GA4 but not connecting it to revenue. This is a critical gap. Work with your RevOps team to add these fields.

Pro tip: Create UTM fields in your CRM for first-touch (how they first heard about you) and last-touch (what made them convert). This requires slightly more sophisticated form tracking, but it's the gold standard for B2B attribution.

The Bottom Line

UTM parameters are simple in concept but require discipline in practice. The teams that get clean attribution data use a governed tool — not spreadsheets or manual builders — that enforces the taxonomy. No ambiguity. No variation. Same naming, every time.

Your attribution data is only as good as your UTM discipline. If you're building links manually, you're already losing precision. The moment you scale to 10+ campaigns, manual UTMs break down.

Next Step: Governed UTM Building

Stop building UTMs manually. Use UTMStandard to enforce your taxonomy across your entire team. Define your sources, mediums, and campaigns once — then generate clean, consistent UTM links forever.

Get Started with UTMStandard

Stop building UTMs by hand

UTMStandard enforces every rule in this guide automatically. Your team builds clean links — no spreadsheets, no policing, no broken attribution.

Get started free

No credit card required · Free plan always available