Blog · Analytics

UTM parameters explained with examples for every channel

Source, medium, campaign, term and content: what each UTM parameter answers, a naming convention that holds up, and copy-and-paste examples for every channel where you share links.

Leer en español

UTM parameters are tags you add to the end of a link so your analytics tool knows where each visit came from: which social network, which newsletter, which ad or which flyer. They don't change the page that opens; they just put a name on the source. Below you'll find what each parameter means, a naming convention that holds up, and copy-and-paste examples for the channels you use most.

In short:

  • There are five parameters: utm_source, utm_medium and utm_campaign are the core three; utm_term and utm_content are optional.
  • Always use lowercase and hyphens: “Instagram” and “instagram” show up as two different sources.
  • Only tag links you share outside your website, never your internal links.
  • Keep your values in a shared spreadsheet so everyone on the team tags the same way.
  • A tagged link is long, so shorten it before you post it or turn it into a QR code.

What UTM parameters are and how they work

A tagged link is a regular URL with a string of data added after the question mark. For example:

https://yourstore.com/sale?utm_source=newsletter&utm_medium=email&utm_campaign=spring-sale

When someone opens it, the page loads exactly as usual. The difference shows up in your reports: Google Analytics 4 and most analytics tools read those parameters and store the visit with its source. Instead of a pile of “direct” traffic you can’t explain, you see that the visit came from the spring sale newsletter.

Two syntax rules prevent most mistakes:

  • The first parameter goes after ? and the rest are joined with &. If your URL already contains a ?, add your tags with & instead of a second question mark.
  • If the URL has an anchor (#), the tags go before it: /page?utm_source=x#pricing, not the other way around. Anything after # never reaches the server, and your analytics may ignore it.

The five parameters, one by one

ParameterWhat it answersExamples
utm_sourceWho sent the visit?instagram, newsletter, google
utm_mediumWhat kind of channel?social, email, cpc, print
utm_campaignWhich push is it part of?spring-sale
utm_termWhich keyword triggered the ad?running-shoes
utm_contentWhich exact piece got the click?header-button, video-a

Source, medium and campaign should always travel together; with only one of them, your reports are half-finished. Term is mostly for search ads. Content is the most underrated of the five: it lets you tell apart two links in the same campaign, like the top and bottom buttons of an email, two creatives in the same ad set, or the two variants of an A/B test that runs on a single link.

UTM examples for every channel

These values are one consistent setup. What matters isn’t using these exact words; it’s picking a set and sticking with it all year.

Channelutm_sourceutm_medium
Instagram bioinstagramsocial
Instagram Storiesinstagramsocial
Facebook postfacebooksocial
TikTok biotiktoksocial
YouTube descriptionyoutubesocial
LinkedIn profilelinkedinsocial
Email newsletternewsletteremail
Text message blastsmssms
Paid Instagram adinstagramcpc
Printed QR codeqrprint

Notice that your Instagram bio and Stories share a source and medium. To separate them, use utm_content: bio for one and story for the other. Three complete examples:

  • A clothing shop’s bio link: https://yourstore.com/new-arrivals?utm_source=instagram&utm_medium=social&utm_campaign=fall-collection&utm_content=bio
  • A newsletter with two buttons: the same link with utm_content=header-button on the first and utm_content=footer-button on the second.
  • A storefront window poster with a QR code: https://yourstore.com/rewards?utm_source=qr&utm_medium=print&utm_campaign=rewards-club&utm_content=storefront

If you run Google Ads with auto-tagging turned on, you usually don’t need manual tags on those ads, because the platform passes its own data to Analytics. Everywhere else, UTM tags are what make your traffic readable.

A naming convention that won’t fall apart

UTM values are case-sensitive and picky about spaces. One slip creates a brand-new source in your reports and splits your data in two. These rules prevent it:

  • Lowercase everything. No exceptions, not even for brand names.
  • Hyphens instead of spaces. A space turns into %20 or + and makes filtering a pain.
  • Skip special characters. Ampersands, accents and emoji get encoded and are easy to type two different ways.
  • Campaign names say what and when: course-launch-march still makes sense a year from now; test2 doesn’t.
  • A closed list of sources and mediums. If someone needs a new one, it goes on the list before anyone uses it.

To keep it up, use a shared spreadsheet with these columns: date, channel, destination, source, medium, campaign, content and short link. One row for every new link.

Mistakes that ruin your data

  • Tagging internal links. Put UTM tags on a banner inside your own site and you distort attribution: a visit that came from Instagram can end up credited to your banner. Use analytics events to track internal clicks instead.
  • Putting personal data in the tags. Never add a subscriber’s email or name to a UTM value. Google Analytics’ terms prohibit sending information that identifies individuals.
  • Redirects that drop the parameters. Some pages redirect and strip everything after the ?. Open the final link on your phone and check that the tags are still in the address bar.
  • Renaming mid-campaign. If you start with spring-sale, finish with spring-sale.

Where to see the results in Google Analytics 4

In Google Analytics 4, go to Reports, then Acquisition, and open Traffic acquisition. Switch the primary dimension to “Session source / medium” or “Session campaign” and you’ll see your values exactly as you typed them. To see content or term, add them as a secondary dimension.

GA4 also sorts visits into default channel groups based largely on the medium. With common values like social, email, sms or cpc, visits land in the group you’d expect. Custom mediums such as print may show up as “Unassigned” in that report, but they appear just fine when you filter by source, medium or campaign.

A link with four or five parameters is long. It gets cut off in messages, eats up half your bio and looks a little suspicious. In a QR code, a long URL also produces a denser pattern that’s harder to scan, so if you’re printing it, read these tips for printing QR codes too.

Here’s the practical workflow: build the URL in the free UTM builder, which comes with presets for an Instagram bio, a newsletter, Google Ads and printed QR codes, and then shorten it. The short link forwards to the full URL with every parameter intact, so your analytics still receives them.

With linko you also see clicks on the short link even when the visit never finishes loading your site, and with Pro you can break them down by country, source and device. Don’t be surprised if those clicks don’t match your GA4 sessions: some people close the page before it loads, and some decline analytics cookies. The two numbers complement each other. You can create a free account and try it on your next campaign.

Frequently asked questions

Which UTM parameters are required?

Technically none, but in practice you should always use utm_source, utm_medium and utm_campaign. Those three tell you who sent the visit, through which channel and as part of which push. Add term and content when they give you useful detail.

Do UTM parameters hurt SEO?

No, as long as you use them on links you share outside your site: social media, emails, ads or QR codes. What you should avoid is adding them to internal links, because they muddy your analytics and can create duplicate URLs for your pages.

Can I use UTM tags in my Instagram bio link?

Yes, and it’s one of the clearest ways to see how much traffic your profile sends you. Since the URL gets long, shorten it before pasting it into your bio.

Why do my tagged visits show up as “Unassigned” in GA4?

Because the medium you used doesn’t match any rule in the default channel groups. The data isn’t lost: filter by session source and medium or by campaign and it’s all there. If you want visits to fall into a group, stick to standard mediums like social, email or cpc.

Put it into practice with linkoShort links, QR codes and your bio page, with honest analytics.
Create my free account →

Your next link deserves more than being shortened.

Create your account in under a minute. No card.

Create free account →