How to build a UTM link
- Paste the full landing page URL, including https://, into the website URL field.
- Fill in utm_campaign, utm_medium, and utm_source. These three are what Google Analytics uses to group your traffic.
- Optionally add utm_content to tell apart two links in the same campaign, utm_term for paid keywords, or utm_id if you import campaign data.
- Copy the generated URL and use it in your post, bio, email, or ad. Shorten it if the platform shows raw links.
- After a few days, open GA4 and check Reports > Acquisition > Traffic acquisition to see sessions and conversions by campaign.
What are UTM parameters?
UTM parameters are short tags added to the end of a URL, after a ?, that tell analytics tools where a visitor came from. When someone clicks example.com/pricing?utm_source=linkedin&utm_medium=social&utm_campaign=spring-sale, Google Analytics records the session as LinkedIn social traffic from the spring-sale campaign instead of lumping it into "referral" or "direct". Nothing changes for the visitor; the page loads the same.
UTM parameter reference
| Parameter | Required | What it tracks | Example values |
|---|---|---|---|
utm_source | Yes | Where the traffic came from | instagram, linkedin, newsletter |
utm_medium | Yes | The type of channel | social, email, paid-social, cpc |
utm_campaign | Yes | The campaign or promotion | spring-sale-2026, product-launch |
utm_content | No | Which link, post, or creative was clicked | carousel-v2, bio-link, header-cta |
utm_term | No | Paid search keyword or audience | social+media+scheduler |
utm_id | No | Campaign ID, used for GA4 data imports | cmp_0426 |
How should you tag social media links?
Use the network as the source and a consistent medium for everything organic. A simple convention that works for most teams:
- Organic posts:
utm_medium=socialwithutm_sourceset to the network (instagram, tiktok, linkedin, x, threads, bluesky). - Paid social:
utm_medium=paid-socialso ad clicks don't inflate your organic numbers. - Link in bio: set
utm_content=bioso profile traffic is separate from links in individual posts. - A/B creative: give each variant its own
utm_contentvalue to see which image or hook got the click.
UTM naming rules that keep reports clean
- Use lowercase everywhere. UTM values are case-sensitive, so "Instagram" and "instagram" show up as two sources.
- Use hyphens instead of spaces. Spaces get encoded as
%20or+and are easy to mistype. - Write your conventions down in a shared doc and reuse the same values instead of inventing new ones per post.
- Never add UTMs to internal links on your own site. They overwrite the visitor's original traffic source in your reports.
Need a scannable version for print or packaging? Paste the tagged URL into the free QR code generator and use a source like flyer or packaging.