How to track content campaigns using UTM parameters for free

Executive overview

Marketers spend across multiple channels but can't tell which link drove which result. UTM parameters — small text snippets appended to URLs — tag each link with source, medium, and campaign data that Google Analytics records automatically.

Build a tagged URL with Google's free Campaign URL Builder, post it, then filter GA4's traffic acquisition report to see visit counts, engagement metrics, and conversions — filtered by any UTM dimension.

Consistent naming is the single biggest factor in whether your UTM data is usable.

What UTMs are and how they work

  • UTM stands for Urchin Tracking Module, named after the company Google acquired in 2005 to create GA.
  • UTMs append to a destination URL as query parameters — they don't change the page, only the data GA records.
  • Five parameters: source (specific referrer), medium (channel type), campaign (campaign name), term (keyword or audience), content (ad creative or variant).
  • Source, medium, and campaign are the core fields; term and content are optional and mainly used for paid campaigns.
  • Organic posts can still use term to distinguish individual contributors or posts.

Building a UTM link

  • Use Google's free Campaign URL Builder (linked in video description).
  • Source: the specific referrer (e.g. linkedin).
  • Medium: the channel type (e.g. social, email, cpc).
  • Campaign: one shared name used across every channel promoting that initiative (e.g. ga4_course) — must be identical across all links.
  • The builder outputs a complete tagged URL; shorten with Bitly if sharing outside a platform that auto-shortens.

Analysing results in GA4

  • Go to Reports > Traffic acquisition or User acquisition.
  • Set the primary dimension to Session campaign (or source, medium, term, content).
  • Apply a filter to isolate a specific campaign.
  • GA4 shows traffic volume plus engagement: events completed, average session duration, bounce rate.
  • Any UTM parameter can be used as a filter — drill from campaign down to individual term.

Three mistakes to avoid

  • Inconsistent capitalisation: Instagram and instagram appear as two separate sources; use all-lowercase across every link.
  • Over-parameterising: skip term and content if you won't act on that data — unused parameters add noise without insight.
  • Partial coverage: if some links in a campaign lack UTMs, a share of traffic is unattributed; tag every link in a campaign.

More like this — when you're ready for early access.

Join the waitlist for a personal account and content recommendations based on what you're working on.

No spam. Unsubscribe at any time.

You're on the list. We'll be in touch before launch.

Get early access to the full library.

Join the waitlist for a personal account and content recommendations based on what you're working on.

No spam. Unsubscribe at any time.

You're on the list. We'll be in touch before launch.

Be among the first to get personalised recommendations tailored to your stage in business.

No spam.

You're on the list. We'll be in touch before launch.

Be among the first to get personalised recommendations tailored to your stage in business.

No spam.

You're on the list. We'll be in touch before launch.