What Is UTM Tracking? A Complete Guide to Using UTM Parameters

September 9, 2025
5 min read
Related product
5 min read
5 min read
Audience

Our data shows that companies don't use UTM markup in over 30% of their campaigns. Without UTMs, they are unable to accurately attribute revenue and analyze ad performance. What campaign drains your budget? Where is it advised to double the investment?

Even if your team meticulously tracks every campaign, a single typo in naming conventions can prevent you from attributing conversions to a specific campaign.

This guide provides detailed insights into UTM tracking best practices and tools to automate campaign data management that help ensure campaigns are accurately tracked and analyzed.

Key Takeaways

  • UTMs add standardized tags to URLs so GA4 can attribute sessions to the right source, medium, and campaign
  • The five core parameters are utm_source, utm_medium, utm_campaign, utm_term, and utm_content.
  • GA4 shows UTM data in Reports → Acquisition → Traffic acquisition; use dimensions like Session source/medium and Session campaign.
    Don’t use UTMs on internal links; they distort attribution and can misrepresent sessions or lead source logic.
  • Improvado automates data collection, normalizes messy UTM naming, and connects UTMs to revenue across the funnel.

What Is UTM Tracking?

UTM tracking is a standardized way to tag links so your analytics platform can attribute traffic and conversions to the right campaigns and channels. A UTM-tagged URL passes parameters that GA4 records and surfaces in acquisition reports, enabling source- and campaign-level analysis.

Why it matters: By using UTMs, marketers can see exactly where their website traffic is coming from, such as specific emails, social media posts, or paid ads, and measure the effectiveness of their marketing efforts. Without consistent UTMs, teams struggle to prove ROI, optimize budgets, or compare channels apples-to-apples. With them, you can quantify which sources and creatives move pipeline and revenue.

UTM parameters are essential for tracking the effectiveness of online marketing campaigns.
Example of a URL marked with a UTM

How Does UTM Tracking Work?

UTM tracking works by adding special parameters to the end of your destination URL. When someone clicks that link, GA4 captures those parameters, attributes the session, and reports performance based on traffic-source dimensions.

Step-by-step:

  1. Start with your destination URL, for example: https://example.com/pricing.
  2. Add UTM parameters to the end: ?utm_source=linkedin&utm_medium=cpc&utm_campaign=q4-promo.
  3. When a visitor clicks the link, their browser loads the page with the UTM parameters visible in the URL.
  4. GA4 reads these parameters and stores them at the session level, allowing you to analyze results using dimensions like Session source/medium and Session campaign.
Transform Raw UTM Data Into Business-Ready Intelligence
Eliminate manual cleanup and rogue values. Improvado harmonizes UTMs across platforms, connects them to spend and revenue data, and delivers clean, actionable insights directly to your BI tools.

The 5 Core UTM Parameters Explained

To accurately track and analyze your marketing efforts, you need to understand the five core UTM parameters. Each parameter captures specific details about where your traffic comes from and how users engage with your campaigns.

The table below explains their purpose, examples, and key notes for proper use.

Parameter Purpose Examples Notes
utm_source Where traffic originated google, linkedin, newsletter Identifies the referrer or channel owner
utm_medium The marketing medium driving the visit cpc, email, social, display Indicates how the message was delivered
utm_campaign The specific campaign associated with the traffic q4-promo, summer-sale, brand-awareness Tracks performance of a particular initiative
utm_term Keywords or paid search terms shoes, running+gear Primarily used for tracking PPC keywords
utm_content Differentiates similar links or creatives header-banner, footer-link, ad-variant-b Useful for A/B testing or multiple placements in the same campaign

How to Create UTM Codes (with Examples)

Creating UTM codes is a straightforward process. Below, we’ll walk through the steps and provide examples so you can start building UTM codes the right way.

Using Google’s Campaign URL Builder

Google’s official Campaign URL Builder (GA Dev Tools) creates compliant links and reduces syntax errors. Enter the destination URL and your parameters; it outputs a fully tagged link. 

Google's Campaign URL Builder

Example output: https://improvado.io/?utm_source=facebook&utm_medium=social&utm_campaign=new+product+launch&utm_term=marketing+analytics&utm_content=carousel-ad

Why this matters: Proper construction ensures GA4 records the parameters in acquisition reports.

Creating UTMs Manually

When building UTM codes by hand, start by adding a question mark ? before the first parameter and use an ampersand & to separate each additional parameter.

Example: https://improvado.io/blog/?utm_source=twitter&utm_medium=social&utm_campaign=blog-promo&utm_content=tweet-link

Note: While creating UTMs manually gives you full control, it’s easy to make mistakes like typos, inconsistent naming, or missing parameters. Even small errors can lead to broken tracking and unreliable reporting, so double-check every link or consider using a UTM builder for accuracy.

Where to See UTM Data in GA4

To analyze UTM data in GA4, you’ll use the Traffic acquisition report, which provides a detailed view of how different sources and campaigns drive traffic and conversions.

  • Navigate to Reports → Acquisition → Traffic acquisition.
  • In the top left, change the primary dimension to one of the UTM-based options, such as:
    • Session source/medium (combined view of traffic origin and channel)
    • Session source (e.g., google, linkedin, newsletter)
    • Session medium (e.g., cpc, email, social)
    • Session campaign (campaign names from utm_campaign)
  • Use the plus (+) icon to add secondary dimensions for deeper analysis. For example, pairing Session campaign with Session source/medium to see which campaigns perform best within each channel.

The Traffic acquisition report is designed to give you a complete picture of where users come from, how they engage, and how each traffic source impacts performance metrics like sessions, conversions, and revenue. By combining multiple dimensions, you can diagnose which campaigns drive high-quality traffic and optimize your marketing spend with confidence.

UTM Tracking Best Practices for Clean Data

Implementing UTMs correctly is critical for accurate reporting and attribution. Poor practices can lead to fragmented datasets, misattributed sessions, and unreliable performance insights. 

Follow these expert guidelines to maintain a clean and scalable UTM framework.

1. Lock a Naming Convention

Define and enforce strict rules for UTM naming.

  • Use standardized values, e.g., always use facebook instead of mixing facebook, fb, or Facebook.
  • Consistency ensures GA4 doesn’t split traffic into multiple, incomplete line items.
  • Create a UTM style guide with examples for source, medium, and campaign naming.

2. Lowercase Everything

  • GA4 treats UTM values as case-sensitive (Emailemail).
  • Require all tags to be lowercase to prevent fragmented rollups.
  • Many universities and analytics teams adopt lowercase enforcement for long-term data hygiene.

3. Avoid Internal UTMs

  • Never tag links within your own site or app with UTMs.
  • Internal tagging creates false sessions, inflates traffic, and breaks lead source attribution.
  • Use events, custom dimensions, or GA4’s enhanced measurement instead for tracking on-site interactions.

4. Shorten Long URLs

  • UTM links can become lengthy and unwieldy, especially for social or offline channels.
  • Use a URL shortener for cleaner, shareable links without losing parameter tracking.
  • This is particularly useful for SMS, QR codes, and printed materials.

5. Centralize Governance

  • Maintain a single shared registry of approved UTM values, such as a Google Sheet or internal data dictionary.
  • Include columns for source, medium, campaign, content, and term with definitions and usage notes.
  • Centralized governance improves QA, anomaly detection, and team-wide alignment.

6. Plan Attribution Up Front

  • If you use both auto-tagging (e.g., Google Ads) and manual UTMs, understand how they interact.
  • Auto-tagging will override manual values for source and medium, while manual parameters like utm_content and utm_term will still populate GA4’s manual dimensions.
  • Align with your analytics and paid media teams before launch to avoid data conflicts.

7. QA Before Launch

  • Always test links in a clean browser or incognito session before going live.
  • Confirm that clicks populate the correct GA4 acquisition dimensions and appear in your downstream warehouse or BI tool.
  • Catching errors early prevents weeks of reporting gaps or corrupted datasets.

Common UTM Tracking Mistakes to Avoid

Even experienced marketers can run into issues when setting up UTM tracking. These mistakes create messy data, broken attribution, and reporting gaps that can take weeks to untangle. 

Here’s a deeper look at the most common pitfalls and how to prevent them.

1. Using UTMs on Internal Links

Why it’s a problem: Tagging links within your own site or app with UTMs creates false sessions and overwrites the original traffic source.

This causes attribution noise, making it look like users are “arriving” multiple times in the same session from internal campaigns.

It can also trip lead-source logic in CRMs, resulting in incorrect pipeline attribution.

Best practice: Track internal navigation using GA4 events or custom dimensions, never UTMs.

2. Mixing Up Source and Medium

Correct definition:

  • Source = who sent the traffic (e.g., google, linkedin, newsletter).
  • Medium = how it arrived (e.g., cpc, email, social, referral).

Why it matters: GA4 documentation and leading analytics frameworks use this convention universally. Swapping these fields breaks consistency across reports, confuses attribution, and makes cross-channel comparisons unreliable.

3. Inconsistent Capitalization and Separators

Using different capitalization or formatting, like SummerSale, Summer-Sale, and summer-sale, for the same campaign. GA4 treats each variation as a separate value, fragmenting data and inflating the number of line items in reports.

Best practice: Standardize on lowercase with hyphens (e.g., summer-sale) and enforce it through a shared style guide or automated validation. Many advanced teams add data validation rules within their ETL or data governance platforms to prevent rogue UTMs from entering their pipeline.

4. Stopping Analysis at Clicks

Counting clicks or sessions alone doesn’t tell you if marketing is generating revenue or long-term value. Without connecting UTMs to CRM or transaction data, you’re only measuring activity, not business impact.

Best practice: Integrate UTM data with sales and revenue systems to track pipeline influence and customer lifetime value (LTV). Build reports that tie top-of-funnel campaigns to downstream outcomes like closed deals and recurring revenue. This allows for smarter budget allocation and true ROI measurement.

5. Overusing Custom Parameters Without Documentation

Some teams add extra, non-standard parameters like utm_team or utm_geo without centralized governance.

Without documentation, these parameters become difficult to maintain and lead to confusion across analytics teams.

Always log custom parameters in a shared data dictionary and ensure they have clear definitions and use cases.

Governance: UTM Taxonomy & Approval Checklist

A strong governance framework ensures clean, accurate UTM data across teams and campaigns. Without consistent rules and approval processes, marketing data becomes fragmented, creating reporting gaps and attribution errors. 

Below is a recommended taxonomy template and a pre-launch approval checklist to help enforce standards at scale.

Use this taxonomy template as a baseline structure. Adapt the allowed values to fit your organization’s channels and campaign naming strategy.

Field Allowed Values (Examples) Rules
utm_source google, bing, linkedin, facebook, newsletter, partner-x Lowercase only; identify the referrer or traffic owner (no spaces).
utm_medium cpc, organic, social, email, affiliate, display Lowercase only; one canonical medium per channel type.
utm_campaign 2025-q1-launch, abm-target, product-release, webinar-invite Lowercase; hyphens for separators; no spaces; include date prefix only if needed.
utm_term running+shoes, tennis+lessons Use for paid search keywords; lowercase only.
utm_content creative-a, text-cta, banner-300x250, button-v2 Identify ad variants or placements; lowercase with hyphens.

Approval Checklist (Gate Before Launch)

This checklist acts as a quality gate to ensure every UTM link entering production meets governance standards:

  1. Naming matches the dictionary: All values must follow the approved naming taxonomy.
  2. Consistent formatting: All lowercase; hyphens for separators (e.g., linkedin-cpc, not LinkedIn CPC).
  3. No internal UTMs: Links inside your own site or app must not use UTMs; use events or custom dimensions instead.
  4. Functional testing in GA4: Click the link from an incognito session and verify correct population of Session source/medium, Session campaign, and other acquisition dimensions in GA4’s Realtime report.
  5. Campaign mapped to attribution models: Confirm the campaign is correctly linked to reporting views, downstream BI, and CRM integrations for full-funnel analysis.
  6. Final review by governance owner: A designated team or data steward signs off before deployment.

A well-governed UTM process ensures accuracy at every stage of the marketing data pipeline. It reduces manual cleanup, enables trustworthy attribution, and keeps analytics teams aligned across paid, organic, and offline campaigns. Centralizing UTM standards also makes scaling to new platforms, agencies, or markets seamless, while protecting the integrity of your analytics ecosystem.

Rollout Playbook: Enterprise-Grade UTM Governance (10 Steps)

Establishing a scalable, enterprise-level UTM governance framework ensures consistent tracking, reliable attribution, and clean data for advanced analytics. 

This playbook provides a step-by-step rollout plan to build a mature system that minimizes errors, aligns teams, and connects marketing data to business outcomes.

  1. Define Taxonomy & Ownership: Create a master list of approved utm_source, utm_medium, utm_campaign, and utm_content values with clear definitions. Assign a dedicated data steward or governance team to maintain and enforce these standards.
  2. Publish Standards: Document lowercase-only rules, hyphen separators, and formatting examples for each channel. Store this in your enablement hub so all teams have easy access.
  3. Provide a Shared UTM Builder: Use Google's Campaign URL Builder or a custom form with pre-filled, approved values to reduce manual errors and ensure consistency across campaigns.
  4. Establish Approvals: Set up a lightweight workflow in Slack or Jira where all new UTMs are reviewed and approved within 24 business hours, creating accountability and audit history.
  5. QA Before Launch: Test tagged links in an incognito browser session. Verify that GA4 dimensions like Session source/medium and Session campaign populate correctly and align with downstream warehouse data.
  6. Automate Anomaly Detection: Schedule weekly checks to flag and fix off-dictionary values like "FB" or "Email." This prevents reporting fragmentation and ensures clean rollups.
  7. Normalize During Transformation: Leverage Improvado to automatically harmonize naming variations (e.g., Facebook vs. FB) during ETL, so GA4, BI, and reporting tools stay clean across teams and markets.
  8. Connect UTMs to Revenue: Integrate GA4, ad platforms, and your CRM to link UTM data to pipeline, deals, and lifetime value, enabling true ROI and budget optimization.
  9. Align Attribution Rules: Document how auto-tagging interacts with manual UTMs to avoid conflicts and clarify how GA4 processes term and content data.
  10. Report & Iterate: Publish a monthly scorecard of top sources, mediums, and campaigns with ROI insights and data quality metrics. Use findings to evolve taxonomy and governance as channels grow.

How Improvado Helps Automate UTM Data Management

As marketing campaigns grow, manual UTM tracking quickly becomes unmanageable. Teams create inconsistent labels, data silos form, and executives lose confidence in reported ROAS and attribution. 

Improvado solves this problem by fully automating the UTM data lifecycle, from collection to governance, ensuring clean, reliable data across your entire marketing ecosystem.

Improvado’s solution:

  • Centralized Data Collection: Connect to 500+ sources, including ad platforms, analytics tools, and CRMs. All UTM-bearing data flows into a single, centralized hub for modeling, governance, and reporting.
  • Normalization and Cleansing: Automatically standardize naming variations (for example, facebook/FB/Facebook → facebook) to maintain a unified taxonomy and prevent fragmented reporting.
  • Unified Reporting and BI Integration: Combines UTMs with spend, pipeline, and revenue data to create actionable, cross-channel views in tools like Tableau, Looker Studio, and Power BI.
  • Governance and Approvals: Enforce your UTM dictionary at the pipeline level. Noncompliant or rogue values are automatically corrected before data reaches dashboards, keeping reports consistent and trustworthy.

With Improvado, marketing teams replace time-consuming manual work with a fully automated, enterprise-grade system, giving stakeholders complete visibility and confidence in campaign performance data.

Centralize UTM Data for Smarter Attribution and Reporting
As campaigns grow, manual UTM tracking can’t keep up. Improvado automates collection, normalization, and governance, giving you a single source of truth for cross-channel reporting, attribution, and revenue insights.

FAQ

What are UTM parameters used for?

UTM parameters identify the traffic source, medium, and campaign that referred a session to your site, enabling accurate channel and campaign attribution in GA4.

How do I create a UTM link?

Use Google’s Campaign URL Builder to fill out the source, medium, and campaign fields, plus optional term and content. It will generate a complete URL with the UTM parameters applied.

Where do I see UTMs in GA4?

Go to Reports → Acquisition → Traffic acquisition. Change the dimension to Session source/medium, Session source, Session medium, or Session campaign. Use the plus icon to add secondary dimensions for deeper analysis.

What does UTM stand for?

UTM stands for Urchin Tracking Module, named after Urchin Software, which was acquired by Google. UTMs were carried over into Google Analytics as a core attribution method.

Should I use UTMs on internal site links?

No. Adding UTMs to internal links can distort attribution and lead-source logic. Use GA4 events or page path analysis for internal tracking instead.

Are UTMs free?

Yes, UTMs are simply URL parameters. GA4, which processes these parameters, offers a free tier for basic analytics needs.

What’s the difference between UTM and GTM?

UTM parameters are used in URLs to track traffic sources for attribution. GTM (Google Tag Manager) is a tag deployment and management tool that helps you manage various marketing and analytics tags, but it doesn’t perform attribution on its own.

Do auto-tagging and UTMs conflict?

If both are enabled, such as with Google Ads, auto-tagging takes precedence for source and medium values. Manual parameters like utm_term and utm_content still populate GA4's manual dimensions.

Which parameters are required?

Use at least utm_source, utm_medium, and utm_campaign for coherent reporting. These three are emphasized by Google's URL builder as essential for tracking.

How granular should utm_content be?

Make utm_content specific enough to distinguish different creative assets or placements, such as banners, buttons, or text CTAs. However, avoid over-segmentation that makes your UTM dictionary overly complex.

⚡️ Pro tip

"While Improvado doesn't directly adjust audience settings, it supports audience expansion by providing the tools you need to analyze and refine performance across platforms:

1

Consistent UTMs: Larger audiences often span multiple platforms. Improvado ensures consistent UTM monitoring, enabling you to gather detailed performance data from Instagram, Facebook, LinkedIn, and beyond.

2

Cross-platform data integration: With larger audiences spread across platforms, consolidating performance metrics becomes essential. Improvado unifies this data and makes it easier to spot trends and opportunities.

3

Actionable insights: Improvado analyzes your campaigns, identifying the most effective combinations of audience, banner, message, offer, and landing page. These insights help you build high-performing, lead-generating combinations.

With Improvado, you can streamline audience testing, refine your messaging, and identify the combinations that generate the best results. Once you've found your "winning formula," you can scale confidently and repeat the process to discover new high-performing formulas."

VP of Product at Improvado
This is some text inside of a div block
Description
Learn more
UTM Mastery: Advanced UTM Practices for Precise Marketing Attribution
Download
Unshackling Marketing Insights With Advanced UTM Practices
Download
Craft marketing dashboards with ChatGPT
Harness the AI Power of ChatGPT to Elevate Your Marketing Efforts
Download

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.