You run an ad. Someone clicks it. They fill out a form. Your CRM records a lead. But when you ask "which ad generated this lead?" , you get a shrug. The UTM parameters were missing, or broken, or inconsistent across campaigns. So you're making budget decisions based on total lead volume instead of lead-by-lead attribution. That's how you end up doubling down on the channel that feels right instead of the one that's actually working.
UTM parameters are small additions to your URLs that carry tracking data into your analytics. They cost nothing to implement. They take about an hour to set up properly the first time. And they're the difference between knowing which ads are working and guessing.
The five UTM parameters, what each one means, a naming convention that scales across channels, complete URL examples for ChatGPT Ads / Google Ads / LinkedIn / email, the six most common mistakes (with fixes), and where to find UTM data in GA4. By the end, you'll have a system you can use for every campaign going forward.
The five UTM parameters
There are five standard UTM parameters. Three are essential. Two are optional but recommended for paid campaigns.
| Parameter | Required? | What it tracks | Example value |
|---|---|---|---|
utm_source | Yes | Where the traffic came from (which platform or site) | chatgpt / google / linkedin |
utm_medium | Yes | The type of marketing channel | cpc / email / social |
utm_campaign | Yes | The specific campaign name , your primary segmentation lever | crm_adoption_apr2026 |
utm_content | Recommended for paid | Which specific ad, email, or varient generated the click | headline_v1 / v2 |
utm_term | Google Ads only | Which keyword triggered the ad (use {keyword} dynamic value) | {keyword} |
The naming convention that scales
The biggest UTM problem at most B2B companies is not the implementation , it's the inconsistency. One person tags utm_source=ChatGPT, another uses utm_source=chatgpt, a third uses utm_source=chat-gpt. GA4 treats these as three different sources. Your data is fragmented.
Rule 1: Always lowercase
UTM values are case-sensitive in most analytics tools. Google and google will appear as two different sources. Pick lowercase for everything and enforce it.
Rule 2: Underscores, not spaces or hyphens
Spaces get URL-encoded as %20 and break readability. Hyphens create ambiguity (is google-ads one word or two?). Use underscores for compound values: google_ads, crm_adoption, may_2026.
The standard source/medium values we use
| Channel | utm_source | utm_medium |
|---|---|---|
| ChatGPT Ads | chatgpt | cpc |
| Google Search Ads | google | cpc |
| Google Display | google | display |
| LinkedIn Ads | linkedin | cpc |
| LinkedIn organic | linkedin | social |
| Newsletter / email | newsletter | email |
| Cold outreach email | outreach | email |
| Partner referral | partner_[name] | referral |
Campaign naming structure
Use this format for utm_campaign: [topic]_[funnel_stage]_[mmyyyy]. This gives you three layers of segmentation in a single field.
- Topic: the ad theme or product area being promoted (
crm_adoption,pipeline_visibility,itsm_speed) - Funnel stage: where in the buyer journey this campaign targets (
awareness,consideration,conversion) - Date: the month it launched, so you can track performance over time (
apr2026,may2026)
Example: crm_adoption_conversion_may2026 , a bottom-funnel campaign targeting CRM adoption pain points, launched in May 2026.
Complete UTM URLs by channel
ChatGPT Ads
Google Ads (with dynamic keyword insertion)
LinkedIn Ads
Email newsletter
The six most common UTM mistakes
These are the exact mistakes we find when auditing paid campaigns for new clients. Each one causes data loss or data corruption.
utm_source=Google&utm_source=google
utm_source=google (consistently)
utm_campaign=CRM Adoption Campaign May 2026
utm_campaign=crm_adoption_conversion_may2026
Newsletter email links with no UTMs at all
Every link tagged: utm_source=newsletter&utm_medium=email&utm_campaign=[name]
utm_source=ChatGPT%20Ads or utm_source=openai
utm_source=chatgpt
Running 3 ad variants with the same utm_content value
utm_content=headline_v1, utm_content=headline_v2, utm_content=headline_v3
Adding UTM parameters to internal page links
Only tag external sources , ads, emails, social posts, partner links
Finding UTM data in GA4
Once your UTMs are in place, here's where to find the data in Google Analytics 4.
Traffic Acquisition report
Go to Reports → Acquisition → Traffic Acquisition. By default, this shows sessions by channel. Change the primary dimension to "Session source / medium" to see your UTM sources broken out. This is where you'll see chatgpt / cpc, google / cpc, and linkedin / cpc as separate rows.
Campaign report
Go to Reports → Acquisition → Traffic Acquisition and change the primary dimension to "Session campaign." This shows you your utm_campaign values and their associated metrics , sessions, engaged sessions, conversions. Filter by source to see campaigns within a specific channel.
Content varient performance (Explorations)
The standard reports don't show utm_content by default. To analyse ad varient performance, go to Explore, create a free-form exploration, and add "Session manual ad content" as a dimension. This is where you'll see whether headline_v1 or headline_v2 drove more conversions.
UTM parameters don't improve your marketing. They tell you which parts of your marketing are already working , so you can stop guessing and start repeating.
The UTM template to use right now
Copy this and fill it in before launching any new campaign. Every link in that campaign should use these values consistently.
?utm_source=[chatgpt | google | linkedin | newsletter | outreach]
&utm_medium=[cpc | email | social | display]
&utm_campaign=[topic]_[awareness|consideration|conversion]_[mmyyyy]
&utm_content=[ad_name or variant_v1]
&utm_term={keyword} [Google Ads only]
Keep this in a shared doc or spreadsheet so every person who launches a campaign uses the same naming convention. One person using "chatgpt" and another using "ChatGPT_Ads" costs you weeks of clean data.
1. Create a UTM naming doc with your approved source, medium, and campaign naming rules. 2. Audit your three most recent campaigns , are UTMs present? Correct? Consistent? 3. Go to GA4 Traffic Acquisition and verify "chatgpt / cpc" and "google / cpc" appear as distinct rows. If they don't, your tagging is broken. Fix it before spending another dollar on ads.
Written from real campaign data, April 2026.