Skip to content

Search WPDesignVault

Try "image", "json", "schema" or "contrast". Use arrow keys to move through results.

Marketing Guides

UTM Parameters: A Naming Convention That Keeps Analytics Clean

Which UTM parameters to use, why utm_medium decides your GA4 channel, a naming convention you can copy, and how to find and fix messy campaign data.

Comprehensive guide and visual tutorial explaining utm naming convention for WordPress websites.
On this page

A UTM naming convention is a short set of rules for how your team writes campaign tracking tags, so the same source always appears under the same name in your analytics. The essentials: always set utm_source, utm_medium and utm_campaign; write every value in lowercase with hyphens instead of spaces; choose utm_medium from a fixed list that matches Google Analytics' channel rules (such as email, social, cpc, referral); and record every tagged link in one shared sheet. Never tag links between pages on your own site.

This guide explains each UTM parameter, why medium matters most in Google Analytics 4 (GA4), a complete naming convention you can copy, how to build and share tagged links, where UTMs cause problems, and how to find and fix messy campaign data.

The UTM parameters

UTM parameters are added to the end of a link. When someone follows the link, analytics tools read them to record where the visit came from.

Table: UTM parameters read by Google Analytics 4

Parameter What it records Example Required?
utm_source The specific referrer: site, newsletter, platform newsletter, facebook, partner-site Yes
utm_medium The type of channel email, social, cpc Yes
utm_campaign The campaign, promotion or theme autumn-sale-2026 Yes
utm_content Which link or creative was clicked header-button, video-ad-b Recommended when one message has several links
utm_term The paid keyword wordpress-hosting Mainly for paid search
utm_id A campaign ID, used when importing campaign cost or other data c-2026-041 Optional

GA4 also documents utm_source_platform, utm_creative_format and utm_marketing_tactic, but Google notes that the last two are not currently reported in GA properties. Most small and medium sites never need them.

Google's documentation is explicit that parameter values are case-sensitive: utm_source=google and utm_source=Google are recorded as different sources. It also warns that missing UTM parameters show up as (not set) in reports.

<h2
Step-by-step workflow architecture diagram for implementing utm naming convention on live sites.
Three-phase workflow architecture diagram for generating, deploying, and testing utm naming convention.

Why utm_medium matters most in GA4

GA4 groups traffic into default channels, such as Email, Organic Social and Paid Search, mostly based on the medium (and sometimes the source). If your medium does not match one of GA4's rules, the traffic lands in Unassigned, where it is effectively lost from channel reports. Channel rules are not case-sensitive, but they can only be edited by creating a custom channel group.

Table: Medium values that match GA4 default channel rules

Channel Recommended utm_medium What GA4's rule looks for
Email email Source or medium of email, e-mail, e_mail or "e mail"
Organic Social social A known social source, or medium such as social, social-network, social-media or sm
Paid Social paid-social A known social source with a medium matching cp…, ppc, retargeting or paid…
Paid Search cpc A known search source with a medium matching cp…, ppc, retargeting or paid…
Display display Medium of display, banner, expandable, interstitial or cpm
Referral referral Medium of referral, app or link
Affiliates affiliate Medium of exactly "affiliate"

A common mistake shows why this matters: tagging a newsletter with utm_medium=newsletter. It does not match the Email rule (unless the source is email), so the traffic goes to Unassigned. Put "newsletter" in utm_source and keep utm_medium=email.

Paid social and paid search channels also depend on GA4 recognising the source as a social site or search engine. Use the platform's plain name (facebook, linkedin, bing) as the source so those rules can match.

A naming convention you can copy

Formatting rules

  • Lowercase everything. It removes the most common cause of split data.
  • Use hyphens between words, never spaces. Spaces become %20 or + in links and are easy to get wrong.
  • Use only letters, numbers and hyphens. Avoid &, ?, #, / and accented letters, which need URL encoding and break easily.
  • Never include personal information. Google's Analytics policies say URLs and parameters must be free of personally identifiable information, and specifically warn against putting it in UTM parameters. That means no email addresses or names in utm_content or utm_term.

Value rules

Table: Illustrative UTM naming convention

Parameter Rule Allowed values (examples)
utm_medium Fixed list only; no new values without agreement email, social, paid-social, cpc, display, referral, affiliate, qr
utm_source Platform or publication name from a maintained list newsletter, facebook, linkedin, instagram, partner-acme, flyer
utm_campaign Topic + month or season + year product-launch-oct-2026, spring-sale-2026, webinar-seo-nov-2026
utm_content Placement or variant header-button, footer-link, image, video-ad-b
utm_term Keyword or audience, if useful wordpress-hosting, retargeting-30d

Note that qr is not one of GA4's default channel values, so QR-code traffic would appear as Unassigned unless you create a custom channel group. If you prefer it to land in an existing channel, use referral as the medium and qr-flyer or similar as the source. Decide once and document it.

Keep a tracking sheet

Record every tagged link in a shared spreadsheet with these columns: date, owner, destination URL, source, medium, campaign, content, full tagged URL and where it was used. The sheet is your dictionary of allowed values and your audit trail when numbers look odd.

<h2
Recommended best practices checklist and common pitfalls to avoid for utm naming convention.
Implementation checklist comparing recommended best practices against common errors in utm naming convention.

The UTM Builder takes the destination URL and the six campaign fields (source, medium and campaign required; term, content and ID optional), can force values to lowercase and replace spaces with hyphens or underscores, and outputs the full link. A finished link looks like this:

https://example.com/pricing/?utm_source=newsletter&utm_medium=email&utm_campaign=autumn-offer-2026&utm_content=header-button

If the destination already has a query string, the UTM parameters are joined with & rather than a second ?. If a value must contain special characters, encode it properly; the URL Encoder / Decoder shows exactly what a value becomes.

Worked examples

The following examples are illustrative.

Table: Example tags for common campaigns

Situation source medium campaign content
Monthly newsletter, main button newsletter email newsletter-oct-2026 main-button
Organic LinkedIn post linkedin social case-study-acme-2026 post-image
Paid Facebook ad, video variant B facebook paid-social spring-sale-2026 video-b
Guest article on a partner site partner-acme referral guest-post-2026 author-bio
Printed flyer QR code flyer-spring referral spring-open-day-2026 qr-code

Where not to use UTM parameters

Never add UTMs to links from one page of your site to another, including banners, menus and pop-ups. A UTM-tagged link tells your analytics that a new campaign brought the visitor, so a visitor who arrived from Google search and then clicked your tagged banner can have later activity, including conversions, credited to your own banner instead of to search. Track internal clicks with events instead.

Tagged URLs are different addresses from the clean page. If tagged links are shared widely, search engines may discover them. Make sure every page has a self-referencing canonical tag pointing to the clean URL; the Canonical Tag Checker shows what a page declares. Most WordPress SEO plugins output canonical tags automatically.

Google Ads auto-tagging adds its own click identifier and passes campaign data to linked Google Analytics properties. Adding manual UTMs on top can conflict with it. Use manual UTMs for other platforms and leave Google Ads to auto-tagging unless you have a specific reason.

Long tagged links look untidy in social posts and printed materials. You can shorten them with a link shortener or with a short address on your own domain that redirects to the tagged URL. Either way, test that the redirect keeps the query string intact.

Server configuration matters here. In our testing, an Apache Redirect rule passed the query string through to the target automatically, but an Nginx return 301 rule dropped it unless the target included $is_args$args. Our guide to 301 redirects in WordPress covers both, and the Redirect Checker shows exactly where a short link ends up, including its parameters.

Checking your campaign data in GA4

  • Open Reports → Acquisition → Traffic acquisition.
  • Change the primary dimension to Session source / medium, or Session campaign to compare campaigns.
  • Look for the problems listed below.
  • Fix the links at their source and update your tracking sheet.

Problems to look for:

  • the same source written several ways (Facebook, facebook, fb);
  • traffic in the Unassigned channel;
  • (not set) campaigns;
  • your own domain appearing as a referral source.

Note that UTM values do not appear in GA4's page path dimensions; Google says they are omitted from page path and landing page query-string dimensions and appear in the page location dimension instead.

Existing data cannot be corrected retrospectively in standard reports. Fix the links going forward, and use comparisons or explorations that group the variants if you need to report on the past.

Connecting campaigns to results

Consistent tags make it possible to compare channels fairly. Once traffic is attributed correctly, measure what it produces: conversion rate and cost per conversion with the Conversion Rate Calculator, and the other campaign maths with the full set of marketing calculators.

Common mistakes

  • Using newsletter as the medium, sending email traffic to Unassigned.
  • Mixed capitalisation, splitting one source into several rows.
  • Tagging internal links, which overwrites the real source of the visit.
  • Inventing new mediums per campaign instead of using the agreed list.
  • Putting personal data in UTMs, such as subscriber email addresses.
  • Short links or redirects that strip the query string.
  • No record of tags, so nobody knows what a value means six months later.

Troubleshooting

Table: UTM problems: symptoms, likely causes and fixes

Symptom Likely cause Fix
Campaign traffic in Unassigned Medium does not match a default channel rule Use a standard medium, or create a custom channel group
Same source appears several times Different capitalisation or spelling Standardise on lowercase values from your list
Campaign shows as (not set) Missing utm_campaign, or parameters lost in a redirect Check the link; test redirects with a redirect checker
Organic search visits credited to a banner UTMs on internal links Remove internal UTMs; track internal clicks with events
Tagged URLs appear in search results Missing or incorrect canonical tags Add a self-referencing canonical to the clean URL
Values contain %20 or odd characters Spaces or special characters in values Use hyphens and plain lowercase letters

Frequently asked questions

Which UTM parameters are required?

Use utm_source, utm_medium and utm_campaign on every tagged link. Add utm_content when one email, post or ad contains several links, and utm_term mainly for paid keywords.

Are UTM parameters case-sensitive?

Yes. Google's documentation says parameter values are case-sensitive, so Facebook and facebook are separate sources. GA4's default channel rules ignore case, but your source and campaign reports will still be split. Using lowercase everywhere avoids the problem.

Should I use hyphens or underscores?

Either works if you are consistent. Hyphens are common and match the style of URL slugs. Pick one, write it into your convention and never mix them.

Why is my email traffic showing as Unassigned?

Usually because the medium is not email. GA4's Email channel looks for email in the source or medium. Values such as newsletter or mailchimp in the medium do not match, so put those in the source instead.

No. A UTM on an internal link presents your own page as a new campaign source, so later activity in the visit can be attributed to it instead of the visitor's real source. Use event tracking to measure clicks on internal banners and buttons.

Do UTM parameters affect SEO?

They do not help rankings. Tagged URLs can create duplicate addresses if search engines find them, which is why the clean page should have a self-referencing canonical tag. Do not use UTMs on links you want search engines to follow and index.

Generally not, if auto-tagging is on and Google Ads is linked to GA4. Auto-tagging passes richer data automatically, and manual tags can conflict. Use UTMs for other ad platforms.

How should I tag QR codes and print campaigns?

Use a source that identifies the item (for example flyer-spring or poster-station), a medium your channel grouping recognises, and a campaign name. Shorten the link with a redirect on your own domain that keeps the query string, so the QR code stays simple.

Can I fix UTM mistakes in past data?

Not in standard reports. Collected values remain as they were. Correct the links going forward, and use explorations or custom channel groups to combine variants when you report on past periods.

What is utm_id used for?

It identifies a campaign by ID so you can join GA4 data with campaign information imported from elsewhere, such as costs from ad platforms that do not integrate directly. If you do not import campaign data, you can usually leave it out.

Next step

Write down your allowed mediums and sources, create the shared tracking sheet, and build your next campaign links with the UTM Builder. Then check Traffic acquisition a week later for Unassigned traffic or duplicate sources.

Percentage Calculator

Three calculators in one: X% of Y, X is what percent of Y, and percentage change from one…

Discount Calculator

Find the sale price and the amount saved from an original price and a percentage discount.

Conversion Rate Calculator

Calculate conversion rate from conversions and visitors, plus cost per conversion if you enter your spend.

CPM Calculator

Calculate cost per thousand impressions (CPM) from cost and impressions.

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *