Skip to content
T
Tools.Town
Free Online Tools for Everyone
Url Tools

utm_source vs utm_medium vs utm_campaign: What's the Difference?

Confused by utm_source, utm_medium and utm_campaign? A clear breakdown of what each core UTM parameter means, with real email, social, paid and affiliate examples.

25 June 2026 4 min read By Tools.Town Team Fact Checked

Key Takeaways

  • They serve different roles, so they should rarely match
  • No

The three parameters that actually matter

UTM tagging has five parameters, but three of them carry the weight. utm_source, utm_medium, and utm_campaign are the trio Google Analytics needs before it will attribute a visit to a campaign at all. The other two — utm_term and utm_content — are optional refinements we’ll cover at the end.

The confusion almost always comes from the first two. Source and medium sound similar, they’re often set together, and people regularly swap them by accident. Getting them right is the difference between reports that answer your questions and reports that just create new ones. If you want the full background on where these parameters came from and how they flow into GA4, see UTM Parameters: The Complete Guide. This article is the focused, side-by-side comparison.

Source vs medium vs campaign at a glance

ParameterAnswers the questionGranularityExample values
utm_sourceWhere did this click come from?Specific originnewsletter, facebook, google, partner_blog
utm_mediumWhat type of channel is it?Broad categoryemail, social, cpc, affiliate
utm_campaignWhich initiative is it part of?Marketing effortsummer_sale, black_friday_2026, launch_v2

The mental model that keeps them straight:

  • Source is a proper noun — the name of one specific place. Facebook. Your Tuesday newsletter. A particular partner’s blog.
  • Medium is a category — the kind of channel that source belongs to. Many sources share one medium. Both your Tuesday newsletter and your welcome email are email.
  • Campaign is the reason — the promotion the link is part of, which cuts across every source and medium it runs on.

Read top to bottom, a tagged link tells a sentence: “This visitor came from facebook (source), via social (medium), as part of the summer_sale (campaign).” When you can read your link as that sentence and it makes sense, your tags are right. The UTM Link Builder lays the fields out in exactly this order so the sentence reads correctly by construction.

Real examples by channel

The clearest way to internalise the distinction is to see the same three fields filled out across different channels.

Email

utm_source=newsletter
utm_medium=email
utm_campaign=summer_sale

The source is which email programme sent it (newsletter), the medium is the channel type (email), and the campaign is the promotion. If you also send a separate welcome series, that would be utm_source=welcome_series with the same utm_medium=email — two sources, one medium.

Social

utm_source=facebook
utm_medium=social
utm_campaign=summer_sale

Here facebook is the platform and social is the medium. Post the same campaign to LinkedIn and only the source changes to linkedin. This is the pattern that lets you ask “how is the summer sale doing across all social?” and also “which platform specifically?”

utm_source=google
utm_medium=cpc
utm_campaign=summer_sale

For paid search the medium is cpc (cost-per-click). The source google distinguishes Google Ads from, say, bing. Keep cpc reserved strictly for paid search clicks — mixing it with paid social muddies your channel reports.

Affiliate

utm_source=partner_blog
utm_medium=affiliate
utm_campaign=summer_sale

The medium affiliate groups all partner-driven traffic, while the source names the specific partner. This lets you measure the affiliate channel as a whole and rank individual partners within it.

Notice that across all four examples, utm_campaign stayed identical. That consistency is what lets GA4 show the summer sale’s total performance and then break it down by medium and source. Build these once with the UTM Link Builder, keep the campaign value spelled the same way every time, and the breakdowns line up automatically.

term vs content: the optional two

utm_term and utm_content answer narrower questions and are never required.

  • utm_term records a paid-search keyword, e.g. utm_term=running_shoes. It tells you which search term you bid on drove the click. Most ad platforms now populate keyword data automatically, so manual utm_term is mostly used in custom or non-Google paid setups.

  • utm_content distinguishes two links that are otherwise identical — the classic use is A/B testing. If one email contains both a header button and a footer link to the same landing page, tag them utm_content=header_button and utm_content=footer_link. Same source, same medium, same campaign — only the content differs, so you learn which placement gets clicked.

The simplest rule: reach for utm_term only for paid keywords, and utm_content only when you need to tell two near-identical links apart.

How to avoid double-counting

Double-counting is when your reports inflate traffic because the same visit gets attributed more than once, or one channel splits into several rows. Three habits prevent it:

Never tag internal links. UTM parameters are for links arriving from outside your site. Tag a link between two of your own pages and GA4 resets the session, re-attributing the visitor and inflating your counts. Keep UTM tags on inbound links only.

Keep casing and spelling consistent. Facebook and facebook are two different sources to your analytics tool, and a single mistyped campaign name splits one promotion into two rows. Standardise on lowercase and a written naming convention. The UTM Link Builder can lowercase values for you so casing drift never reaches your reports.

Don’t let one channel use two mediums. If paid social is sometimes cpc and sometimes paid_social, GA4 can’t roll it into a single channel group. Pick one value per channel and stick to it.

Get source, medium, and campaign right and spelled consistently, and the rest of your analytics falls into place. For the complete picture — including the Urchin origin, GA4 reporting, and a team workflow — continue with UTM Parameters: The Complete Guide.

Advertisement

Try UTM Link Builder — Free

Apply what you just learned with our free tool. No sign-up required.

Try UTM Link Builder

Frequently Asked Questions

Can utm_source and utm_medium ever be the same?
They serve different roles, so they should rarely match. Source is the specific origin (newsletter, facebook), and medium is the channel type (email, social). Using the same value for both usually means one of the two is wrong.
Do I need utm_term and utm_content?
No. Only source, medium, and campaign are required for attribution. utm_term records a paid-search keyword and utm_content distinguishes two otherwise-identical links for A/B testing — both are optional.

Was this guide helpful?

Your feedback helps us improve our content.

Continue Reading

All Url Tools Guides

Get the best Url Tools tips & guides in your inbox

Join 25,000+ users who get our weekly url tools insights.