You share a link on Instagram, send it in your newsletter and put it in a WhatsApp group. A week later, traffic has jumped — but Google Analytics lumps half of it into "direct" and you have no idea which channel actually worked.
UTM parameters fix that. They're small tags you add to the end of a link that tell your analytics tool exactly where a visitor came from. They cost nothing, take seconds to add, and turn guesswork into real data.
What a UTM link looks like
Here's a normal link:
https://example.com/summer-sale
And here's the same link with UTM parameters:
https://example.com/summer-sale?utm_source=instagram&utm_medium=social&utm_campaign=summer_sale_2026
The page is identical for the visitor. But when they arrive, Google Analytics records that they came from Instagram, via social, as part of the summer_sale_2026 campaign.
The five UTM parameters (plus one)
utm_source — where the traffic came from
The specific site, platform or publication: google, facebook, instagram, newsletter, partner_blog.
utm_medium — what kind of channel it is
The broad marketing channel: social, email, cpc (paid ads), referral, display, affiliate.
utm_campaign — why it was sent
The campaign or promotion name: summer_sale, product_launch, black_friday_2026.
utm_term — which keyword (paid search)
Mainly used for paid search ads to record the keyword: running_shoes.
utm_content — which link or ad
Tells apart two links in the same campaign — perfect for A/B tests: blue_button vs red_button, or header_link vs footer_link.
utm_id — the campaign ID
An identifier used mostly when importing ad cost data into Google Analytics 4. If you don't import cost data, you can skip it.
Which are required? Technically only utm_source, but in practice you should always set source, medium and campaign. Without medium, GA4 can't sort your traffic into the right channel.
Naming conventions: the part everyone gets wrong
UTM values are case-sensitive. To Google Analytics, Facebook, facebook and FB are three completely different sources — and your report ends up split into pieces.
A few rules keep things clean:
- Always use lowercase. No exceptions.
- Pick one word separator — underscores or hyphens — and never use spaces. (A space turns into
%20or+and makes links ugly.) - Use GA4's standard medium names so traffic lands in the right default channel:
email,social,cpc,referral,display,affiliate. - Write it down. A simple shared spreadsheet with your approved sources, mediums and campaign names saves hours of cleanup later.
Here's a starter set:
| Where you're posting | utm_source | utm_medium |
|---|---|---|
| Instagram post or bio | social | |
| Facebook post | social | |
| LinkedIn post | social | |
| Email newsletter | newsletter | |
| Google Ads | cpc | |
| Guest post on another site | site_name | referral |
Where to find UTM data in GA4
- Open Reports → Acquisition → Traffic acquisition.
- Change the table's primary dimension to Session source / medium or Session campaign.
- Add a secondary dimension such as Session manual ad content to see your
utm_contentvalues.
Give new links a day or so to show up in standard reports; real-time reports will show them sooner.
Mistakes to avoid
Using UTMs on internal links
Never add UTM parameters to links within your own website — say, a banner on your homepage pointing to your pricing page. When a visitor clicks it, analytics treats it as a brand-new traffic source and overwrites where they really came from. For internal tracking, use events instead.
Tagging links that are already tracked
Google Ads can tag links automatically with auto-tagging. Adding manual UTMs on top can cause conflicting data, so check your ad platform's settings first.
Worrying about SEO
UTM links don't hurt your rankings. Just make sure your pages have a canonical tag pointing to the clean URL, so search engines don't treat tagged versions as duplicate pages.
Long, ugly links in social posts
Tagged URLs get long. On platforms where the link is visible, consider running it through a link shortener after you've added the UTMs.
Build your links the easy way
Typing parameters by hand invites typos — and a single typo splits your data. The free UTM Builder lets you paste a URL, choose a preset for Facebook, Instagram, LinkedIn, newsletters or Google Ads, and copy a clean, lowercase tagged link. It even keeps any existing query parameters in your URL intact.
Setting up the pages you're sending traffic to? Make sure they're ready too:
- Write a title and description that earn the click with the Meta Title & Description Generator
- Control how your link looks when shared with the Open Graph Generator
- Give the landing page a clean address with the SEO Friendly URL Generator