TL;DR: UTM parameters are tags you add to URLs so Google Analytics 4 can tell you exactly where your traffic comes from. There are five main ones —
utm_source,utm_medium,utm_campaign,utm_term, andutm_content— and using them consistently is the difference between guessing which campaigns work and actually knowing. This guide covers what each parameter does, how to build tagged URLs, naming conventions, and the mistakes that wreck your data.
What are UTM parameters?
UTM parameters (short for Urchin Tracking Module) are small text tags appended to the end of a URL. When someone clicks a tagged link, Google Analytics 4 reads those tags and attributes the visit to the correct source, medium, and campaign. Once your UTM parameters are set up correctly, Meaning's AI chatbot for Google Analytics lets you ask questions like "which campaign drove the most traffic this month?" and get instant answers from your GA4 data.
Here's what a tagged URL looks like:
https://yoursite.com/pricing?utm_source=linkedin&utm_medium=social&utm_campaign=q1_launch
Everything after the ? is a query string. Each utm_ parameter tells GA4 something specific about where and why that click happened.
Without UTM parameters, GA4 does its best to categorise traffic automatically — but it often gets it wrong. Newsletter traffic might appear as "direct." A Facebook ad click might be lumped in with organic social. UTM parameters give you control over how traffic is classified, so your reports actually reflect reality.
The five UTM parameters explained
GA4 recognises five standard UTM parameters. Three are essential; two are optional but useful.
utm_source (Required)
This identifies where the traffic comes from — the specific platform, website, or publisher.
Examples:
utm_source=googleutm_source=linkedinutm_source=newsletterutm_source=partner_blog
Think of it as answering: "Which website or platform sent this visitor?"
utm_medium (Required)
This identifies the marketing channel or type of traffic. It tells GA4 how the visitor arrived.
Examples:
utm_medium=cpc(paid search)utm_medium=social(social media post)utm_medium=email(email campaign)utm_medium=referral(partner link)utm_medium=display(banner ads)
The medium is crucial because GA4 uses it to group traffic into default channel groups like Paid Search, Email, Organic Social, and so on. Use the wrong medium value and your traffic ends up in the wrong channel.
utm_campaign (Required)
This identifies the specific campaign or promotion. It's your label for the marketing initiative.
Examples:
utm_campaign=spring_sale_2026utm_campaign=product_launch_febutm_campaign=weekly_digest_07
This is where you get creative — but consistent. Your campaign name should be immediately recognisable to anyone on your team looking at the data six months later.
utm_term (Optional)
Originally designed for paid search keywords, utm_term captures the keyword or targeting criteria that triggered the ad.
Examples:
utm_term=running+shoesutm_term=saas+analytics+tool
If you're running Google Ads with auto-tagging enabled, you don't need this — Google handles it automatically. It's more useful for Bing Ads, paid social targeting, or any platform where you want to track which audience segment or keyword drove the click.
utm_content (Optional)
This differentiates variations within the same campaign. It's perfect for A/B testing or when you have multiple links pointing to the same page.
Examples:
utm_content=hero_bannerutm_content=sidebar_ctautm_content=blue_button_v2
Use it to answer: "Which specific link or creative did they click?"
How to build UTM-tagged URLs
You have three main options for creating tagged URLs:
1. Google's campaign URL builder
Google provides a free Campaign URL Builder specifically for GA4. Fill in the fields, and it generates the tagged URL for you.
2. spreadsheet templates
For teams running dozens of campaigns, a shared spreadsheet works well. Create columns for each parameter, a formula to concatenate them into the final URL, and a column for the shortened link. This becomes your single source of truth.
3. UTM management tools
Dedicated tools like UTM.io or CampaignTrackly let teams create, store, and enforce UTM conventions at scale. These are worth considering once your team grows beyond a few people.
Whichever method you choose, the important thing is that everyone on your team uses the same one. Scattered UTM creation is how you end up with utm_source=Facebook in one campaign and utm_source=facebook in another — which GA4 treats as two completely different sources.
UTM naming conventions that actually work
Inconsistent naming is the single biggest problem with UTM tracking. GA4 treats Email, email, and EMAIL as three separate values. Here are the rules that prevent data chaos:
Rule 1: always use lowercase
Standardise on lowercase for everything. No exceptions.
- ✅
utm_source=facebook - ❌
utm_source=Facebook
Rule 2: use underscores or hyphens, not spaces
Spaces become %20 in URLs, which looks messy and can cause issues.
- ✅
utm_campaign=spring_sale_2026 - ❌
utm_campaign=spring sale 2026
Rule 3: be specific but concise
Your future self needs to understand what utm_campaign=q1_email_03 means. But utm_campaign=quarterly_email_newsletter_third_edition_january_2026_version_b is overkill.
A good format: [initiative]_[channel]_[date/number]
Rule 4: match GA4's default channel grouping
Key Takeaway: If your
utm_mediumvalue doesn't match GA4's expected list (e.g.cpc,social,display), your traffic lands in "Unassigned" and becomes nearly impossible to analyse by channel.
GA4 automatically sorts traffic into channels based on the utm_medium value. If you use non-standard medium values, your traffic lands in the "Unassigned" channel — which helps nobody.
Here are the medium values GA4 expects:
| Channel Group | Use This Medium Value |
|---|---|
| Paid Search | cpc or ppc |
| Display | display or banner |
email | |
| Organic Social | social |
| Paid Social | paid_social |
| Affiliate | affiliate |
| Referral | referral |
Rule 5: document everything
Create a living document (a simple spreadsheet works) that lists every approved source, medium, and campaign name. Share it with anyone who creates links. This is non-negotiable for teams.
Where to use UTM parameters (and where not to)
Use UTM tags on:
- Email campaigns — Every link in every email should be tagged. Without UTMs, email traffic often appears as "direct" in GA4.
- Social media posts — Organic and paid social links should be tagged differently (
utm_medium=socialvsutm_medium=paid_social). - Paid advertising — For platforms other than Google Ads (which has auto-tagging). Tag your Meta, LinkedIn, TikTok, and X ad links.
- Partner and affiliate links — Track which partners drive quality traffic.
- QR codes — Tag the destination URL so you can measure offline-to-online campaigns.
- SMS campaigns — Same as email — without tags, it'll show as direct.
Never use UTM tags on:
- Internal links — Tagging links within your own website resets the session source, destroying your attribution data. This is one of the most common and damaging mistakes.
- Google Ads — Use auto-tagging (gclid) instead. Manual UTMs and auto-tagging can conflict.
- Organic search results — You can't tag these anyway, and GA4 handles organic search attribution automatically.
How UTM data appears in GA4 reports
Once your tagged links are live and generating clicks, you can find the data in several places within GA4.
Traffic Acquisition report
Navigate to Reports → Acquisition → Traffic acquisition. This report shows session-level data broken down by:
- Session source — your
utm_sourcevalue - Session medium — your
utm_mediumvalue - Session campaign — your
utm_campaignvalue - Session default channel group — derived from your medium value
You can switch the primary dimension to see any of these breakdowns, or add a secondary dimension to drill deeper (e.g., see campaigns broken down by source).
User Acquisition report
The User acquisition report (Reports → Acquisition → User acquisition) shows similar data but attributes everything to the first touchpoint — the source that originally brought the user to your site. This is useful for understanding which channels are best at attracting new users.
Explorations
For more flexible analysis, use GA4's Explorations (Explore → Free form). Here you can combine source, medium, campaign, content, and term dimensions with any metric — conversions, revenue, engagement rate, you name it. This is where UTM data really shines, letting you compare campaigns side by side with full control over the visualisation.
Asking questions in plain English
If navigating GA4's interface feels cumbersome, tools like Meaning let you ask questions about your UTM data conversationally. Instead of clicking through reports, you could ask "Which campaign drove the most conversions last month?" or "Show me traffic from email campaigns this quarter" and get instant answers. It's particularly handy when you need a quick comparison without building a custom exploration.
Real-world UTM examples
Let's walk through practical examples for different marketing channels.
Email newsletter
You're sending your weekly newsletter with a link to a new blog post:
https://yoursite.com/blog/new-post
?utm_source=newsletter
&utm_medium=email
&utm_campaign=weekly_digest_07_2026
&utm_content=hero_link
If the same post is linked in both the hero section and a sidebar, use utm_content to differentiate:
- Hero link:
utm_content=hero_link - Sidebar link:
utm_content=sidebar_link
LinkedIn ad campaign
Running a paid campaign on LinkedIn promoting a webinar:
https://yoursite.com/webinar-signup
?utm_source=linkedin
&utm_medium=paid_social
&utm_campaign=webinar_feb_2026
&utm_content=carousel_ad_v1
Influencer partnership
You've partnered with an industry blogger:
https://yoursite.com/pricing
?utm_source=techblogger_jane
&utm_medium=referral
&utm_campaign=influencer_q1_2026
QR code on a flyer
Distributing physical flyers at a conference:
https://yoursite.com/demo
?utm_source=conference_flyer
&utm_medium=qr_code
&utm_campaign=saas_expo_2026
This lets you measure exactly how many people scanned your flyer and what they did on your site afterwards.
Common UTM mistakes (and how to fix them)
Mistake 1: tagging internal links
Key Takeaway: Adding UTM parameters to internal links is one of the most damaging analytics mistakes possible. Each click resets the user's session source, destroying your attribution data for that visit entirely.
The problem: You add UTM parameters to links on your own website — like navigation menus, banners, or cross-page CTAs.
Why it's bad: Every time someone clicks an internal UTM-tagged link, GA4 starts a new session with that UTM as the source. Your original traffic source data is overwritten. Suddenly, your reports show most traffic coming from... yourself.
The fix: Never use UTM parameters on internal links. Use GA4's built-in content grouping or custom events to track internal navigation.
Mistake 2: inconsistent capitalisation
The problem: One team member uses utm_source=Facebook, another uses utm_source=facebook, and a third uses utm_source=fb.
Why it's bad: GA4 treats these as three separate sources. Your Facebook traffic is fragmented across multiple entries, making it impossible to see the full picture.
The fix: Enforce lowercase-only naming and maintain a shared naming convention document. Review your Traffic Acquisition report periodically for inconsistencies.
Mistake 3: using vague campaign names
The problem: Campaign names like utm_campaign=test or utm_campaign=campaign1 offer no useful information.
Why it's bad: When you're reviewing performance three months later, you have no idea what "campaign1" was. Neither does anyone else on your team.
The fix: Use descriptive, structured names: [initiative]_[detail]_[date]. For example: product_launch_crm_mar2026.
Mistake 4: forgetting to tag email links
The problem: You send thousands of emails but don't add UTM parameters to the links.
Why it's bad: Email clients often strip referrer data. Without UTMs, most email traffic appears as "direct" in GA4 — making your email marketing look less effective than it actually is.
The fix: Tag every link in every email. Most email platforms (Mailchimp, HubSpot, Klaviyo) have built-in UTM fields that auto-append parameters.
Mistake 5: over-complicating parameters
The problem: Using 15 different source values for the same platform, or encoding entire paragraphs into campaign names.
Why it's bad: More complexity means more room for error and harder-to-read reports.
The fix: Keep it simple. Most organisations need fewer than 10 source values and a clear campaign naming template.
GA4-specific UTM considerations
GA4 introduced a few nuances worth knowing:
utm_id (campaign ID)
GA4 supports a sixth parameter — utm_id — which lets you assign a unique identifier to a campaign. This is useful for linking GA4 data to external systems (like your ad platform or CRM) through data import.
Auto-tagging vs manual tagging
If you're running Google Ads, auto-tagging is always preferred over manual UTM tagging. Auto-tagging uses a gclid parameter that sends richer data to GA4, including keyword, ad group, and creative details. Manual UTMs can't match this level of detail.
For all other platforms (Meta, LinkedIn, TikTok, email, SMS), manual UTM tagging is the way to go.
The 90-day lookback window
GA4's default attribution lookback window is 30 days for acquisition events and 90 days for all other conversion events. This means if someone clicks your UTM-tagged link today and converts 45 days later, the conversion is still attributed to that campaign — as long as it's within the lookback window.
Auditing your UTM strategy
If you've been using UTMs for a while, it's worth auditing your data. Here's a quick process:
-
Open GA4 → Reports → Acquisition → Traffic acquisition
-
Set the primary dimension to "Session source / medium"
-
Look for anomalies:
- Duplicate sources with different capitalisation
- "(not set)" values — usually means missing UTM tags
- Your own domain appearing as a source — means internal links are tagged
- "Unassigned" channel group — means your medium values don't match GA4's expected values
-
Check campaign names by switching the dimension to "Session campaign" and scanning for vague or inconsistent entries
Tools like Meaning can speed up this audit process. Ask something like "Show me all traffic sources for the last 90 days" or "Which campaigns have the highest bounce rate?" to quickly spot problems without manually filtering through GA4's interface.
Frequently asked questions
What are UTM parameters in Google Analytics 4?
UTM parameters are tags added to URLs that tell Google Analytics 4 where traffic comes from. They include utm_source (the platform), utm_medium (the channel type), utm_campaign (the campaign name), and optionally utm_term and utm_content for additional tracking detail.
How many UTM parameters should I use?
At minimum, use three: utm_source, utm_medium, and utm_campaign. These are required for proper campaign tracking. Add utm_content when running A/B tests or using multiple links in the same campaign, and utm_term for paid keyword tracking outside of Google Ads.
Are UTM parameters case-sensitive in GA4?
Yes. Google Analytics 4 treats utm_source=Facebook and utm_source=facebook as two different sources. Always use lowercase to keep your data clean and consistent across all campaigns.
Should I use UTM parameters on Google Ads?
No. Google Ads uses auto-tagging (gclid) which provides richer data to GA4 than manual UTMs. Use UTM parameters for non-Google platforms like Meta Ads, LinkedIn, email campaigns, and partner referrals.
Can UTM parameters break my website or affect SEO?
UTM parameters do not affect your website's functionality or SEO rankings. Google ignores UTM query strings when indexing pages. However, you should use canonical tags to prevent duplicate content issues if search engines encounter multiple URL variations.
Why does my email traffic show as "direct" in GA4?
Email clients often strip referrer information when users click links. Without UTM parameters, GA4 cannot identify the traffic source and defaults to "direct." Adding UTM tags to every link in your emails ensures the traffic is correctly attributed to your email campaigns.
Wrapping up
UTM parameters are one of the simplest yet most powerful tools in your analytics toolkit. They cost nothing, take minutes to set up, and transform your GA4 data from vague guesswork into actionable campaign intelligence.
The key principles are straightforward: always use lowercase, stick to consistent naming conventions, tag every external link, never tag internal links, and document your conventions so your whole team stays aligned.
Start with the three required parameters — source, medium, and campaign — and layer in term and content as your tracking matures. Audit your data regularly, and you'll always know exactly which marketing efforts are driving results.
If you want to skip the report navigation and just ask questions about your campaign performance, Meaning connects to your GA4 property and lets you query your UTM data in plain English — no clicking through menus required.