UTM Parameters: A Practical Guide for GA4 and Small Businesses

How to use UTM parameters with GA4: what each one does, naming conventions that match channel groups, why to use lower case, and when never to tag a link.

By the MakeItFlow team Updated 9 min read
Share LinkedIn X Facebook WhatsApp
UTM Parameters: A Practical Guide for GA4 and Small Businesses

UTM parameters are short tags added to the end of a link, such as ?utm_source=newsletter&utm_medium=email&utm_campaign=spring-sale, that tell Google Analytics where a visit came from. Use them on links you place outside your own site: emails, social posts, ads, QR codes and partner sites. Never use them on internal links.

Without UTM parameters, a lot of your marketing effort shows up in GA4 as "Direct" or "Unassigned", or gets lumped in with every other referral. With them, you can see which newsletter, which Facebook post or which printed flyer actually brought people to your site. This guide covers what each parameter does, how GA4 uses them to assign channels, a naming convention that holds up, and the mistakes that quietly ruin your data.

To build tagged links quickly, use our free UTM builder. It cleans values to lower case with hyphens and links straight to the QR code generator for print campaigns.

Key takeaways

  • Google says you should always use utm_source, utm_medium and utm_campaign, and values are case sensitive.
  • GA4 sorts tagged visits into channels like Email, Organic Social and Paid Search by matching your source and medium values, so use the values it recognises.
  • Never put UTM parameters on links between pages of your own site, because they overwrite the real source of the visit.
  • Tag every QR code, email and social link with a consistent, lower-case naming scheme kept in a shared sheet.

What UTM parameters are

UTM parameters are query string values that Google Analytics reads when someone lands on your page. They don't change the page itself. They only label the visit.

Google's help page on collecting campaign data with custom URLs lists the parameters GA4 supports:

Parameter What it describes Example value
utm_source Where the traffic comes from newsletter, facebook, google
utm_medium The type of channel email, social, cpc, qr
utm_campaign The promotion or campaign spring-sale-2026
utm_id Campaign ID, often used with data import sp26
utm_term Paid keyword emergency-plumber
utm_content Which link or creative was clicked header-button
utm_source_platform The platform directing traffic mailchimp
utm_creative_format Creative type Not currently reported in GA4
utm_marketing_tactic Targeting criteria Not currently reported in GA4

Google says: "When you add parameters to a URL, you should always use utm_source, utm_medium, and utm_campaign." Leave one out and you'll see (not set) in reports.

A complete tagged link looks like this:

https://www.example.com/offers?utm_source=newsletter&utm_medium=email&utm_campaign=spring-sale-2026&utm_content=hero-button

How GA4 uses UTM parameters to assign channels

GA4 doesn't just display your source and medium. It also uses them to sort each visit into a default channel group, such as Email or Paid Social. If your values don't match its rules, the visit lands in "Unassigned" and your channel reports become less useful.

Google publishes the rules in its default channel group documentation. The ones that matter most for small businesses:

GA4 channel Rule (simplified) Values to use
Email Source or medium is email, e-mail, e_mail or e mail utm_medium=email
Organic Social Source matches a known social site, or medium is social, social-network, social-media, sm, social network or social media utm_source=facebook&utm_medium=social
Paid Social Source is a social site and medium matches cp, ppc, retargeting or starts with paid utm_source=facebook&utm_medium=paid-social
Paid Search Source is a search site and medium matches the paid pattern utm_source=bing&utm_medium=cpc
Display Medium is display, banner, expandable, interstitial or cpm utm_medium=display
Referral Medium is referral, app or link utm_medium=referral
Affiliates Medium is affiliate utm_medium=affiliate
Organic Video Source is a video site, or medium contains video utm_source=youtube&utm_medium=video

Anything that matches none of the rules goes to Unassigned. That's what happens when someone invents utm_medium=newsletter-blast or utm_medium=Facebook Post.

What about QR codes?

There's no QR code channel in GA4's default grouping. You have two sensible options:

  • Use the medium of the physical channel. For example, utm_medium=print or utm_medium=offline. These land in Unassigned in the default channel report, but you can see them clearly in the source/medium report, or create a custom channel group in GA4 for offline traffic.
  • Use referral with a clear source. utm_source=shop-window-poster&utm_medium=referral puts QR scans in the Referral channel. It's tidy, but it mixes offline scans with real referring websites.

Whichever you choose, write it down and use it every time. Consistency matters more than the exact value.

A naming convention that holds up

Most UTM problems come from different people tagging links in different ways. Five rules fix nearly all of it.

1. Always use lower case

Google's documentation is explicit: "Parameter values are case sensitive, e.g. utm_source=google is different from utm_source=Google." It recommends lower case as standard practice. If one person types Facebook and another types facebook, GA4 reports two sources.

2. Use hyphens, not spaces

Spaces get encoded as %20 or + and look messy in reports. Hyphens are readable and safe: spring-sale-2026, not Spring Sale 2026.

3. Keep source and medium to a fixed list

Agree a short list and don't add to it without a reason:

Source Medium
newsletter email
facebook, instagram, linkedin social (organic) or paid-social
google, bing cpc
partner-name referral
flyer, van-livery, shop-window print or qr

4. Make campaign names readable and dated

A good campaign name tells someone a year later what it was: boiler-service-autumn-2026, black-friday-2026, newsletter-2026-10. Avoid codes only one person understands.

5. Use utm_content to tell links apart

If an email has three links to the same page, tag them utm_content=hero-button, utm_content=text-link and utm_content=footer. You'll learn which placement people actually click.

Keep all of this in a shared spreadsheet: the date, the destination URL, every parameter and the final tagged link. It takes seconds per link and saves hours of cleanup later.

This is the most common and most damaging mistake. A homepage banner linking to /offers?utm_source=homepage&utm_medium=banner looks harmless. But when a visitor who arrived from your Google Ads campaign clicks it, the analytics data now says the visit came from "homepage / banner". The ad that actually brought them in loses the credit for any enquiry or sale that follows.

UTM parameters are for traffic arriving from outside your site. To measure internal promotions instead:

  • Use GA4's event tracking for clicks on banners and buttons.
  • Compare page paths in the path exploration report.
  • If you run several connected domains, set up cross-domain measurement in GA4 rather than tagging links between them.

Search your templates, menus and banners for links containing utm_, or run a site crawl and filter the internal links for it. If you find any pointing to your own domain, remove the parameters. While you're at it, the broken link checker will catch internal links that no longer work.

Where to use UTM parameters

Channel Tag it? Notes
Email newsletters Yes Most email platforms can add UTMs automatically. Check their default values match your convention.
Social posts and bios Yes Tag organic posts and profile links separately so you can compare them.
Paid search (Google Ads) Usually no Use auto-tagging in Google Ads, which passes richer data to GA4. Tag manually for Microsoft Ads and other platforms.
Paid social Yes Many ad platforms support URL templates with dynamic values.
QR codes on print Yes Without tags, scans usually show as Direct.
Partner and directory listings Yes Shows whether a paid listing is worth renewing.
Google Business Profile website link Optional Many businesses tag it to separate profile clicks from organic search. Be consistent once you choose.
Links between your own pages Never Overwrites the real source.
Links in press releases Optional Journalists often strip or edit links, so don't rely on them.

UTM parameters, SEO and canonical URLs

Tagged URLs are technically different addresses for the same page. Search engines usually handle this fine, especially when your page has a self-referencing canonical tag pointing to the clean URL. If tagged URLs start appearing in Search Console or in your crawl reports, check the canonical. Our guide to canonical tags explains how they work, and the meta tag checker shows the canonical on any URL.

Don't put tagged URLs in your XML sitemap, and don't use them in internal links (see above). Keep the URLs themselves short and readable too. Our guide to SEO-friendly URLs covers that side.

Checking your UTM data in GA4

Once tagged links are live:

  1. Click your own test link, then open GA4's Realtime report to confirm the source, medium and campaign appear correctly.
  2. A day or two later, open Reports > Acquisition > Traffic acquisition and switch the primary dimension to "Session source / medium" or "Session campaign".
  3. Look for (not set), mixed capitals and unexpected values. Each one points to a link that was tagged wrongly.
  4. Check the "Unassigned" channel. Anything sitting there usually has a medium GA4 doesn't recognise.
  5. Fix the source of the problem, which is normally a template, a default in your email tool or an old link in a social bio.

If you're pulling GA4 and Search Console data together manually every week, that's a good candidate for automation. Our guide to automating SEO reporting covers the free options, and Make It Flow can map your reporting workflow if you'd rather talk it through.

FAQ

What are UTM parameters used for?

UTM parameters label links so Google Analytics can tell where a visit came from. They let you see which email, social post, ad or QR code brought someone to your site, and whether those visitors went on to enquire or buy. Without them, much of that traffic shows as Direct, Unassigned or a generic referral.

Which UTM parameters are required?

Google says you should always use utm_source, utm_medium and utm_campaign. The others, such as utm_content, utm_term and utm_id, are optional but useful. If you leave out one of the three main parameters, GA4 shows (not set) for it, which makes your reports harder to read.

Are UTM parameters case sensitive?

Yes. Google confirms that utm_source=google and utm_source=Google are treated as different values. Mixed capitals split one source into several rows in your reports. Use lower case for every value and hyphens instead of spaces, and enforce it with a shared naming sheet or a builder tool that cleans values for you.

Should I use UTM parameters on internal links?

No. Tagging links between pages on your own site overwrites the original source of the visit, so the email or ad that actually brought someone in loses credit for the enquiry or sale. Use GA4 event tracking to measure clicks on internal banners and buttons instead, and keep UTMs for traffic arriving from outside.

Do UTM parameters affect SEO?

Not directly. They label visits for analytics and don't change what's on the page, but tagged URLs are technically separate addresses for the same page. A self-referencing canonical tag on the page usually keeps search engines focused on the clean URL. Don't use tagged URLs in your sitemap or internal links, and they shouldn't cause problems.

How do I track QR codes in Google Analytics?

Add UTM parameters to the URL before you generate the QR code, for example utm_source=shop-window&utm_medium=qr&utm_campaign=autumn-offer. Without tags, most scans appear as Direct traffic. Use a different utm_source or utm_content for each placement so you can compare a flyer with a van sign or a poster.

#utm parameters #google analytics 4 #campaign tracking #marketing

Written by the MakeItFlow team

We build the website audit these guides are based on. Every fact is checked against the primary sources listed above and this guide was last reviewed on 25 October 2026 . How we research and check

Share LinkedIn X Facebook WhatsApp

Check your own site in 30 seconds

Run a free audit covering speed, SEO, DNS, email authentication and security headers — and get a prioritised fix list.

Weekly newsletter

One practical website fix, every week

New guides on speed, SEO, email deliverability and security — straight to your inbox. No spam, unsubscribe in one click.

Keep reading