On this page
- what UTM parameters do
- UTMs on the bio link or on the destination?
- do UTM parameters survive an Instagram story link?
- a naming scheme that works in every app
- track clicks from TikTok, X, Facebook, Telegram and the rest
- what the apps add on their own: click ids
- tell campaigns and creators apart
- what doesn't work
- related reading
Put UTM parameters on the links your fans finally land on, not on the link in your Instagram bio. Instagram, TikTok and the other apps open the address you give them, but a link-in-bio page decides what the next link carries. On linkboo, tags on your link.boo address are dropped; tags on each link on your page pass through unchanged.
That one rule answers most UTM questions about social links. The rest of this guide covers why it works, a naming scheme that holds up across ten apps, what the apps add to your links on their own, and how to check a link yourself.
what UTM parameters do
UTM parameters are tags you add to the end of a web address. When a fan opens the address, your site's analytics reads the tags and files the visit under them. Google Analytics reads these (Google Analytics Help: Collect campaign data with custom URLs):
- utm_source: the referrer, such as the app.
- utm_medium: the kind of traffic.
- utm_campaign: the product, slogan or promotion.
- utm_content: which version or spot, used to "differentiate creatives".
- utm_term and utm_id: a paid keyword, and a campaign ID.
Google's advice is to "always use utm_source, utm_medium, and utm_campaign". It also warns that "parameter values are case sensitive": instagram and Instagram become two rows. You'll find the results in Acquisition, then Traffic acquisition.
Tags matter more on social apps than anywhere else. Apps often open links in their own browser, and TikTok's help admits that "these in-app browsers sometimes block Google Analytics from logging the proper referral channel" (TikTok Business Help Center: About conversion discrepancies). Tags travel inside the address itself, so they don't depend on the app passing anything along.
UTMs on the bio link or on the destination?
On the destination. A link-in-bio page is a page, not a pipe. Whatever sits on the address the app opens stays with that page. When the fan taps a link on it, the browser opens a new address, and only what's written in that address reaches the next site.
Here's what that means on linkboo:
- Tags on your link.boo address are dropped. They never reach your shop.
- Each link on your page opens exactly the address you saved. Tag it once in the editor and every fan who taps it carries those tags to the site.
- No referrer goes with the tap. When a fan taps a link on your page, linkboo doesn't pass a referrer to the site it opens. The tags are how that site knows where the fan came from.
- Anything else on your link.boo address stays there too, including a click id an ad app adds. More on that below.
The same rule covers deep links, the links that open an app instead of a web page. The tags belong on the web address the fan ends up on, because each redirect in between may or may not pass them on. Google warns that redirects "can remove UTM parameters from the URL" (Google Analytics Help: Understand (direct) / (none) traffic). If deep links are new to you, start with what deep linking is.
do UTM parameters survive an Instagram story link?
Instagram doesn't document removing them, and a link sticker opens the address you paste into it. So tags on the address your sticker opens should arrive. Three things can still lose them:
- Your sticker points at a link-in-bio page. On linkboo, tags on the link.boo address are dropped. Point the sticker straight at a tagged shop link, or tag the links on your page.
- A redirect in the chain, such as a short link, that doesn't pass the tags on.
- Your site's own redirects, such as a shop that moves visitors to another address before its analytics runs.
Don't guess; check your own link. Post the story, tap your own sticker, and copy the address of the page that opens. In-app browsers have a menu for copying the link, and its wording varies by app and version. Paste it into your notes. If the tags are there, the story link keeps them. For the sticker's own rules and limits, see Instagram story links.
a naming scheme that works in every app
Pick one set of words and never change them. Lowercase, no spaces.
- utm_source is the app, in one word:
instagram,tiktok,x,youtube,facebook,threads,snapchat,linkedin,pinterest,telegram. - utm_medium is
social. Google Analytics puts a visit in Organic Social when its source is on Google's list of social sites or its medium is one of a few words,socialamong them (Google Analytics Help: Default channel group). Sosociallands right even for an app Google's list doesn't know. A medium likebiodoesn't have that safety net. - utm_campaign is what you're promoting:
spring-drop,new-single,course-launch. - utm_content is the spot:
bio,story,post,channel, or a collab partner's name.
track clicks from TikTok, X, Facebook, Telegram and the rest
The method is the same in every app, because it lives in your links, not in the app. For each one you have up to three counts:
- The app's own count of taps, where it has one. Each app names and places it differently, and the labels change often, so read that app's insights help.
- Your link-in-bio page's clicks on each link. On linkboo, every plan shows the last 7 days of clicks on each link and of where page views came from; Pro shows longer ranges. Some apps don't say where a visit came from; linkboo's Analytics counts those as "typed or direct" and says so.
- Your site's sessions by source, from the tags on each link.
Clicks are taps on a link; views are page loads. They never match, because fans drop out between steps. Track clicks on your Instagram bio link shows where each count is taken and why the gaps appear. The same steps apply to every app below.
On Pro, linkboo can also give each app its own bio link. Analytics then shows taps per bio link, so TikTok's taps are counted apart from Instagram's, even when an app doesn't say where a visit came from. See pricing for the plans.
what the apps add on their own: click ids
When a person taps an ad, most ad platforms add their own click id to the address. It's not a UTM tag: the app adds it, it marks one ad click, and the app's own pixel reads it to match sales back to the ad. Here is what each app's documentation says, checked 2026-10-26:
| App | Click id its ads add | Source |
|---|---|---|
| Instagram, Facebook | a Meta "ClickID", shown as fbclid, when someone clicks an ad on Facebook or Instagram | Meta for Developers |
| TikTok | ttclid, "appended to a landing page URL when you click on an ad" | TikTok Business Help Center |
| Snapchat | ScCid, "when a user clicks or swipes up on a Snapchat ad" | Snap for Developers |
| "information is added to the URL" on an ad click; Pinterest's tag stores it as _epik | Pinterest Business Help | |
| li_fat_id, when Enhanced conversion tracking is on (the default for new Insight Tags) | LinkedIn on Microsoft Learn | |
| YouTube | gclid, for ads run through Google Ads with auto-tagging | Google Ads Help |
| X | twclid, which X tells advertisers to parse "out of the query string parameter twclid" | X Ads API docs |
| Threads, Telegram | we found no documented click id |
A click id lands on the first page the ad opens. If your ad opens your linkboo page, the click id stays there, because each link on your page opens exactly the address you saved. If you need an ad's click id at your shop to measure sales, point that ad straight at your shop, and keep your linkboo page for your bio.
tell campaigns and creators apart
Decide what question you want answered, then pick the tag.
- "Which promotion sold?" Change utm_campaign per promotion and keep everything else the same.
- "Bio or story?" Same campaign, different utm_content:
bioon the shop link on your page,storyon the link sticker. - "Which creator sent this sale?" If you're a brand working with creators, give each creator their own link with their name in utm_content. Their sales show up under their name, whichever app their fans came from.
- "Which app?" utm_source answers it on your site. On linkboo Pro, taps per bio link answer it on your page.
what doesn't work
- Tagging the link in your bio. On linkboo the tags are dropped, and other bio tools and short links may drop them too.
- Mixing words.
ig,instaandInstagramare three sources to Google Analytics. Pick one and keep it. - Expecting tags to fix the browser. Tags tell you where fans came from. They don't change where fans land: inside the app's browser, often signed out, with no saved cards. Why fans get logged out covers what that costs.
On Pro, linkboo's deeplinking gets fans out of the app's browser and into their own. In some apps their browser opens by itself; in others they press and hold one button. Your linkboo page opens there, where they're signed in and their saved cards fill in, and they tap the link they wanted. Your tags go with that link as usual.
related reading
- Why social traffic shows as direct in Analytics, and why ad apps count more clicks than your site counts sessions.
- The TikTok in-app browser: what it is and why links break there.
- The Instagram in-app browser: the same, for Instagram.
Do UTM parameters survive an Instagram story link?
Instagram doesn't say it removes them, and a link sticker opens the address you paste. Tags can still be lost at a redirect or a link-in-bio page along the way, so tap your own sticker and check the address that opens.
Should UTMs go on the deep link or the destination?
On the destination: the address your fan finally lands on. On linkboo, tags on your link.boo address are dropped, and tags on each link on your page pass through unchanged.
How do I track clicks from my TikTok bio link?
Tag each link on your bio page with utm_source=tiktok and read the clicks on each link in your link-in-bio tool. On linkboo Pro, a bio link for each app also counts TikTok's taps on their own.
Which utm_medium should I use for social links?
Use social. Google Analytics files any visit with that medium under Organic Social, whichever app sent it, so apps it doesn't recognise still land in the right place.