Get a Proposal

Strategy & Analytics

UTM Parameters: The Naming Convention and Rules We Use on Every Client Account

UTM parameters are short tags you add to the end of a link, such as ?utm_source=newsletter&utm_medium=email&utm_campaign=spring-tuneup, so Google Analytics can tell which source, channel and campaign sent each visitor. Used with a strict naming convention, they turn "Direct" and "Unassigned" traffic into leads you can credit to the right email, post, partner or flyer.

UTM parameters shown as small tags clipped onto a link that flows into an analytics chart
UTM parameters are labels on your links. A strict naming convention is what makes the report readable.

Key takeaways

  • Always set utm_source, utm_medium and utm_campaign. Google says missing values show up as (not set) in reports.
  • Values are case sensitive in GA4: Email, email and EMAIL become three rows. Use lowercase and hyphens only.
  • utm_medium decides the channel. Values GA4 does not recognize, such as gbp or qr, land in Unassigned.
  • Never tag your own internal links, and let Google Ads auto-tagging handle Google Ads clicks.
  • Keep one shared UTM sheet. Every tagged link gets built from it, so the naming stays consistent across people and years.

What UTM parameters are and what each one does

UTM parameters are name-value pairs added after a question mark in a URL. They do nothing for the visitor. They exist so your analytics tool can record where the click came from. Google Analytics 4 reads nine of them, and three do most of the work.

ParameterWhat it identifiesExample valueUse it?
utm_sourceThe site, sender or place the click came fromnewsletter, facebook, partner-siteAlways
utm_mediumThe type of channelemail, social, cpc, referralAlways
utm_campaignThe promotion, offer or initiativespring-tuneup-2026Always
utm_contentWhich link or creative was clickedhero-button, footer-linkWhen one message has several links or versions
utm_termThe paid keywordac-repairMostly for paid search outside Google Ads
utm_idA campaign ID used for data importsfb-2026-031If you upload cost or campaign data
utm_source_platformThe buying or management platformSearch Ads 360Rarely, for large ad stacks
utm_creative_formatThe creative typevideo, nativeNot currently reported in GA4
utm_marketing_tacticThe targeting approachremarketing, prospectingNot currently reported in GA4

Google's Google Analytics help page on campaign URLs says you should always use utm_source, utm_medium and utm_campaign, and that parameters you leave out appear as "(not set)" in reports. It also notes that utm_creative_format and utm_marketing_tactic are not currently reported in Google Analytics properties, so adding them today is extra typing for no visible result.

What a tagged link looks like

https://example.com/ac-tune-up/?utm_source=newsletter&utm_medium=email&utm_campaign=spring-tuneup-2026&utm_content=hero-button

The first parameter follows a question mark. Each one after that follows an ampersand. If the page URL already has a question mark in it, add the UTM parameters with an ampersand instead.

How GA4 turns UTM parameters into channels

GA4 sorts every tagged visit into a channel, such as Email, Organic Social or Paid Search, mostly by reading utm_medium and utm_source against a fixed set of rules. If your values do not match a rule, the visit lands in Unassigned and disappears from the channel reports you actually read.

This is the part most UTM guides skip, and it is the reason so many small business reports show a large Unassigned slice. The rules below come straight from Google's default channel group rules.

Channel in GA4utm_medium values that qualify (manual tagging)
Emailemail, e-mail, e_mail or e mail (in source or medium)
Organic Socialsocial, social-network, social-media, sm, social network, social media; or a known social site as the source
Paid SocialA known social site as source plus a paid medium: anything containing "cp" (cpc), ppc, retargeting, or starting with "paid"
Paid SearchA known search engine as source plus the same paid mediums
Displaydisplay, banner, expandable, interstitial, cpm
Referralreferral, app, link
SMSsms (exact, in source or medium)
Affiliatesaffiliate
Organic Videoanything containing "video", or a known video site as source
UnassignedAnything that matches no rule, such as gbp, qr, print, newsletter or flyer

Case: what matters and what does not

Two different rules apply here. Google says UTM parameter values are case sensitive, so utm_source=google and utm_source=Google show as separate sources. The channel definitions themselves are not case sensitive, so "Email" still counts as the Email channel. The practical result: mixed case will not break your channels, but it will split your source and campaign reports into duplicate rows that someone has to add up by hand.

When you need your own channels

The default channel group cannot be edited. If you want Google Business Profile or printed QR codes to be their own channel, GA4 lets you build custom channel groups: a standard property gets two, and Google says they apply to reports retroactively. That is cleaner than bending your medium values to fit the default rules.

Our UTM parameters naming convention

A naming convention is a short set of rules everyone follows when building tagged links, so the same channel always gets the same values. These are the nine rules we apply on every client account.

  1. Lowercase everything. No exceptions, because values are case sensitive.
  2. Hyphens between words, never spaces. Spaces turn into %20 or plus signs and break filters.
  3. utm_medium is a channel type from GA4's list. email, social, cpc, paid-social, referral, sms, display, affiliate. Nothing invented.
  4. utm_source is the specific place. facebook, instagram, linkedin, newsletter, chamber-of-commerce.
  5. utm_campaign follows one pattern: offer-or-topic plus year or month, such as spring-tuneup-2026 or open-house-2026-11.
  6. utm_content tells links apart, such as hero-button versus footer-link, or video-a versus video-b.
  7. No personal data. Never put an email address, name or phone number in a UTM value.
  8. No UTM parameters on internal links. More on that below.
  9. Every tagged link is built from the shared sheet, never typed from memory.

The convention table

This is the table we start from. Adapt the source names to your business, but keep the mediums.

Where the link livesutm_sourceutm_mediumutm_campaign exampleLands in
Monthly email newsletternewsletteremailnewsletter-2026-11Email
Automated follow-up email from your CRMcrmemailnew-lead-followupEmail
Text message blastsmssmsholiday-hours-2026SMS
Organic Facebook postfacebooksocialfall-promo-2026Organic Social
Instagram bio linkinstagramsocialbio-linkOrganic Social
Meta ad (Facebook or Instagram)facebook or instagrampaid-socialfall-promo-2026Paid Social
Google Business Profile website linkgoogleorganicgbp-websiteOrganic Search
Partner or directory listingpartner-namereferralpartner-listingReferral
QR code on a flyer or truckflyer or truckqrtruck-wrap-2026Unassigned unless you add a custom channel

Two rows deserve a note. Tagging the Google Business Profile link with medium organic keeps those visits in Organic Search, while the campaign value lets you filter them out to see how your listing performs on its own. Our guide to Google Business Profile optimization covers the rest of the profile. For QR codes, accept Unassigned or build a custom channel called Offline; do not fake a medium like referral, because it muddies real referral data.

Where UTM parameters do not belong

UTM parameters belong on links you place outside your own website, on channels Google cannot identify by itself. Using them anywhere else does more harm than good.

Internal links on your own site

Never add UTM parameters to a banner, button or menu link that points from one page of your site to another. The visitor already arrived from somewhere, and the tag overwrites that story with your own label. A lead who came from a Google search and then clicked your homepage banner can end up credited to "homepage-banner" instead of search. If you want to know which internal links get clicked, track them as events, not campaigns.

Google Ads clicks

Google Ads has auto-tagging, which adds a click ID (the gclid) to the landing page URL. Google's Google Ads auto-tagging help page says that in GA4 auto-tagging is prioritized over manual tagging, so adding UTM parameters to Google Ads URLs is redundant at best. Leave auto-tagging on and link Google Ads to GA4. Tag Microsoft Ads, Meta and other platforms manually, unless they offer their own tested auto-tagging.

Organic search results and AI answers

You cannot tag the links Google, Bing or an AI assistant shows for your pages, Those visits are identified by their referrer. The work there is visibility, which our small business SEO guide covers.

Build every tagged link from a template, then click it yourself before it goes out. Most broken UTM parameters we find were never tested once.

This matters most for anything you post on a schedule. If you follow our social media plan for small businesses or a content marketing strategy, every post and email that links to your site is a chance to collect clean source data, or to add another messy row.

  1. Open your shared UTM sheet and add a row: date, owner, destination URL, source, medium, campaign, content, final URL.
  2. Build the URL with a formula in the sheet, or with Google's free Campaign URL Builder, so nobody types the parameters by hand.
  3. Shorten it only if the channel needs a short link, such as print or SMS. Keep the full URL in the sheet.
  4. Click the final link on a phone and a desktop. Check that the page loads and the parameters are still in the address bar.
  5. Open GA4's Realtime report and confirm the visit shows the source and campaign you expect.

The redirect check

Some redirects strip everything after the question mark. If your link goes through a redirect (an old URL, an http to https hop, a link shortener, a QR code service), check that the UTM parameters survive to the final page. If they do not, point the link straight at the final URL.

The shared sheet

ColumnWhy it is there
Date created and ownerSo you can ask who made a link and why
Destination URLThe exact landing page, with trailing slash
Source, medium, campaign, contentDrop-down lists only, built from the convention table
Final URL (formula)Built automatically, copied into the email, post or print file
Short link or QR codeWhere print and SMS links point
NotesAnything a future reader will need, like "printed on 5,000 door hangers"

Reading UTM parameters in GA4

Your tagged traffic shows up in GA4's Traffic acquisition report. Switch the primary dimension to Session source / medium or Session campaign to see each value you set, then add key events as a column to see which campaigns produced leads.

Three views answer most questions:

  • Session default channel group: the big picture. Check that Unassigned is small. If it is growing, someone is inventing mediums.
  • Session source / medium: the detail. Look for duplicates like facebook / social and Facebook / Social, which means the convention is slipping.
  • Session campaign: results by promotion. This is where utm_campaign pays off, because you can compare the spring email against the fall one.

Clicks are not the finish line

A UTM tag tells you where a visit came from. It does not tell you whether that person called, booked or bought. Mark your real actions as key events, and track phone calls as well as forms. Our own platform, UnifiedIQ, tracks every call and form back to its source, which is how a campaign value in a link becomes a lead count in a monthly report. If you want that wired into your own stack, our analytics and reporting team sets up the tagging, key events and call tracking together.

The payoff is specific. For Aces Airboat Tours we counted 369 booking-button clicks in the first two months, which is the kind of number that settles debates about what is working. You can see the rest of our measurement work on the analytics and growth hub.

Here is how we would tag a single promotion across channels for a hypothetical HVAC company running a fall tune-up offer. The campaign value stays the same everywhere, so GA4 can show the whole promotion in one row and then split it by source.

PlacementTagged values
Email to past customers, main buttonsource=newsletter, medium=email, campaign=fall-tuneup-2026, content=hero-button
Same email, P.S. linksource=newsletter, medium=email, campaign=fall-tuneup-2026, content=ps-link
Text message to memberssource=sms, medium=sms, campaign=fall-tuneup-2026
Facebook organic postsource=facebook, medium=social, campaign=fall-tuneup-2026
Meta ad, video versionsource=facebook, medium=paid-social, campaign=fall-tuneup-2026, content=video-30s
Meta ad, photo versionsource=facebook, medium=paid-social, campaign=fall-tuneup-2026, content=photo-tech
Door hanger QR codesource=door-hanger, medium=qr, campaign=fall-tuneup-2026
Google Ads search campaignNo UTM parameters. Auto-tagging on.

At the end of the month the owner can answer real questions. Did the email or the text drive more bookings? Did the video ad beat the photo? Was the door hanger worth printing? Without the tags, most of this traffic would have shown up as Direct or Unassigned and the answers would be guesses.

Planning which channels a promotion runs on in the first place is a strategy question; our guide to building a digital marketing strategy covers that step.

UTM parameters mistakes that break your reports

The same handful of mistakes cause most of the messy data we inherit. Each one is easy to prevent with the sheet and the rules above.

MistakeWhat it does to your dataFix
Invented mediums (newsletter, gbp, blast)Traffic lands in UnassignedUse GA4's medium values; put the detail in source or campaign
Mixed case (Facebook vs facebook)Duplicate rows that split resultsLowercase only, enforced by drop-downs
UTM tags on internal linksLeads credited to your own bannerTrack internal clicks as events
UTM tags on Google Ads with auto-tagging onRedundant tags, confusing reportsRemove them; rely on auto-tagging
Campaign names that change mid-promotionOne promotion split into several rowsName the campaign once, in the sheet, before launch
Redirects that strip parametersTagged traffic shows as DirectTest the final URL; link straight to it
Tagging social profile links once, never againOld campaign names live foreverUse evergreen names like bio-link for permanent links

A five-minute monthly check

Once a month, open Session source / medium for the last 30 days and sort alphabetically. Duplicates, capital letters and odd mediums jump out. Fix the source link, update the sheet, and note the date so the next report explains the change. For paid social specifically, our paid social team builds the tagging into every ad set from day one, and you can ask us to review your current setup.

UTM parameters questions, answered

What are UTM parameters used for?

UTM parameters tell your analytics tool where a click came from: the source, the type of channel and the campaign. They let you credit visits and leads to a specific email, social post, partner link or printed QR code instead of seeing them as Direct or Unassigned traffic.

Which UTM parameters are required?

Google recommends always using utm_source, utm_medium and utm_campaign. Add utm_content when one message has several links or creative versions, and utm_term for paid keywords outside Google Ads. Parameters you leave out show as (not set) in Google Analytics reports.

Are UTM parameters case sensitive?

Yes. In Google Analytics 4, utm_source=Facebook and utm_source=facebook are recorded as different values, so your reports split into duplicate rows. GA4's channel rules are not case sensitive, but your source and campaign reports are. Use lowercase for every value.

Should I use UTM parameters on Google Ads?

Usually not. Google Ads auto-tagging adds a click ID to each ad click, and Google says GA4 prioritizes auto-tagging over manual tags. Keep auto-tagging on and link your Google Ads and Analytics accounts. Tag other ad platforms manually.

Do UTM parameters affect SEO?

Not when used correctly. UTM parameters belong on links you place outside your site, such as emails and social posts, and your pages should have canonical tags pointing to the clean URL. Never add them to internal links, and do not use tagged URLs in your sitemap.

Why is my tagged traffic showing as Unassigned in GA4?

Your utm_medium value probably does not match any of GA4's default channel rules. Values like newsletter, gbp or qr match nothing, so the visits fall into Unassigned. Change the medium to a recognized value such as email, social or referral, or create a custom channel group.

Clean up your tracking

We will audit your tagged links and GA4 channels, set a naming convention your team can follow, and connect every call and form to its source.

Get a free proposal