Skip to main content

Free download

Create and enforce a UTM campaign tagging convention

Agree a consistent set of UTM values, keep them in a shared campaign log, and tag every marketing link so GA4 reports traffic in the right channel.

We reply within one working day. No pitch, no pressure.

Tracking & AnalyticsFreePDFWW-017 · v1.0
Time
60 minutes to set up, 2 minutes per link
Difficulty
Beginner
Audience
Anyone who creates links for emails, social posts, adverts, QR codes or partner campaigns

Tools: Google Analytics 4 · Campaign URL Builder · A shared spreadsheet

Download free PDF

Free download. No account needed. Resources licence. Branded PDF in the Wright Websites design system. Covered by the resources licence.

01 / Procedure

How to follow it

Purpose

Google Analytics 4 (GA4) can only credit a campaign if the link that brought the visitor says where it came from. UTM parameters carry that information, but inconsistent values ("Facebook", "facebook", "fb") split one source into several rows and push traffic into the wrong channel. This procedure sets one naming convention, one campaign log and one way of building links. It is finished when every live campaign link follows the convention and appears in GA4 under the expected channel.

Scope

In scope

  • Defining allowed values for source, medium and campaign
  • Building, logging and testing tagged links
  • Checking that GA4 groups the traffic into the right channel

Out of scope

  • Google Ads links (Google Ads uses auto-tagging; see the Prerequisites)
  • Custom channel groups and attribution model changes
  • Link shorteners and QR code design

Roles and responsibilities

RoleResponsibility
Analytics ownerOwns the convention and the campaign log, and approves new values.
Campaign creatorBuilds and logs every tagged link before it is published.
ReviewerChecks GA4 each month for values that break the convention.

Prerequisites

  • GA4 collecting data on the website (WW-002).
  • Edit access to a shared spreadsheet for the campaign log.
  • Confirmation that auto-tagging is switched on in any linked Google Ads account, so Google Ads links do not need manual UTMs.

Procedure

Agree the convention

Write the rules once, then never improvise.

  1. Create a spreadsheet with two tabs: Convention and Campaign log.

  2. On Convention, list the allowed values for utm_medium. Use values GA4 recognises in its default channel group:

    • email for email newsletters and automated emails.
    • social for unpaid social posts.
    • paid_social for paid social adverts.
    • cpc for paid search outside Google Ads, such as Microsoft Advertising.
    • display for banner adverts.
    • referral for partner and directory links, and for printed QR codes.
  3. List the allowed values for utm_source, such as facebook, instagram, linkedin, newsletter, bing, named partner sites and printed items such as flyer or van-livery.

  4. Set the campaign naming pattern, for example yyyy-mm_offer-or-theme, such as 2026-10_winter-boiler-service.

  5. Add the formatting rules: lowercase only, words separated by hyphens, no spaces, no personal data.

    [!IMPORTANT] UTM values are case-sensitive in GA4. Facebook and facebook are reported as two different sources.

Build a tagged link

Use a builder rather than typing parameters by hand.

  1. Open the Campaign URL Builder and paste the landing page URL.

  2. Enter utm_source, utm_medium and utm_campaign from the convention. Use utm_content to tell apart two links in the same campaign, such as header-button and footer-link.

  3. Copy the generated URL.

  4. Add a row to the Campaign log with the date, owner, channel, landing page, each UTM value and the full tagged URL.

    [!WARNING] Never add UTM parameters to links between pages on your own website. They overwrite the visitor's original source and start a new session in GA4.

Test the link

Check the link before it goes out.

  1. Open the tagged URL in a private window and confirm the landing page loads without redirecting away from the parameters.
  2. In GA4, open Reports, then Realtime, and confirm your visit appears with the expected source and medium.

Review monthly

Catch mistakes before they spread.

  1. In GA4, open Reports, then Acquisition, then Traffic acquisition, and set the dimension to Session source / medium.
  2. Look for values not in the convention, such as capital letters, typos or (not set) campaigns.
  3. Fix the source of each bad value (the email template, scheduler or advert) and note it in the campaign log.
  4. Switch the dimension to Session default channel group and confirm tagged traffic is not landing in Unassigned.

Quality checks

  • The convention lists allowed values for source and medium and the campaign naming pattern.
  • Every live campaign link appears in the campaign log.
  • All values are lowercase with hyphens and contain no personal data.
  • No internal links carry UTM parameters.
  • Tagged traffic appears under the expected channel, not Unassigned.

Troubleshooting

SymptomLikely causeFix
Campaign traffic in UnassignedMedium value GA4 does not recogniseUse a medium from the convention, such as email or paid_social.
Same source appears twiceMixed capitals or spellingsCorrect the links and add the value to the convention.
Parameters missing on arrivalA redirect drops the query stringLink to the final URL, or fix the redirect to keep parameters.
Google Ads traffic shows as google / organicAuto-tagging off or GA4 not linkedSwitch on auto-tagging and link Google Ads to GA4.

Records

  • Keep the campaign log for the life of the client relationship. It is the only record of what each campaign value meant.
  • Record any change to the convention, with the date, on the Convention tab.

References

Related procedures