Free for marketers · No signup
UTM Link Builder
Build trackable campaign links in your browser.
Build your trackable link
Fill the fields, preview the URL, then copy it into ads, email, or social. Hover the icons for plain-English tips and examples.
How to use
- Paste your landing page URL (include https://).
- Add source, medium, and campaign names (underscores preferred).
- Copy the trackable link into ads, email, or social posts.
UTM FAQ
Example trackable link: https://www.example.com/landing?utm_source=facebook&utm_medium=paid_social&utm_campaign=spring_sale&utm_content=video_ad_1
What is a UTM parameter?
UTM parameters are short labels added to a link’s query string (utm_source, utm_medium, utm_campaign, and optional extras). Analytics tools read them so you can see which campaign, channel, or creative brought someone to your site.
What’s the difference between utm_source and utm_medium?
utm_source names where traffic came from (google, facebook, newsletter). utm_medium names the channel type (cpc, paid_social, email). Keep them distinct: platform vs channel type.
Example: Facebook or Instagram paid post
Use something like utm_source=facebook, utm_medium=paid_social, utm_campaign=spring_sale, and utm_content=video_ad_1 to tell creatives apart.
Example: Google Ads / CPC
A common pattern is utm_source=google, utm_medium=cpc, utm_campaign=brand_exact, and optionally utm_term for the keyword.
Example: Email newsletter
Try utm_source=newsletter, utm_medium=email, utm_campaign=weekly_digest, and utm_content=header_cta if you A/B test buttons.
Will this work with GA4?
Yes. GA4 still recognizes standard campaign parameters (utm_source, utm_medium, utm_campaign, and related fields). You only need to send traffic to a property that collects page views — we only build the URL.
Do you store my URLs?
No. Tagtrails builds links entirely in your browser. Destination URLs are never sent to our servers for this tool. Optional last-used fields stay in your browser’s localStorage only.
Why did my link break when I already had query params?
It shouldn’t here. Non-UTM query keys (like ?ref=1) are preserved, existing utm_* values are replaced by your form, and the #hash fragment stays intact. Always start from a full https:// URL.