How to Add UTM Parameters to a TikTok Video Link
To add UTM parameters to a TikTok video link, take the destination page URL and append utm_source=tiktok, utm_medium=social, and a utm_campaign name, then put that tagged link in your bio or link-in-bio page, because TikTok video captions themselves are not clickable links. Build it free with our UTM builder so the tagging is spelled exactly right every time.
- The 30-Second Method
- One Honest Correction: The Caption Is Not the Link
- utm_source=tiktok and the Paid-vs-Organic Trap
- Naming utm_medium So Reports Stay Readable
- utm_content: One Value Per Video
- The Link-in-Bio Passthrough Problem
- Checking the Clicks in GA4
- What About TikTok Shop and Affiliate Links
- A Naming Template You Can Copy
The 30-Second Method
Start with the page you want TikTok viewers to land on, for example your product page or signup form, and open our free UTM builder. Type the page URL, set the source to tiktok, the medium to social, and the campaign to something readable like fall-launch, then copy the finished link. Paste that link where TikTok actually lets people tap: your bio link, a link-in-bio button, or the website button on a business account. One tagged link per destination is enough to start; you do not need a different link for every video until you want per-video reporting, which the utm_content section below covers. Test the finished link in a private browser window before you publish it, and confirm it lands on the right page with the parameters still attached to the address bar.
One Honest Correction: The Caption Is Not the Link
Most people searching this question picture pasting a tracked link into a TikTok caption, and that picture is wrong in a way that matters. TikTok captions are plain text, not clickable links, so a UTM-tagged URL typed into a caption cannot be tapped and will not send anyone anywhere, tracked or otherwise. The trackable link lives one step away from the video: in your bio, in a link-in-bio page, in a pinned comment only if your account can post clickable links there, or as the destination of a TikTok ad. Your video does the persuading and says where to go, usually with a spoken call to action like link in bio, and the bio link does the tracking. If you run ads, the same tagged URL becomes the ad destination, with the medium changed to paid_social, which the next section explains.
utm_source=tiktok and the Paid-vs-Organic Trap
Set utm_source=tiktok on every TikTok link, organic or paid, because the source answers where the visitor came from and that answer is TikTok in both cases. The trap is the medium: organic posts use utm_medium=social, while paid campaigns must use utm_medium=paid_social or cpc, because GA4 treats medium as the channel grouping and will file paid TikTok traffic under Organic Social if you reuse social. That single wrong value quietly corrupts every channel report downstream, making paid look free and organic look bigger than it is. Our guide to UTM parameters for an Instagram bio link uses the same rule on the Instagram side, and keeping the rule identical across platforms is what makes cross-platform reports comparable. If you have ever wondered why a campaign that clearly cost money shows up as organic, a reused social medium is the first place to look.
Naming utm_medium So Reports Stay Readable
Keep medium values to a short approved list and never invent a new spelling on the fly, because GA4 groups by exact text and treats Social, social, and social-media as three different channels. Use social for organic TikTok posts, paid_social for TikTok ads, and nothing else for this platform. The same discipline applies to source: tiktok every time, never TikTok, tik-tok, or tt, because capitalisation alone splits one source into several rows. Write your three or four allowed values on a sticky note or in the campaign brief before anyone builds a link, and check new links against that list for the first month. A naming convention feels like bureaucracy until the month you try to compare two campaigns and discover the data was split across five spellings of the same word.
utm_content: One Value Per Video
The utm_content parameter is where per-video reporting lives, and it is the parameter most TikTok marketers skip. Give each video its own short content value, such as morning-routine-reel or founder-story-12, so GA4 can tell you which video sent the traffic rather than only which platform did. Without it, ten videos pointing at the same campaign collapse into one row and you cannot tell whether the tutorial or the behind-the-scenes clip did the work. Keep content values short, lowercase, and hyphenated, and never put personal data or a viewer's username in them, because UTM values travel in URLs and show up in analytics reports. For a link-in-bio page with several buttons, use one content value per button as well, so the button that gets tapped is visible in the report and the buttons nobody taps can be retired.
The Link-in-Bio Passthrough Problem
A link-in-bio tool sits between your TikTok bio and your site, and some of them rebuild or shorten the destination URL, which can strip UTM parameters before the visitor ever reaches you. Before you trust a tool, publish a test link through it, tap it on a real phone, and check that the final address bar still carries utm_source=tiktok and your campaign name. If the parameters vanish, switch the tool's link type to a direct or external link, or link straight to your site and skip the middleman for the campaign that matters. The same check applies to URL shorteners: a shortener that forwards properly preserves the parameters, while one that frames or rewrites the destination may not. This two-minute phone test saves the far more painful discovery, weeks later, that a whole campaign ran untracked.
Checking the Clicks in GA4
Open GA4, go to Reports and then Acquisition, and look at the traffic acquisition report grouped by session source and medium, where tiktok / social should appear within a day of your first clicks. For a faster check, use the Realtime report: tap your own tagged link on your phone, then watch for an active user from tiktok / social in the next minute, which proves the whole chain from bio to analytics works. If nothing appears, recheck the three usual suspects in order: the parameters were stripped by a link-in-bio tool, the medium was misspelled, or the destination page blocks the analytics script. When you report results, convert totals into readable units where it helps, for example turning a month of watch time into hours with our free minutes to hours converter, and checking caption length against your plan with our free word counter before you publish the next video.
What About TikTok Shop and Affiliate Links
TikTok Shop product links and affiliate links work differently from bio links, because the purchase happens inside TikTok's own commerce system rather than on your site, and UTM parameters on a Shop link do not flow into GA4 the way a website visit does. For Shop sales, rely on TikTok's own seller analytics for revenue and use UTM only on the external links that leave TikTok, such as a product page linked from a video's bio or an ad landing page. Affiliate creators face the same split: the affiliate network tracks the sale with its own click ID, while UTM tracks the website visit, and the two systems answer different questions, so do not expect them to reconcile to the penny. The practical setup is to tag every external destination link as this article describes, let Shop and affiliate dashboards own the in-app sales, and compare the two reports at the campaign level, where they should move together even if the exact counts differ.
A Naming Template You Can Copy
Use this template and change only the campaign and content values: yoursite.com/landing?utm_source=tiktok&utm_medium=social&utm_campaign=fall-launch&utm_content=morning-routine-reel. For ads, change only the medium to paid_social and add the ad set name to the campaign value, such as fall-launch-prospecting, so paid and organic never share a row. Keep a one-page log of every tagged link you publish, with the video title, the full URL, and the date, because the log is what lets you audit a report six months later instead of guessing which link a row of data came from. UTM tracking on TikTok is not complicated, but it is exact: one misspelling splits a report, one stripped parameter erases a campaign, and one consistent template prevents both.
Do it in one click
Build your tagged TikTok link in seconds — free, no signup, parameters spelled right.
Open the Free Tool →