Three fields, three different questions:
- utm_source — whose audience did the visit come from? linkedin, newsletter, partner_acme
- utm_medium — what method delivered it? paid_social, email, referral
- utm_campaign — which marketing initiative was it part of? summer_webinar_2026
If you're deciding right now: the platform's name goes in source, the type of traffic goes in medium, and the name of the thing you're promoting goes in campaign.
The rest of this page is for when that isn't obvious which is most of the time people go looking for this answer.
The Difference at a Glance
| Field | Question it answers | Example | Most common mistake |
| utm_source | Whose audience did this come from? | Putting a category here (social) instead of a platform | |
| utm_medium | What method delivered it? | paid_social | Putting the platform here (linkedin) instead of the method |
| utm_campaign | Which initiative was this part of? | summer_webinar_2026 | Naming the channel (linkedin_ad) instead of the initiative |
A Better Mental Model Than "Where vs How"
Almost every explanation of these fields says source is where traffic came from and medium is how it got there.
That works for the easy cases and falls apart immediately on the hard ones. Email is a fine answer to both "where did this come from?" and "how did it get here?" So is "newsletter". So is "partner". The moment you hit a real decision, the model stops deciding anything.
Google's own definitions are more precise. Analytics defines source as "a representation of the publisher or inventory source from which traffic originated," and medium as "the method for acquiring users to your website or application."
Read those carefully and a sharper model falls out:
Source = whose audience you borrowed. Medium = what method you used to reach them.
Now test it against the cases that broke the other model:
| Situation | Whose audience? → source | What method? → medium |
| You send your weekly newsletter | Your own subscriber list | |
| You run a LinkedIn ad | LinkedIn's audience | Paid social |
| A partner links to you from their site | That partner's audience | Referral |
| You bid on a Google search keyword | Google's audience | Paid search |
| You post on your own LinkedIn page | LinkedIn's audience | Organic social |
Every case resolves without argument. That's the test of a working model.
Source vs Medium
This is the confusion that produces the most broken reports, and it runs in both directions.
Putting the method in source. utm_source=paid or utm_source=social names a type of traffic, not a publisher. You lose the ability to tell LinkedIn from Facebook from TikTok, permanently because that information was never recorded.
Putting the platform in medium. utm_medium=linkedin or utm_medium=facebook_ads names a publisher, not a method. This one is worse than it looks: GA4 reads your medium to assign the session to a channel, so a platform name in the medium field means the session doesn't match the paid-traffic conditions and gets filed as organic instead. Your paid spend is reported as unpaid, with no error and no warning. Our naming conventions guide covers exactly which medium values pass GA4's test.
The reliable check: could this value describe traffic from a completely different platform? paid_social describes LinkedIn, Facebook, and TikTok equally it's a medium. linkedin describes only LinkedIn it's a source.
Medium vs Campaign
Less common, but it produces subtler damage because nothing looks obviously wrong.
Medium is a fixed vocabulary. Your organisation should have perhaps eight to ten medium values in total, reused across every campaign you ever run. Campaign is the opposite a new value for every initiative.
So anything that repeats across campaigns is a medium, and anything specific to one initiative is a campaign.
| Value | Belongs in | Why |
| Medium | Every email campaign you'll ever run uses it | |
| retargeting | Medium | It's a method, reused indefinitely |
| summer_webinar_2026 | Campaign | Names one initiative that ends |
| black_friday | Campaign | Same |
| newsletter | Source | Whose audience — your list |
The mistake to watch for is putting newsletter in medium. It feels like a method because a newsletter is a thing you send. But it identifies whose audience the traffic came from your subscriber list which makes it a source. The method is email.
Source vs Campaign
The rarest of the three, and almost always the same error: putting the campaign name in source.
Wrong: utm_source=summer_sale&utm_medium=email
Right: utm_source=newsletter&utm_medium=email&utm_campaign=summer_sale_2026
Sources are durable. newsletter means the same thing next year. Campaigns are disposable they launch, they end, and they're never reused.
If you're tempted to write a campaign name into source, the real problem is usually that you left utm_campaign off entirely. Add it.
Four Worked Examples
Google paid search
?utm_source=google&utm_medium=cpc&utm_campaign=q3_brand_terms
Whose audience? Google's. Method? Paid search cpc is the long-standing convention and it satisfies GA4's paid-traffic conditions.
One caveat: if you're running Google Ads with auto-tagging enabled, you generally don't need manual UTMs here at all, and mixing the two has consequences worth understanding before you do it.
LinkedIn paid social
?utm_source=linkedin&utm_medium=paid_social&utm_campaign=webinar_launch
Whose audience? LinkedIn's. Method? A paid placement on a social platform. Note that paid_social and organic_social share the same source value that's deliberate, and it's what lets you compare paid and organic performance on the same platform.
?utm_source=newsletter&utm_medium=email&utm_campaign=weekly_digest
Whose audience? Your subscriber list, which newsletter identifies. Method? Email.
Note what is not here: the name of your email platform. More on that below, because it's the single most common question about this field.
Partner
?utm_source=partner_acme&utm_medium=referral&utm_campaign=co_marketing_q3
Whose audience? Acme's. Method? A referral placement. The partner's identity belongs in source because sources are durable Acme is still Acme next quarter, under a different campaign.
The Ambiguous Cases
These are the ones that send people searching. Each is resolved with the same question: whose audience, and what method?
Is my email platform the source?
No. Mailchimp, Klaviyo, and HubSpot are the tools that send the message. They aren't whose audience it is — the list is yours.
Use: utm_source=newsletter&utm_medium=email
Not: utm_source=mailchimp&utm_medium=email
The exception is a genuine third-party send, where another company emails their list on your behalf. Then the audience really is theirs, and the source should identify them: utm_source=partner_acme&utm_medium=email.
Is "email" the source or the medium?
Medium. Email is a method of delivery. The source is whichever list or property the message went to newsletter, product_updates, sales_outreach.
What's the source of a QR code on a printed poster?
There's no referring website, so pick a source that identifies the physical placement, and a medium that identifies the format.
?utm_source=conference_booth&utm_medium=qr&utm_campaign=trade_show_2026
Two warnings. Offline mediums like qr have no defined GA4 channel and will likely land in Unassigned verify where they fall in your own property before you rely on it. And because the source is your only record of which poster, be specific: conference_booth is useful, poster is not.
Is an influencer a source or a campaign?
Source, in almost every case. The creator's audience is what you borrowed, so creator_janedoe belongs in source. The campaign is the initiative they were promoting.
?utm_source=creator_janedoe&utm_medium=paid_social&utm_campaign=spring_launch
This also scales properly: every creator becomes a comparable row in the same report.
Is "retargeting" a medium or a campaign?
Medium. It's a method you'll reuse indefinitely, and GA4 recognises retargeting as a paid medium. The campaign is whatever you're retargeting people toward.
What about a podcast sponsorship?
Whose audience? The show's. Method? A sponsorship read, which is a form of referral or paid placement depending on your convention.
?utm_source=podcast_showname&utm_medium=sponsorship&utm_campaign=q3_awareness
sponsorship has no defined GA4 channel if channel reporting matters more to you than a descriptive label, use referral and put the detail in utm_content.
Is my agency the source?
No. Your agency manages the buying; it isn't whose audience the traffic came from. If the agency runs a LinkedIn campaign, the source is still linkedin.
The dimension that does describe where buying is managed is Source Platform, which Google defines as "the platform where you manage buying activity." It's populated separately you don't set it by putting an agency name in utm_source.
Should I tag links between pages of my own site?
No. GA4 sets a session's attribution at session_start, so a tagged internal link clicked mid-visit won't overwrite the current session's source but that's not a reason to do it. Tagged internal URLs get bookmarked, shared and re-opened later, and every one of those visits starts a fresh session that records one of your own pages as the acquisition source. Keep UTMs on inbound links only.
What about traffic from a co-hosted webinar?
Whose audience? Split that's the honest answer, and it's why co-marketing attribution is hard. Tag the links you distribute with your own source values, and give your co-host separately tagged links with their identity as the source. Both sets share one campaign value so the initiative stays comparable.
The Decision Framework
For any case not listed above, three questions in order.
1. Whose audience did this visit come from? A platform, a publication, a partner, a creator, or a list you own. That's your utm_source. If your answer is a category "social", "paid", "web" you haven't answered it yet. Name the specific one.
2. What method delivered it? Email, paid search, paid social, organic social, referral, affiliate, display. That's your utm_medium. Test it: could this same value describe traffic from a totally different platform? If not, you've named a source, not a method.
3. Which initiative was this part of? The campaign you'd name in a meeting. That's your utm_campaign. It should be identical on every link across every channel promoting the same thing.
If two answers come out the same, you've mislabelled one. Source and medium should never share a value utm_source=email&utm_medium=email records nothing useful.
If you genuinely can't decide, choose the option that keeps sources durable and mediums few. A source you'll still recognise in a year and a medium drawn from a short fixed list will nearly always be the right call.
How GA4 Interprets These Fields
Short version, because the full reporting picture belongs in its own guide.
Two things happen with the values you choose, and both are consequences of the source/medium pair specifically.
Channel assignment. GA4 tests your source and medium against published conditions to file each session into a default channel Paid Social, Email, Referral, and so on. This is why a platform name in the medium field silently mis-files paid traffic as organic.
Source Platform. Google derives this dimension for third-party platforms by first checking whether the medium indicates paid traffic, then matching the source against known platform identifiers such as facebook, linkedin, or tiktok. Where no paid medium is detected, the dimension is left unlabelled.
The practical consequence is worth stating plainly: one wrong medium value degrades two separate dimensions. The session lands in the wrong channel, and the platform identification never happens. Neither produces an error message.
Both of these behaviours have changed before and can change again verify current behaviour in your own property before building reporting that depends on an edge case.
Get the Fields Right the First Time
You now have the model and the framework. The remaining risk is a typo or an inconsistent value slipping into a live link.
Build your campaign URL → enter your source, medium, and campaign values and get a correctly encoded tracking link.
Where to go next:
- Need the full definition of each parameter? → UTM parameters reference
- Want your whole team using the same values? → UTM naming conventions
- Looking for tagged examples by channel? → UTM examples library
- Ready to check the data is arriving correctly? → How to track UTM campaigns in GA4
- New to campaign tracking? → Complete campaign URL guide






