UTM parameters are short tags you add to the end of a URL to tell your analytics tool where a click came from. There are six of them — utm_source, utm_medium, utm_campaign, utm_term, utm_content and utm_id — and together they turn a vague “someone visited the site” into “this person came from the September newsletter, second CTA button, on mobile.”
UTM stands for Urchin Tracking Module, named after the analytics company Google bought in 2005 to build what eventually became Google Analytics. The company is long gone. The naming convention outlived it.
Below: what each of the six parameters does, how a tagged URL is actually put together, and seven real campaign URLs from companies like Coach, Zapier and Grammarly, pulled apart tag by tag.
Types of UTM Parameters
There are five UTM parameters.
| Name | UTM Tag |
| Medium | utm_medium |
| Source | utm_source |
| Campaign | utm_campaign |
| Content | utm_content |
| Term | utm_term |
GA4 also reads three newer optional tags: utm_source_platform, utm_creative_format and utm_marketing_tactic. Almost nobody sets these by hand. They matter mainly if you’re importing ad cost data.
Here’s what each one is for.
UTM Source
Names the specific place the traffic came from. facebook, linkedin, mailchimp, partner-site.
The easiest way to keep source and medium straight: source is who sent the click, medium is how they sent it. A paid Facebook ad is utm_source=facebook with utm_medium=cpc. That exact same link in an organic Facebook post is utm_source=facebook with utm_medium=social. Same sender, different delivery method.
Get this one wrong and your channel reports quietly stop meaning anything, because paid and organic traffic from the same platform end up in the same bucket.
UTM Medium
The delivery method. email, cpc, social, affiliate, qr, referral, banner.
Keep this list short and boring. Medium is the field GA4 uses to sort traffic into its default channel groupings, so inventing new values — medium=emailblast one month, medium=email-campaign the next — fragments your own reporting. Six or seven mediums is usually enough for an entire company.
UTM Campaign
The name of the specific initiative. black-friday-2026, q3-webinar, product-launch.
This is the field you’ll actually filter reports by, so name it after something you’ll still recognise in nine months. spring-sale is fine. campaign-4-final-v2 is not.
UTM Term
Records the keyword that triggered a paid click.
Google Ads can fill this in automatically using the {keyword} value track parameter, so you rarely set it by hand on search campaigns. It stays genuinely useful anywhere auto-tagging doesn’t reach: Bing, LinkedIn, or a manually built set of keyword-specific links.
One caveat worth knowing — Google encrypts organic search keywords, so utm_term will never tell you what someone typed into Google before landing on your blog. Paid clicks only.
UTM Content
Distinguishes between two links pointing at the same page.
This is the A/B testing field. Two CTAs in one email, both going to your pricing page? utm_content=header-button and utm_content=footer-link tell you which one people actually clicked. Same for two versions of an ad creative, or a text link versus a banner in the same newsletter.
UTM ID
An identifier for the campaign itself, used to tie a tagged URL back to a specific campaign record.
If you’re importing ad cost data into GA4 so it can calculate ROAS, this is the field that stitches the click to the spend. If you’re not doing cost imports, you can skip it.
Anatomy of a UTM-Tagged URL
Here’s a standard URL with no UTM tags:
|
1 |
www.example.com/product |
And the same URL tagged:
|
1 |
www.example.com/product?utm_source=new+subscribers&utm_medium=email&utm_campaign=black+friday+sale&utm_content=first+cta+button |
Piece by piece:
- www.example.com/product — the page you’re sending people to.
- ? — tells the browser everything after this point is extra data, not part of the page address.
- utm_source=new+subscribers — the traffic source. The
+stands in for a space, because URLs can’t contain literal spaces. (%20does the same job.) - & — separates one parameter from the next. Every tag after the first one needs one.
- utm_medium=email — the delivery method.
- utm_campaign=black+friday+sale — the campaign name.
- utm_content=first+cta+button — which link inside the email was clicked.
Read together, that URL says: Black Friday offer, sent by email to the new-subscriber segment, clicked via the first CTA button.
Notice utm_term isn’t there. It’s optional and this isn’t a paid search click, so it’s fine to leave off. Source, medium and campaign are the three you should never skip.
7 Best Examples of Using UTM Parameters Effectively
These are all real URLs, captured from live campaigns.
1. UTM in Product/Shopping Campaign
Here’s what Coach sent to people who’d browsed but not bought:
.
https://www.coachoutlet.com/shop/utm_medium=em_mktg&utm_source=SFMC&utm_campaign=20220922_WK12_COH_OTL_FriendsFamilyBagsUnder150_FullFile__FY23_US____PERS&sfmc_id=108914146&utm_term=Amperity_COHNA_Outlet_US_Unengaged_NonBuyer
Unpacked:
- utm_medium: em_mktg
- utm_source: SFMC (Salesforce Marketing Cloud)
- utm_campaign: 20220922_WK12_COH_OTL_FriendsFamilyBagsUnder150_FullFile__FY23_US____PERS
- utm_term: Amperity_COHNA_Outlet_US_Unengaged_NonBuyer
2. UTM in a Travel Website
That’s what the interface of Get Your Guide looks like.

Get Your Guide’s affiliate link:
https://www.getyourguide.com/s?partner_id=CXOA4OX&utm_medium=online_publisher&placement=%22other%22&cmp=Milan&q=Milan&et=209769&lc=139
- utm_medium: online_publisher
This is an affiliate link shared by a travel blogger on their own blog, hence the medium of online_publisher.
3. UTM in a Facebook Campaign
A Facebook ad by ClickFunnels:

https://www.clickfunnels.com/?cf_affiliate_id=513513&affiliate_id=513513&utm_source=facebook&utm_medium=advertising&utm_campaign=CFTrial&utm_term=CFretarget&utm_content=russellreact&fbc_id=6266713392263&h_ad_id=6266713392063&WickedSource=Facebook&WickedID=6266713392063&fbclid=IwAR1LOAYlG8gOsLjPAoef2XSpIfLBJV658ZTVAyC337lUG5Vf6UGRTZ498hc
- utm_source: facebook
- utm_medium: advertising
- utm_campaign: CFTrial (ClickFunnels trial)
- utm_term: CFretarget (retargeting audience)
- utm_content: russellreact (the creative — Russell’s reaction shot)
4. UTM from a Sales Campaign
This is what a Google ad campaign for Zapier looks like.

https://zapier.com/l/home?utm_source=google&utm_medium=cpc&utm_campaign=gaw-gbl-nua-search-desktop-trademark-brand_exact&utm_adgroup=brand_trademark_zapier&utm_term=zapier&utm_content=_pcrid_605859591576_pkw_zapier_pmt_e_pdv_c_slid__pgrid_139732742522_ptaid_aud-809502765494%3Akwd-298647606221_&gclid=Cj0KCQjwsrWZBhC4ARIsAGGUJupvbSvV88DqGKtdD0u212YaJbK7nrRNGlNMVrQKY2zNvZEy1Mpg5XcaAo83EALw_wcB
- utm_source: google
- utm_medium: cpc (cost per click)
- utm_campaign: gaw-gbl-nua-search-desktop-trademark-brand_exact
- utm_term: zapier
- utm_content: a string of auto-populated value track parameters
The utm_content value here is machine-generated by Google Ads value track parameters, carrying the creative ID, keyword, match type, device and ad group. If you’re tagging Google Ads URLs one at a time, you can add UTM parameters to Google Ads automatically instead.
There’s also a gclid on the end, which is Google’s own click identifier. It does a similar job to the UTMs but only inside Google’s ecosystem.
5. UTM in Youtube Ads Campaign
This Youtube ad for Grammarly was a hit.

https://app.grammarly.com/?utm_source=youtube&utm_medium=cpc&utm_phase=student&utm_content=Connect60sBrand1description
- utm_source: youtube
- utm_medium: cpc
- utm_content: Connect60sBrand1description
The utm_content value packs several details about the placement into one field: the campaign concept (Connect), the length (60s), the type (Brand), the variant (1) and the position of the link (description).
The URL also carries utm_phase=student. Anything outside the six standard parameters won’t appear in GA4 reports, though it stays readable in the landing page URL itself.
6. UTM in Email Campaign
And this is what Vitabiotics sent to their email list.

https://www.vitabiotics.com/collections/heart-supplements?medium=email&om_campaign=omme_6d4058fe-0f2_33567_186725&om_send=130fece991e94f20b342df6da5508f98&source=Ometria&utm_campaign=omme_6d4058fe-0f2_autumn_heart_23_09_all_prospects_except_ms&utm_content=variation_a&utm_medium=email&utm_source=ometria
- utm_source: ometria
- utm_medium: email
- utm_content: variation_a
- utm_campaign: omme_6d4058fe-0f2_autumn_heart_23_09_all_prospects_except_ms
The utm_content=variation_a value marks which version of a split-tested email the click came from. If you’re running the same kind of test, here’s how to track an email campaign with UTM parameters end to end.
7. UTM in Lead Magnet Ads
And finally, this is a lead magnet ad from Designrr.

https://go2.designrr.io/start-here3?utm_campaign=2020671279&utm_source=g&utm_medium=cpc&utm_content=&utm_term=designrr&ad_id=576584640663&gclid=Cj0KCQjwsrWZBhC4ARIsAGGUJuqoec-bn7AVfxuwsvKJerghL615txZPXEdb9lzXmNcmGhu0-6omsc0aAqrjEALw_wcB
- utm_campaign: 2020671279
- utm_source: g
- utm_medium: cpc
- utm_term: designrr
- utm_content: (empty)
UTM Naming Conventions That Save You Pain Later
Most UTM problems aren’t technical. They’re two people on the same team spelling things differently.
- Lowercase everything. GA4 treats
Facebookandfacebookas two separate sources, which silently splits one campaign across two rows in your report. - Pick one word separator and stick with it. Hyphens are easier to read than underscores, and
+and%20both work but look untidy. Choose one, document it. - Use medium values GA4 recognises. The default channel groupings understand
cpc,ppc,paidsocial,email,social,affiliateandreferral. Invent your own —advertising,emailblast— and that traffic lands in Unassigned until someone writes a custom rule. - Keep the medium list closed. Write down your five or six allowed values and don’t add to them casually.
- Give campaigns readable names. A raw numeric ID from your ad platform means nothing in a GA4 report nine months later. Use words.
- Don’t leave parameters empty.
utm_content=with no value does nothing except make the URL longer. Drop the tag instead. - Match your source spelling across platforms.
googleandgare two different sources as far as GA4 is concerned, and they’ll report on two separate lines. - Never tag internal links. Putting UTMs on a link between two of your own pages restarts the session and overwrites where that visitor originally came from. It’s the most common way teams destroy their own attribution data.
- Write it down somewhere shared. A spreadsheet with columns for source, medium, campaign and the finished URL takes ten minutes to set up and prevents most of the above.
Where to See UTM Data in GA4
In GA4, go to Reports → Acquisition → Traffic acquisition, then change the dimension dropdown from the default to Session source / medium or Session campaign.
For utm_content and utm_term you’ll need an Exploration — the standard reports don’t surface them. Build a free-form exploration and add Session manual ad content and Session manual term as dimensions.
If you’re running landing pages outside your main site, the tagging needs to survive the handoff; Unbounce landing pages are a common place where it doesn’t.
Keep Track of your Leads from their First Visit
UTM tags only survive as long as the link does.
Anyone who copies your URL and pastes it into Slack, or just types your domain in directly, arrives carrying no campaign data at all. So does anyone who found you three weeks ago, remembered your name, and came back via branded search. Which is a real limitation, and it points at a bigger one.
Say someone — call him John — is buying supplements. He finds Vitabiotics through organic search. He reads a blog post about their sourcing, checks their Facebook page, comes back twice more over a fortnight, and eventually converts.
GA4 handles most of that. What it can’t do is tell Vitabiotics’ sales team any of it. GA4 knows a conversion happened on the website. The CRM knows a lead named John exists. Neither system knows those are the same person, because the visitor and the lead live in two records that never meet.
That gap is the whole reason GA Connector exists. It connects GA4 and Google Ads to your CRM — Salesforce, HubSpot, Pipedrive, Zoho and around 40 others — and writes each lead’s traffic source onto their record, so a deal that closes eight months later still carries the campaign that first brought that person in.
Why It’s Important to Track UTM Parameters in Your CRM
Because form fills aren’t revenue.
If you’re spending real money on Facebook and Google Ads, the number you need isn’t how many leads each channel produced. It’s how many customers. Those are frequently not the same channels, and the gap between them is usually where the wasted budget is hiding.
With UTM data sitting on the CRM record, you can answer questions GA4 can’t:
- Which channels produce customers, not just leads
- Which campaigns generate the highest average deal size
- How much revenue each keyword actually returned
- Which sources produce leads your sales team never manages to close
GA4 on its own reports sessions, users and conversion events. Your CRM reports leads, opportunities, closed-won deals and revenue. Joined together, you get cost per customer by campaign — which is the number that should be driving budget decisions.

If your forms live in Salesforce, there are two routes depending on your setup: track UTM parameters in your Salesforce forms covers the general approach, and Salesforce Web-to-Lead forms has the specifics for that form type.
How to capture lead sources using GA Connector
How to capture lead sources using GA Connector
GA Connector sits between your website and your CRM. Its job is to save each lead along with where they came from.
Setup takes a few minutes:
- Start a free trial — 30 days, no credit card.
- Add the tracking script to your site. It runs alongside your GA4 tag without conflicting.
- Connect your CRM. GA Connector works with 40+ CRMs, and with almost any database or contact form if yours isn’t on the list.
From there it will capture UTM parameters in your contact forms along with first-click source, last-click source, the full multi-touch path, landing page, device type and approximate location.

That screenshot is a single Salesforce lead with its full attribution history attached. Every lead in your CRM can look like that.
Start your free trial of GA Connector today.
UTM Parameter FAQs
What are the 5 UTM parameters?
The five original tags are utm_source, utm_medium, utm_campaign, utm_term and utm_content. Google later added a sixth, utm_id, for identifying a specific campaign. Source, medium and campaign are the three you should always set.
What’s the difference between utm_source and utm_medium?
Source is who sent the traffic; medium is how. A LinkedIn ad is utm_source=linkedin with utm_medium=cpc. The same link posted organically is utm_source=linkedin with utm_medium=social.
Are UTM parameters case sensitive?
Yes. GA4 reads Facebook and facebook as two different sources, which splits one campaign’s numbers across two rows. Use lowercase for everything.
Do UTM parameters affect SEO?
Not directly, but tagged URLs can create duplicate versions of a page if they get indexed. A canonical tag pointing at the clean URL prevents it. Don’t put UTM tags on internal links — that overwrites the visitor’s original source.
Do UTM parameters still work in GA4?
Yes, and GA4 reads all six. Source, medium and campaign appear in the standard Traffic acquisition report; utm_content and utm_term need an Exploration.
Can I track organic keywords with utm_term?
No. Google encrypts organic search terms, so no tool can pass them through. utm_term only carries paid keywords.
Why don’t my UTM parameters show up in my CRM?
Because the two systems never talk to each other. GA4 records the campaign, the CRM creates the contact, and nothing links the two records together. Closing that gap needs something that writes the source data onto the lead itself.



