You sent three campaigns last month. An email newsletter, a Facebook post, and a Google ad all pointing to the same landing page. Traffic went up. Your boss is happy. Then comes the question you were not prepared for: “Which campaign actually drove those results?”
You open Google Analytics 4. You stare at the screen. Everything is showing as “Direct” or “Unassigned.” You have no idea which channel did the heavy lifting. Was it the email? The Facebook post? The ad you paid £300 for?
That exact situation plays out in marketing teams every single day. And the fix is not complicated. It is called UTM parameters, and once you understand how they work, you will never run a campaign without them again.
In this guide, you’ll discover everything you need to know about UTM parameters, including: what they are, what they mean, how to build them step by step, real copy-paste examples for every channel, where to find your data in Google Analytics 4 (GA4), and the mistakes that silently corrupt your attribution data.
What Are UTM Parameters?
UTM parameters are short pieces of text you add to the end of any URL prior to sharing it. The destination of the link remains the same. Tracking information runs in the background, which tells your analytics platform exactly where each individual visitor was sourced from, what type of channel was responsible for bringing them in, and from which specific campaign.
UTM stands for Urchin Tracking Module. The name comes from a company called Urchin Software Corporation, a web analytics business founded in 1998. Google acquired Urchin in 2005 and used its technology as the foundation for what became Google Analytics. The UTM tracking format that Urchin created became an open industry standard — which is why UTM parameters work in HubSpot, Mixpanel, Adobe Analytics, and virtually every other analytics platform, not just Google.
The most important thing to understand right away: UTM parameters are not a Google-only system. Learn them once, and that knowledge works everywhere.
Think of a URL without UTM parameters like a parcel with no tracking number. You know it arrived. You can see it sitting there. But you have no idea where it shipped from, which carrier brought it, or what route it took. UTM parameters are the tracking number on every link you send into the world.
Here is what a UTM-tagged URL actually looks like:
https://techaitech.com/article/
?utm_source=newsletter ← WHERE (the referrer)
&utm_medium=email ← HOW (the channel type)
&utm_campaign=april-2026 ← WHY (the campaign name)
&utm_content=top-banner ← WHICH (the specific creative)
The 5 UTM Parameters Explained (Plus the 6th One Most Guides Miss)
There are five standard UTM parameters. Three of them are required every single time you build a UTM link. The other two are optional but incredibly useful once you start running more sophisticated campaigns.
| Parameter | Required? | Purpose | Example Value |
| utm_source | Yes | WHERE traffic came from | Google, newsletter, Facebook |
| utm_medium | Yes | HOW they arrived (channel type) | email, cpc, social |
| utm_campaign | Yes | WHICH campaign does this belong to | spring-sale-2026 |
| utm_term | Optional | Paid search keyword | ai+email+tools |
| utm_content | Optional | Differentiates creatives | header-cta, version-b |
| utm_id | Optional | Campaign ID for GA4’s data model | abc. 123 |
utm_source – Where Did This Visitor Come From?
utm_source identifies the specific name of the platform, website, or sender that delivered this traffic to you. Common values include Google, Facebook, Instagram, LinkedIn, newsletter, and partner blog.
One common mistake: do not use a generic value like utm_source=social for both Facebook and Instagram. Give each platform its own specific source value.
utm_medium — How Did They Get Here?
utm_medium identifies the type of marketing channel. Common values include email, cpc, social, paid-social, referral, qr-code, and affiliate.
Source = the name. Medium = the type. Facebook is a source. Social is a medium. Google is a source. CPC is a medium.
| Scenario | utm_source | utm_medium |
| Google organic search | organic | |
| Google paid ad | cpc | |
| Facebook organic post | social | |
| Facebook paid ad | paid-social | |
| Email newsletter | newsletter | |
| Partner website link | partnersitename | referral |
| LinkedIn sponsored post | paid-social | |
| QR code on a flyer | event-flyer | qr-code |
utm_campaign — Which Campaign Is This?
utm_campaign names the specific marketing initiative this link belongs to. Always be specific. Include the campaign type and the date. utm_campaign=email tells you nothing six months later. utm_campaign=newsletter-aitools-apr-2026 tells you everything.
utm_term — What Keyword Triggered the Ad? (Optional)
Primarily used in paid search campaigns. Spaces in keyword values get replaced with + signs. Most small business owners and bloggers will not need this parameter — it is primarily for PPC specialists.
utm_content — Which Creative Version? (Optional)
Used to differentiate between multiple links or creatives within the same campaign. Invaluable for A/B testing. Skip this parameter until you are actively running A/B tests.
utm_id — The 6th Parameter Most Guides Miss
utm_id is a newer parameter added to support GA4’s updated data model. It links a campaign to a specific ID in your advertising platform. Most small businesses will not need it day-to-day, but it is worth knowing it exists, especially if you manage paid campaigns in Google Ads at scale.
How to Create UTM Parameters — Step by Step
Method 1: Google’s Free Campaign URL Builder (Best for Beginners)
Google provides a free official UTM builder at ga-dev-tools.google/campaign-url-builder/. No account required. No cost. It handles all the formatting automatically.
- Go to ga-dev-tools.google/campaign-url-builder/
- Paste your destination URL into the “Website URL” field
- Fill in Campaign Source (e.g., newsletter)
- Fill in Campaign Medium (e.g., email)
- Fill in Campaign Name (e.g., april-2026-digest)
- Optionally add Campaign Content and Campaign Term if needed
- Copy the generated URL from the bottom of the form
- Paste the URL into a browser and test it — confirm the parameters appear after the ?
- For social media posts, shorten the URL using Bitly before publishing
- Save the full UTM URL in your tracking spreadsheet before using it
Pro tip: The builder is the safest way to create your first UTM links because it handles the ? and & formatting automatically. Manual errors with these characters are the most common reason UTM links break.
Method 2: Building UTM URLs Manually
Once you understand the structure, building UTM links by hand in a text editor is fast and easy. The rules:
- The base URL always comes first
- The first parameter is always preceded by?
- Every subsequent parameter is preceded by &
- No spaces anywhere — use hyphens – instead
- Always use lowercase
[Base URL]?utm_source=[source]&utm_medium=[medium]&utm_campaign=[campaign-name]
Real example:
https://techaitech.com/article/
?utm_source=facebook
&utm_medium=social
&utm_campaign=product-launch-may-2026
| Mistake | Broken | Correct |
| Space in value | utm_campaign=spring sale | utm_campaign=spring-sale |
| Missing? | example.com&utm_source=google | example.com?utm_source=google |
| Using? between params | utm_source=google?utm_medium=cpc | utm_source=google&utm_medium=cpc |
| Mixed case | utm_source=Google | utm_source=google |
Method 3: The UTM Spreadsheet Tracker (The Professional Way)
This is the step most marketers skip — and it is the reason their GA4 data eventually becomes a mess. A UTM tracking spreadsheet is a master log with one row per UTM link you create. If you are already using Google Workspace for your business, you can build this tracker directly inside Sheets and share it with your team.
| Column | What to Record |
| Date Created | When the UTM link was built |
| Campaign Name | The campaign this link belongs to |
| Destination URL | The base URL before UTMs |
| utm_source | The source value used |
| utm_medium | The medium value used |
| utm_campaign | The campaign value used |
| utm_content | The content value if used |
| Full UTM URL | The complete generated URL |
| Shortened URL | The Bitly link if created |
| Notes | Creative description, A/B variant info |
Real UTM Examples by Channel
UTM Parameters for Email Marketing
Email is the most common and highest-ROI UTM use case. Every link inside a marketing email should be tagged — CTAs, banner images, text links, everything. If you want to get more out of your email campaigns beyond tracking, our guide on using AI for email marketing walks through how to use AI tools to write, personalise, and optimise your emails — the kind of campaigns that are worth tagging properly with UTMs in the first place.
And if writing those email campaigns is the part you find time-consuming, it is worth reading how marketers are now using ChatGPT to write emails — from subject lines to full sequences — so you spend your time on strategy rather than drafting.
Newsletter top CTA:
https://techaitech.com/article/
?utm_source=mailchimp&utm_medium=email
&utm_campaign=april-2026-digest&utm_content=top-cta
Newsletter footer link:
https://techaitech.com/article/
?utm_source=mailchimp&utm_medium=email
&utm_campaign=april-2026-digest&utm_content=footer-link
UTM Parameters for Social Media
Use utm_medium=social for organic posts and utm_medium=paid-social for sponsored content. Each platform gets its own utm_source value. Always shorten UTM URLs using Bitly or Rebrandly before posting — long UTM strings look spammy in social feeds.
Facebook organic post:
https://techaitech.com/article/?utm_source=facebook&utm_medium=social&utm_campaign=content-may-2026
LinkedIn sponsored post:
https://techaitech.com/article/?utm_source=linkedin&utm_medium=paid-social
&utm_campaign=b2b-lead-gen-q2&utm_content=sponsored-carousel
UTM Parameters for Google Ads
Google Ads has its own automatic tracking system called gclid. When auto-tagging is enabled in your Google Ads account — which it is by default — you do not need manual UTM parameters. GA4 receives the campaign data automatically via gclid.
Only add manual UTMs to Google Ads URLs if auto-tagging is disabled, or if you are using a third-party analytics tool that cannot read gclid. Running both simultaneously causes gclid to overwrite your manual UTMs, creating conflicting data.
Manual Google Ads UTM (when auto-tagging is off):
https://techaitech.com/article/
?utm_source=google&utm_medium=cpc
&utm_campaign=ai-tools-2026&utm_term=ai+email+marketing&utm_content=headline-v1
UTM Parameters for Affiliate and Partner Links
Affiliate links are one of the most important UTM use cases. Without them, partner traffic shows up as Direct or Unassigned in GA4. If you are in the early stages of monetising your blog through affiliate partnerships, our blog monetization guide for beginners covers exactly how affiliate income works and why tracking each partner source separately from day one protects your data long-term.
Partner blog referral:
https://techaitech.com/article/
?utm_source=partnerblog&utm_medium=referral
&utm_campaign=affiliate-q2&utm_content=sidebar-banner
UTM Parameters for Offline Marketing and QR Codes
UTMs work offline too. Generate a QR code from a full UTM-tagged URL and print it on a flyer, poster, or business card. When someone scans it, GA4 records exactly which physical material brought them to your site.
Conference booth QR code:
https://techaitech.com/article/
?utm_source=event-flyer&utm_medium=qr-code&utm_campaign=conference-2026
UTM Naming Convention — The System That Keeps Your Data Clean
All the UTM knowledge in the world is useless if your team tags utm_source=Facebook one week and utm_source=facebook the next. GA4 will split those into two separate rows. Your Facebook traffic will appear to come from two different sources. This is one of the most common reasons marketing teams end up with GA4 data that is impossible to trust.
A naming convention is a set of agreed rules that defines exactly how every UTM parameter value should be formatted across your whole team. Set it up once, document it, enforce it.
The six rules of a clean UTM naming convention:
- Rule 1 — Always use lowercase. utm_source=facebook ✅ utm_source=Facebook ❌
- Rule 2 — Use hyphens, not spaces or underscores. utm_campaign=spring-sale-2026 ✅
- Rule 3 — Be specific in campaign names. Include date or quarter. utm_campaign=newsletter-aitools-apr-2026 ✅
- Rule 4 — Fix your medium values and never change them. Consistency is everything.
- Rule 5 — Document every convention in a shared reference sheet. No exceptions.
- Rule 6 — Never change a convention mid-campaign. Apply updates at the start of the next campaign only.
How to Find UTM Data in Google Analytics 4
Once you have UTM-tagged links out in the world and generating traffic, here is exactly where to find that data in GA4. For a deeper overview of how GA4 tracks sessions and attribution, the official Google Analytics Help Center is the authoritative reference.
- Sign in to GA4 at analytics.google.com
- Select your property from the top-left dropdown
- In the left sidebar, click Reports
- Navigate to Acquisition → Traffic acquisition
- Click the dimension dropdown and switch to Session source / medium or Session campaign
- To filter by a specific campaign, click Add filter and filter by “Session campaign.”
- For a full breakdown, go to Explore → Free form exploration and add all UTM dimensions
Why your UTM data might not be showing:
- The UTM link was never actually clicked — test it by pasting it in a browser and checking GA4’s Realtime report
- GA4 is not installed on the destination page — check using the GA4 Debugger Chrome extension
- You used UTMs on internal links — remove them immediately
- Mixed case in UTM values — your data is there, but split across multiple rows
- A server-side redirect is stripping the query string before the page loads
Do UTM Parameters Hurt SEO? The Honest Answer
No. UTM parameters have no effect on your search engine rankings. Google recognises ?utm_source= as a known tracking parameter and strips it before indexing. Your canonical URL — the clean one without any UTM strings — is what gets indexed, ranked, and shown in search results.
If your site uses canonical tags (it should), those point to the base URL anyway, which reinforces to Google’s crawler that the UTM version is just a tracking variant, not a separate page.
Never use UTM parameters on links between pages on your own website.
When a visitor clicks an internal UTM-tagged link, GA4 starts a brand new session and replaces their original traffic source with whatever the internal UTM says. The original attribution is gone for that session, permanently.
While you are thinking about how pages are found and clicked, it is also worth getting your meta descriptions right — because a well-written meta description is what convinces someone to click your link in the first place, before any UTM tracking even begins.
7 UTM Mistakes That Are Silently Destroying Your Data
- Mistake 1 — Not using UTM parameters at all. Every paid link, every email CTA, every social post link should be tagged.
- Mistake 2 — Using UTMs on internal links. Audit your site with Screaming Frog SEO Spider (free up to 500 URLs) and remove every UTM from internal links today.
- Mistake 3 — Inconsistent capitalisation. utm_source=Facebook and utm_source=facebook create two separate rows in GA4. Lowercase only, always.
- Mistake 4 — Vague campaign names. utm_campaign=campaign1 tells you nothing a month later. Include the campaign type, topic, and date every time.
- Mistake 5 — Spaces in UTM values. A space in a UTM value either breaks the URL or creates %20 encoded garbage in your reports. Use hyphens with no exceptions.
- Mistake 6 — Running Google Ads auto-tagging and manual UTMs simultaneously. gclid takes priority over manual UTMs in GA4. Use auto-tagging for Google Ads and manual UTMs for everything else.
- Mistake 7 — Collecting UTM data but never looking at it. Schedule a monthly campaign attribution review. Ask which campaigns drove the most engaged sessions and conversions. Then reallocate your budget based on what the data tells you.
One Last Thing Before You Close This Guide
UTM parameters are not complicated. They are just underused. The three required parameters — Source, Medium, Campaign — answer three questions that every marketer should be able to answer for every campaign they run: Who sent this visitor? By what channel? For which campaign?
Before your next campaign goes live, build one UTM-tagged link using Google’s Campaign URL Builder, save it in a tracking spreadsheet, and send it. Check GA4’s Traffic Acquisition report 48 hours later. Find your campaign name in the data.
That moment — seeing exactly where your visitors came from, clearly labelled, right there in your report — is when UTM parameters stop being a concept you have been meaning to learn and start being something you will use without thinking from that point forward.
For more practical digital marketing guides, explore TechAiTech’s Digital Marketing section — including deep dives on AI tools for bloggers, how to write meta descriptions, and local SEO strategy.
Frequently Asked Questions
What are UTM parameters?
UTM parameters are short tracking codes added to the end of a URL that tell analytics platforms where each website visitor came from. There are five standard parameters — utm_source, utm_medium, utm_campaign, utm_term, and utm_content — plus a newer sixth, utm_id.
What does UTM stand for?
UTM stands for Urchin Tracking Module, named after Urchin Software Corporation, whose technology Google acquired in 2005 to build Google Analytics.
Are UTM parameters case-sensitive?
Yes. utm_source=google and utm_source=Google are treated as two completely separate traffic sources in GA4. Always use lowercase for every UTM value without exception.
Should I use UTM parameters on internal links?
Never. Internal UTM parameters overwrite the original session source, permanently losing the real attribution data for that visitor.
How long does UTM attribution last in GA4?
GA4 uses session-based attribution for most standard reports. The conversion attribution window can be set to 7, 30, or 90 days — the default is 30 days for most conversion events. You can read more about GA4 attribution settings in Google's official documentation.












































