UTM parameters are tags you add to a link so Google Analytics knows which campaign sent each visitor. To track campaigns properly, give every external link at least utm_source, utm_medium and utm_campaign, use lowercase values from a fixed naming list, and choose medium values GA4 recognizes so your traffic lands in the right channel instead of Unassigned.

What Do utm_source, utm_medium, utm_campaign, utm_content and utm_term Mean?

Source is who sent the visitor, medium is the type of traffic, and campaign is why. Content and term are optional details for comparing ads or keywords.

ParameterWhat it recordsExample
utm_sourceThe site or senderfacebook, newsletter
utm_mediumThe type of trafficpaid_social, email
utm_campaignThe campaign or promospring_sale_2026
utm_contentWhich ad or linkvideo_a, header_link
utm_termThe paid keywordemergency_plumber

Google’s URL builder help also lists utm_id (a campaign ID) and utm_source_platform, and strongly recommends them alongside the main three. Two newer ones, utm_creative_format and utm_marketing_tactic, aren’t currently reported in GA4 properties, so skip them for now.

If you’re brand new to UTMs, our beginner’s guide to using UTM parameters covers the basics. This guide is the setup: the naming rules, links for each platform, and fixing reports.

How Do You Build a UTM Naming Convention That GA4 Understands?

Write down one approved value for each source and medium, all lowercase, and pick medium values that match GA4’s default channel rules. That one sheet decides whether your reports are clean.

GA4 sorts manual traffic into channels using fixed rules from its default channel group. For paid traffic, the medium has to match this pattern:

^(.*cp.*|ppc|retargeting|paid.*)$

So cpc, ppc, paid_social and paid all count as paid. “ads” or “boosted” don’t: Facebook ad traffic tagged that way is filed as Organic Social, and traffic from a source GA4 doesn’t recognize ends up Unassigned. Here’s a convention that lines up with GA4’s rules:

Channelutm_sourceutm_medium
Facebook adsfacebookpaid_social
Instagram adsinstagrampaid_social
Organic Facebook postfacebooksocial
LinkedIn adslinkedinpaid_social
Email newsletternewsletteremail
Affiliate or partnerpartner nameaffiliate
Display bannersite namedisplay

For campaign names, agree on one pattern and stick to it, such as topic_offer_month: roof_inspection_free_oct26. Use underscores, no spaces, and no special characters.

How Do You Stop “Facebook” and “facebook” Splitting Your Data?

Use lowercase for every value, every time. GA4 treats UTM values as case sensitive, so mixed capitalization creates separate rows for the same campaign.

There’s a nuance worth knowing. Google’s default channel rules aren’t case sensitive, so “Facebook” and “facebook” both land in Paid Social. But the source, medium and campaign values themselves stay separate in reports, which is why a campaign looks half as big as it really is. Fixing past data isn’t practical; fix the links going forward and filter both spellings when you compare older periods.

FREE TRACKING AUDIT

Find Out Which Conversions You Are Missing

JuvioX reviews your GA4, Tag Manager and ad platform tracking, then sends a prioritized list of what to fix first. Free, with no obligation.

Plan the values in your naming sheet, build the link with a UTM builder, paste it into the platform, then click it yourself and check GA4 before the campaign goes live.

Step 1: Add the Campaign to Your Naming Sheet

Before building anything, add a row with the campaign name, source, medium and content values, chosen from the sheet’s dropdown lists. This takes a minute and prevents almost every split-data problem later.

Use our free UTM builder or Google’s Campaign URL Builder: paste the landing page, fill in the values from your sheet, and copy the result. Builders avoid typos and handle the ? and & characters for you. Examples for each channel:

Facebook ad:
https://example.com/offer/?utm_source=facebook&utm_medium=paid_social&utm_campaign=roof_inspection_free_oct26&utm_content=video_a

Instagram ad:
https://example.com/offer/?utm_source=instagram&utm_medium=paid_social&utm_campaign=roof_inspection_free_oct26&utm_content=carousel_b

Email newsletter:
https://example.com/offer/?utm_source=newsletter&utm_medium=email&utm_campaign=roof_inspection_free_oct26&utm_content=header_button

LinkedIn ad:
https://example.com/case-study/?utm_source=linkedin&utm_medium=paid_social&utm_campaign=commercial_roofing_q4&utm_content=single_image

Step 3: Add It in the Platform

Where you paste it depends on the platform. In Meta Ads Manager, add the UTM part in the URL parameters field in the ad’s destination settings rather than the website URL, so the landing page stays clean. In email tools, paste the full link into the button or text link, and turn off the tool’s own automatic tagging if it would add a second set of UTMs. In LinkedIn, use the full link as the ad’s destination URL.

Step 4: Test Before Launch

Click the final link yourself, check it loads the right page with the parameters still in the address bar, and look in GA4 Realtime for your visit under the right source and campaign. If your site redirects (for example, from http to https or to a trailing slash), make sure the parameters survive the redirect.

Should You Use Google Ads Auto-Tagging With Manual UTMs?

Keep auto-tagging on and don’t rely on UTMs for Google Ads in GA4. Google Ads Help says auto-tagging takes precedence over manual UTMs in GA4, with no option to override it.

Auto-tagging adds a GCLID to every ad click, and Google describes it as required for tracking conversions in all browsers, importing GA4 key events and offline conversions, and sharing cost data between Google Ads and GA4. If you add UTMs to Google Ads links too, GA4 still uses the auto-tagged values for source and medium. UTMs on Google Ads only matter for other tools that read them, such as a CRM capturing them in hidden form fields. Our Google Ads conversion tracking guide covers how auto-tagging feeds conversion tracking.

Where Do You See UTM Campaign Traffic and Conversions in GA4?

Open Reports > Acquisition > Traffic acquisition, then switch the main dimension from channel to Session source / medium or Session campaign. The Key events column shows the conversions each campaign drove.

  1. In GA4, go to Reports > Acquisition > Traffic acquisition.
  2. Use the dimension drop-down above the table to choose Session source / medium or Session campaign.
  3. Add a secondary dimension (the plus icon) if you want both, such as campaign by source / medium.
  4. Read the Key events column, filtered to the key event you care about, such as generate_lead or purchase.

Key events only show if they’re set up first; our GA4 setup guide covers that.

How Do You Keep the Whole Team Using the Same UTMs?

Give one person ownership of the naming sheet, lock values into dropdowns, and check GA4 for stray values every month.

  • One shared sheet with dropdowns for source and medium, and a formula that builds the URL.
  • A rule that nobody types UTMs by hand; links come from the sheet or the builder.
  • A monthly look at Traffic acquisition for Unassigned, (not set) and capitalized values.
  • Agency and freelancer briefs that include the sheet link.
  • No UTMs on links inside your own site; track internal banners and buttons with GA4 events instead.

How Do You Fix Common UTM Problems?

Most UTM problems come from medium values GA4 doesn’t recognize, inconsistent spelling, or parameters lost before the page loads.

ProblemLikely causeFix
Paid social in Organic Social or UnassignedMedium like “ads” or “fb_ads”Use paid_social or cpc
Campaign split into several rowsMixed capitalization or spellingLowercase values from the sheet
Campaign shows (not set)utm_campaign missingAlways set source, medium, campaign
Visits show as DirectParameters dropped by a redirect or appTest the final URL; fix the redirect
Google Ads traffic ignores your UTMsAuto-tagging takes precedenceExpected; keep auto-tagging on

For deeper causes of Unassigned and Direct traffic, see our guide to high Unassigned and Direct traffic in GA4.

What Should Different Businesses Tag First?

  • Local service business: Facebook and Instagram ads, the monthly email, and QR codes on trucks or flyers (utm_medium=offline, which GA4 won’t put in a named channel, so report on it by campaign).
  • Online store: Every paid social ad, each email campaign and flow, and influencer links with utm_medium=affiliate so they land in Affiliates.
  • B2B company: LinkedIn ads, webinar invites and partner newsletters, with UTMs also captured into hidden form fields so your CRM records the campaign for each lead.

Want your campaign data checked? Our tracking and analytics team reviews UTMs, channels and conversions as part of a free audit, with ongoing work on a flat monthly fee, month to month, with no lock-in.

FREE TRACKING AUDIT

Find Out Which Conversions You Are Missing

JuvioX reviews your GA4, Tag Manager and ad platform tracking, then sends a prioritized list of what to fix first. Free, with no obligation.