UTM Parameters Explained: The Simple Way to Track Every Campaign
Five small tags decide whether your analytics tell a clear story or a confusing one. Here is how to get them right.
In this article
UTM parameters are short tags you add to the end of a URL so your analytics tool knows where a visit came from. They look like this:
https://yourstore.com/sale?utm_source=instagram&utm_medium=social&utm_campaign=diwali_2026
When someone lands on that page, Google Analytics (or any analytics tool that reads UTMs) records the visit as coming from Instagram, through social, as part of the Diwali 2026 campaign. Without them, a lot of that traffic is filed under "direct" or "referral", and you are left guessing which post, message or email actually worked.
The five UTM parameters
| Parameter | Answers | Example values | Required? |
|---|---|---|---|
utm_source |
Which site or app sent the visit? | instagram, whatsapp, newsletter, google |
Yes |
utm_medium |
What type of channel was it? | social, email, cpc, sms, qr |
Yes |
utm_campaign |
Which campaign or promotion? | diwali_2026, spring_launch |
Yes |
utm_content |
Which version or placement? | story_swipe, bio_link, cta_button |
Optional |
utm_term |
Which keyword (mostly paid search)? | running_shoes |
Optional |
A useful way to remember them: source is who, medium is how, campaign is why, and content tells two links in the same campaign apart.
A naming convention your team can follow
UTM reports are case sensitive and unforgiving. Instagram, instagram and IG show up as three different sources.
Agree on these rules once and write them down:
- Lowercase everything.
instagram, neverInstagram. - Use underscores, not spaces.
diwali_2026, notDiwali 2026(spaces become%20). - Fix a list of sources and mediums. Everyone picks from the list instead of inventing new values.
- Put the year or date in campaign names.
summer_sale_2026will not collide with next year's. - Use content for variations. Same campaign, different creative? Keep the campaign identical and change
utm_content.
Ready-made templates
Copy these and change the campaign name.
| Where you share | utm_source | utm_medium | utm_content (optional) |
|---|---|---|---|
| Instagram bio | instagram |
social |
bio_link |
| Instagram story | instagram |
social |
story |
| Facebook post | facebook |
social |
post |
| WhatsApp broadcast | whatsapp |
messaging |
broadcast |
| Telegram channel | telegram |
messaging |
channel_post |
| Email newsletter | newsletter |
email |
header_button |
| SMS campaign | sms |
sms |
promo_text |
| Printed QR code | print |
qr |
flyer |
| YouTube description | youtube |
video |
description |
| Influencer partnership | creator_name |
influencer |
reel |
The mistakes that quietly break your reports
Tagging internal links. Never put UTMs on links from one page of your own site to another. Analytics will start a new session and overwrite the real source of the visit.
Inconsistent capitalisation. Covered above, but it is the most common problem by far.
Forgetting the medium. Without utm_medium, many reports cannot group your traffic into channels, so it lands in
"unassigned".
Using UTMs for paid ads that auto-tag. Google Ads adds its own click identifier automatically. Adding manual UTMs on top can create conflicting data unless you have set up your analytics to expect both.
Sharing ugly links. A link with three UTM tags is long and looks suspicious in a WhatsApp chat. This is where a short link helps.
Short links and UTMs work best together
A UTM-tagged URL is precise but long. A short link is tidy but, on its own, only knows that it was clicked. Put them together:
- Build the long URL with your UTM tags.
- Shorten it, ideally on your own domain.
- Share the short link.
The visitor sees go.yourbrand.com/diwali. Your analytics tool sees every UTM tag on the destination.
MiniSnip includes a UTM builder in every plan, including Free. Add the source, medium, campaign and content when you create a link, and MiniSnip attaches them to the destination at the moment of the redirect. Change them later and the next click uses the new values; the short link you already shared never changes.
UTMs vs MiniSnip source tags
UTM tags tell your website's analytics where a visit came from. MiniSnip's own dashboard works out the source of each click before the visitor even reaches your site, using the referrer, the in-app browser and platform click IDs.
Some apps, especially WhatsApp and Telegram on iPhone, reveal none of that. For those, add a short tag to the link you share:
go.yourbrand.com/diwali?src=wafor WhatsAppgo.yourbrand.com/diwali?src=tgfor Telegramgo.yourbrand.com/diwali?src=emailfor email
The src tag only affects MiniSnip's Sources chart and never changes the redirect. We explain why apps hide their traffic,
and how to work around it, in how to track clicks from Instagram, WhatsApp and Telegram.
A quick checklist before you share
- Source, medium and campaign are all filled in.
- Everything is lowercase with underscores.
- The values come from your agreed list.
- The link points to the right page and the page loads on mobile.
- You shared the short link, not the long one.
Frequently asked questions
Do UTM parameters affect SEO?
No. Search engines ignore UTM tags for ranking. Add a canonical tag on your pages (most website builders do this automatically) so tagged URLs are treated as the same page.
Can visitors see my UTM tags?
They can see them in the address bar after the redirect. Nothing sensitive should ever go in a UTM value.
Which UTM parameters are required?
utm_source, utm_medium and utm_campaign. utm_content and utm_term are optional.
Does MiniSnip need UTMs to track clicks?
No. MiniSnip counts clicks and detects sources on its own. UTMs are for the analytics tool on your website, such as Google Analytics.