TrackFunnels

UTM Parameters

Chapter 19 — Using UTM Parameters in Social Media Marketing

Shad Malik
By Shad Malik Updated on Feb 17, 2026

Social clicks are messy without UTMs. Tag every social post, ad, and bio link with a stable pattern so you can split organic vs paid, compare creatives, and roll up results by campaign across platforms.

Social UTMs follow a simple, stable pattern

  • utm_source = the platform name in lowercase (linkedin, twitter, facebook, instagram, youtube, tiktok, reddit)
  • utm_medium = use social for organic; pick one distinct value for paid (paid-social or cpc) and never mix
  • utm_campaign = the shared campaign identifier across all related posts and ads
  • utm_content = the creative or content variant (format, message, placement, or person)

Keep platform and medium values consistent across posts and ads

Platform utm_source Organic utm_medium Paid utm_medium (pick one)
LinkedIn linkedin social paid-social or cpc
X (Twitter) twitter social paid-social or cpc
Facebook facebook social paid-social or cpc
Instagram instagram social paid-social or cpc
YouTube youtube social paid-social or cpc
TikTok tiktok social paid-social or cpc
Reddit reddit social paid-social or cpc
  • Keep names exact and lowercase. Do not mix “linkedin” and “LinkedIn” or “li.”
Scenario Goal Final URL example
Organic LinkedIn post promoting a webinar Attribute webinar signups to LinkedIn organic https://example.com/webinar?utm_source=linkedin&utm_medium=social&utm_campaign=apac-finops-webinar-2026&utm_content=post-1-video
LinkedIn Sponsored Content for the same webinar Separate paid performance from organic https://example.com/webinar?utm_source=linkedin&utm_medium=paid-social&utm_campaign=apac-finops-webinar-2026&utm_content=single-image-ad-a
X (Twitter) thread from the CTO announcing a report Track platform and variant https://example.com/report?utm_source=twitter&utm_medium=social&utm_campaign=2026-threat-report&utm_content=thread-cto
Facebook retargeting ad for product demo Tie results to the paid social cohort https://example.com/demo?utm_source=facebook&utm_medium=paid-social&utm_campaign=q2-demandgen&utm_content=carousel-3cards
YouTube video description link to a case study Attribute clicks from YouTube https://example.com/case-study?utm_source=youtube&utm_medium=social&utm_campaign=manufacturing-erp&utm_content=video-desc
LinkedIn post by an industry analyst Attribute traffic to that specific post https://example.com/benchmark?utm_source=linkedin&utm_medium=social&utm_campaign=benchmark-2026&utm_content=influencer-jlee

Using one utm_campaign on all related posts and ads (across platforms) answers, “What was the total impact of our launch on social?”

Example: Product Launch 2026 across LinkedIn and Twitter

Post/Ad Suggested UTMs
LinkedIn organic video utm_source=linkedin&utm_medium=social&utm_campaign=prodlaunch-2026&utm_content=video-30s
LinkedIn Sponsored Message utm_source=linkedin&utm_medium=paid-social&utm_campaign=prodlaunch-2026&utm_content=msg-a
Twitter organic thread utm_source=twitter&utm_medium=social&utm_campaign=prodlaunch-2026&utm_content=thread-1
Twitter ad with image utm_source=twitter&utm_medium=paid-social&utm_campaign=prodlaunch-2026&utm_content=image-1

Differentiate creatives and people with utm_content

Use utm_content to mark what exactly was clicked.

  • Format: video-30s, image-carousel, text-post
  • Message variant: copy-a, copy-b
  • Placement: feed, stories, right-rail
  • Audience shorthand (if needed): cfo-segment, devops-segment
  • Influencer/employee: influencer-jlee, employee-asmith

A simple LinkedIn A/B headline test can use the same utm_campaign and swap utm_content between copy-a and copy-b to isolate message impact.

Set clear organic vs paid rules and stick to them

Organic posts

  • utm_source = platform (e.g., linkedin)
  • utm_medium = social
  • utm_campaign = initiative (e.g., 2026-threat-report)
  • utm_content = format or variant (e.g., post-2-image)

Paid social ads

  • utm_source = platform (e.g., facebook)
  • utm_medium = paid-social or cpc (decide once and keep it)
  • utm_campaign = your marketing campaign identifier (use your standard, not a random ad platform label)
  • utm_content = ad or creative variant (e.g., carousel-3cards, video-15s)

Platform-added parameters do not replace UTMs

  • Platforms add their own parameters (fbclid on Facebook, li_fat_id on LinkedIn). Some also send clicks through their shorteners.
  • These help the platform connect clicks to impressions. They do not set your source/medium/campaign.
  • Always keep UTMs on your links to control how analytics groups traffic.
Myth Debunk:
fbclid, li_fat_id, and similar tags do not handle your UTM fields. Without UTMs, your analytics may bucket traffic as “referral” or mix paid and organic. UTMs are your rulebook; platform tags are theirs.

Short URLs are safe if they preserve the query string

  • Build the full UTM URL first, then shorten it. Do not let the shortener “add UTMs.”
  • The shortener must use 301/302 redirects that keep the query string.
  • Test before posting:
  • Paste the short URL in a fresh incognito window on desktop and mobile.
  • Confirm the final landing URL still has your UTMs.
  • Check a real-time report or a debugging tool to confirm source/medium/campaign.
  • Send them your fully tagged URL.
  • Keep utm_source as the platform to keep network rollups clean.
  • Put the person or program into utm_content (e.g., influencer-jlee, employee-asmith) or another agreed field in your scheme.

Copy-and-paste recipes you can use today

Use case URL pattern
LinkedIn company page post https://yourdomain.com/asset?utm_source=linkedin&utm_medium=social&utm_campaign=your-campaign&utm_content=post-n
LinkedIn Sponsored Content https://yourdomain.com/asset?utm_source=linkedin&utm_medium=paid-social&utm_campaign=your-campaign&utm_content=ad-variant
Twitter organic thread https://yourdomain.com/asset?utm_source=twitter&utm_medium=social&utm_campaign=your-campaign&utm_content=thread-n
Facebook retargeting carousel https://yourdomain.com/asset?utm_source=facebook&utm_medium=paid-social&utm_campaign=your-campaign&utm_content=carousel-n

Automate UTMs in ad platforms with dynamic macros

You can set default URL parameters so every ad click includes UTMs you control.

Meta (Facebook/Instagram)

  • Add “URL Parameters” at the ad level.
  • Template: utm_source=facebook&utm_medium=paid-social&utm_campaign={{campaign.name}}&utm_content={{ad.name}}
  • Use IDs if names are messy: {{campaign.id}}, {{ad.id}}

LinkedIn

  • Use “Third-party URL tracking” or “URL parameters” on the ad.
  • Template: utm_source=linkedin&utm_medium=paid-social&utm_campaign={campaign.name}&utm_content={creative.id}

X (Twitter), TikTok, Reddit

  • Support dynamic placeholders for campaign/ad identifiers.
  • Pattern: utm_campaign={campaign_name}&utm_content={ad_id}
  • Check current macro syntax in each platform’s docs before launch.

Run this 60-second QA before you publish (Social UTM QA Loop)

  • Source: Is utm_source the platform in lowercase?
  • Medium: Is utm_medium “social” for organic and your chosen paid value for ads?
  • Campaign: Do all related posts/ads share the same utm_campaign?
  • Content: Does utm_content clearly identify the creative or person?
  • Redirects: If shortened, do UTMs survive the hop?
TrackFunnels Expert Tip:
Lock URL parameter templates (with macros) into each ad account’s defaults. Use short, hyphenated tokens in campaign/ad names so macros output clean UTM values. Prefer IDs when naming is noisy. This prevents drift and gives you clean creative and placement cuts on day one.
Try This Now Assignment

Open DevTools and verify a short link keeps UTMs:

1) Create a full UTM URL and shorten it with your branded short domain.

2) In a fresh incognito window, open the short URL.

3) In DevTools > Network, click the first request (the short URL). Follow the redirect chain.

4) Confirm the final landing URL contains your exact utm_source, utm_medium, utm_campaign, and utm_content.

5) In your analytics real-time view, verify the session shows the expected source/medium.

Test your knowledge

Loading quiz questions...