Tutorials

A Practical Guide to UTM Parameters Campaign Tracking Guide

Flowsery Team
Flowsery Team
4 min read

TL;DR — Quick Answer

4 min read

UTM parameters describe campaigns, not people. Use consistent source, medium, campaign, term, and content values on external links, and never use UTMs for internal navigation.

This guide explains UTM Parameters Campaign Tracking Guide in practical terms, with a focus on privacy-first analytics decisions.

UTM parameters are simple URL tags that tell your analytics tool where a visit came from. They are one of the most privacy-friendly campaign measurement methods because they describe the link, not the individual person.

A tagged URL looks like this:

https://example.com/privacy-analytics?utm_source=newsletter&utm_medium=email&utm_campaign=april_launch

When someone clicks it, your analytics tool can group the visit under that campaign.

The Five Standard UTM Parameters

ParameterPurposeExample
utm_sourceWho sent the trafficnewsletter, linkedin, partner_name
utm_mediumChannel typeemail, paid_social, referral, cpc
utm_campaignCampaign nameapril_launch, gdpr_webinar
utm_termPaid search keyword or targeting termprivacy_analytics
utm_contentCreative, placement, or link varianthero_cta, footer_link, image_ad

Use source, medium, and campaign for almost every campaign link. Use term and content only when they add real reporting value.

Naming Rules

Create a shared naming convention:

  • Lowercase everything.
  • Use underscores or hyphens consistently.
  • Avoid spaces.
  • Avoid personal data.
  • Use stable channel names.
  • Keep campaign names readable.
  • Document allowed values.

Bad:

utm_source=LinkedIn&utm_medium=Social&utm_campaign=Bob's Test Campaign Final v3

Better:

utm_source=linkedin&utm_medium=paid_social&utm_campaign=privacy_webinar_2026

Analytics tools often treat capitalization differences as different values. linkedin and LinkedIn can split reports.

UTMs are for external acquisition. If you add UTMs to internal links, you overwrite the original source and corrupt attribution.

For internal placement tracking, use event properties or custom dimensions such as cta_location = header, footer, pricing_card. Keep campaign tags for links coming from outside your site.

Privacy Considerations

UTMs should not identify a person. Do not put email addresses, customer IDs, names, phone numbers, or unique recipient IDs in UTM values.

Avoid:

utm_campaign=renewal_for_jane_smith
utm_content=user_123456
utm_source=email_jane@example.com

If you need per-recipient email analytics, handle it inside your email platform with appropriate consent and privacy controls. Your public website analytics usually only needs aggregate campaign performance.

UTMs and Browser Tracking Protection

Browser privacy features increasingly target link decoration used for cross-site tracking. WebKit describes link decoration as tracking via identifiers added to URLs and explains related protections in its Tracking Prevention documentation. These protections focus especially on parameters that identify a user or click across sites.

Flowsery
Flowsery

Start Free Trial

Real-time dashboard

Goal tracking

Cookie-free tracking

Standard UTMs generally describe campaign context rather than a unique person. That makes them more durable and more privacy-friendly than click IDs such as gclid, fbclid, or unique email recipient parameters. Still, keep UTMs generic and avoid turning them into identifiers.

Campaign Examples

Email newsletter

utm_source=newsletter
utm_medium=email
utm_campaign=monthly_privacy_roundup
utm_content=top_cta

LinkedIn paid campaign

utm_source=linkedin
utm_medium=paid_social
utm_campaign=ga4_alternative_2026
utm_content=founder_video
utm_source=partner_acme
utm_medium=referral
utm_campaign=agency_partner_program

Webinar promotion

utm_source=brevo
utm_medium=email
utm_campaign=gdpr_analytics_webinar
utm_content=reminder_2

Reporting Habits

Review UTMs weekly or monthly:

  • Campaigns with high traffic but low conversion.
  • Sources with fewer visits but higher intent.
  • Medium values that are inconsistent.
  • Campaigns missing source or medium.
  • Internal links accidentally tagged.
  • Paid platform clicks that do not match landing-page sessions.

Privacy-first analytics tools can report UTM performance without identifying visitors. Pair campaign data with aggregate conversions and funnels, and you have enough insight for most marketing decisions.

Governance Template

Keep a shared sheet or document with:

  • Campaign name.
  • Owner.
  • Start and end date.
  • Landing page.
  • Allowed UTM values.
  • Goal or conversion.
  • Notes.

UTMs work because they are boring. The cleaner your naming, the more useful your campaign reports become.

Build a UTM Dictionary

Create a small dictionary your team can reuse:

FieldAllowed examples
sourcegoogle, linkedin, newsletter, partner_name
mediumorganic, cpc, paid_social, email, referral
campaignproduct_launch_2026, gdpr_webinar, spring_offer
contenthero_cta, sidebar, text_link, video_ad
termpaid keyword or audience label only

Do not let every tool auto-generate its own naming scheme without review. Ad platforms, email tools, affiliates, and social schedulers often use different defaults.

Handle Redirects Carefully

UTMs can be lost when links pass through shorteners, redirect chains, payment providers, app stores, or authentication flows. Test final landing URLs before a campaign launches. The browser address bar should still contain the parameters when the analytics script or server-side collector sees the landing page.

Clean Up Reporting

Even disciplined teams make mistakes. Set a monthly cleanup rule: merge obvious capitalization variants, flag unknown sources, and update the dictionary. Do not rewrite historical data unless your analytics tool supports safe annotations. Often it is better to document the mistake and fix future links.

UTMs and Sensitive Campaigns

Campaign names can reveal sensitive targeting. Avoid names like depression_retreatment_high_income or union_vote_campaign. Use neutral internal codes when the landing page or audience could expose health, political, religious, union, financial, or other sensitive context. Campaign tracking should not turn a visitor's URL into a disclosure.

Final Pre-Launch Check

Before sending a campaign, click every final link from the same place a recipient will see it. Confirm the page loads, UTMs remain intact, no personal values appear in the URL, and the analytics dashboard records the source as expected. This five-minute check prevents days of unusable campaign data.

Good UTMs make privacy-first analytics stronger because campaign context survives without personal identifiers or third-party click IDs.

UTM Standard Checklist

Use this page as the team's UTM standard:

  • External campaign links get utm_source, utm_medium, and utm_campaign.
  • utm_content is reserved for placement or creative variants.
  • utm_term is used only when keyword or audience reporting is genuinely needed.
  • Internal links never use UTMs.
  • Campaign values are lowercase, stable, and selected from the shared dictionary.
  • URLs never include emails, customer IDs, names, phone numbers, account IDs, or sensitive audience labels.
  • Redirects are tested before launch, and conversions are checked in the analytics dashboard after launch.

Good UTMs make privacy-first analytics stronger because campaign context survives without personal identifiers or third-party click IDs.

Was this article helpful?

Let us know what you think!

Before you go...

Flowsery

Flowsery

Revenue-first analytics for your website

Track every visitor, source, and conversion in real time. Simple, powerful, and fully GDPR compliant.

Real-time dashboard

Goal tracking

Cookie-free tracking

Related Articles