Tracking6 min read

How to Set Up UTM Tracking Without Breaking Your Analytics

A practical walkthrough of UTM source, medium, and campaign naming — plus the mistakes that quietly corrupt your reports.

UTM parameters are the five tags — source, medium, campaign, term, and content — that GA4, HubSpot, and every other analytics platform reads to tell you where a visitor actually came from. Get them right and your channel reports are trustworthy. Get them wrong and you end up with a dozen near-duplicate rows in your traffic report because "Newsletter", "newsletter", and "NEWSLETTER" all landed as different sources.

The three tags you actually need

Term and content are optional and mostly used for paid search keyword tracking and A/B testing link variants. For everyday campaigns, focus on getting source, medium, and campaign consistent:

  • utm_source — the specific platform or publisher: "newsletter", "facebook", "google", not a vague label like "email" or "social".
  • utm_medium — the channel type: "email", "cpc", "social", "referral". This is where most teams get inconsistent — decide on a fixed list of mediums and never deviate.
  • utm_campaign — the specific campaign or initiative name: "spring_sale_2026", not "promo".

Case-sensitivity will wreck your reports

GA4 and most platforms treat "Newsletter" and "newsletter" as two separate sources. The single biggest cause of fragmented channel reports isn't bad campaign planning — it's someone typing utm_source=Newsletter in one link and utm_source=newsletter in the next. Pick all-lowercase, no spaces, underscores instead of hyphens (or vice versa) as your house style, write it down, and stick to it. A naming convention only works if it's actually enforced, which is why a lot of teams keep a shared naming doc or run every link through the same builder before it ships.

Don't tag your own internal links

A common mistake: adding UTM parameters to a link in your own site nav, or a link from your blog to another page on the same domain. Since GA4 attributes a session to the UTM tags on the URL a visitor lands on, an internally-tagged link can overwrite the visitor's real original source — a person who arrived via a Google ad, then clicked an internally-UTM-tagged banner, can get reattributed to that banner instead of the ad that actually brought them in. Only tag links that live outside your own site: emails, ads, social posts, partner placements.

Build a link, then verify it before sending

Before a tagged link goes out in a newsletter or ad, paste it into GA4's DebugView or just visit it yourself and confirm the campaign shows up as expected in Realtime reports. It takes thirty seconds and catches typos before they cost you a week of clean data.