UTM Builder
Planning & Utilities
UTM Builder — a fast, free creator utility that runs in your browser. No signup, no install, and nothing you enter is stored.
UTM Builder
Build trackable campaign URLs that show up cleanly in GA4.
How UTM parameters actually track clicks
UTM tags are five plain-text parameters you bolt onto the end of a link so Google Analytics can tell where a visitor came from. The three that matter most are utm_source, utm_medium and utm_campaign; utm_term and utm_content are optional. They're just query strings after a question mark, so they don't change where the link goes, only how the visit gets labelled. The detail most people miss: UTM values are case-sensitive. "Facebook" and "facebook" become two separate rows in your reports, quietly splitting one campaign into a mess you have to clean up later.
UTM builder tips
- Pick one casing rule, usually all lowercase, and never break it. GA4 treats Email and email as two distinct sources.
- Use underscores or hyphens instead of spaces; a raw space becomes %20 and makes your links ugly and harder to read in reports.
- Keep utm_source the platform and utm_medium the channel type, like source=newsletter, medium=email. Mixing them up scrambles your default channel groupings.
- Never add UTMs to internal links between your own pages; it overwrites the original source and erases where the visitor truly came from.
Related tools
UTM Builder — common questions
Latest questions readers ask us about this topic.
What are the five UTM parameters?
utm_source, utm_medium, utm_campaign, utm_term and utm_content. Source, medium and campaign are the core three Google Analytics expects. Term is mainly for paid-search keywords, and content distinguishes two links pointing to the same page.
Are UTM parameters case-sensitive?
Yes. Google Analytics reads Spring_Sale and spring_sale as separate campaigns, so inconsistent capitalisation splits your data across duplicate rows. Lowercase everything and stick to it to keep each campaign reported as a single line.
Do UTM tags slow down or break my link?
No. They're query parameters appended after a question mark, so the destination page loads exactly the same. The only real risk is a messy URL or a redirect that strips the parameters before analytics can record them.
Related questions
The sub-questions readers ask next — answered, with where to go.
Specificity and tension. A scroll-stopping opener promises a concrete payoff ('the 3-word edit that doubled my reply rate') or opens a loop the reader needs closed — not a vague 'let's talk about engagement'. Front-load it: on most feeds only the first line shows before a cut-off, so the hook has to do its work there. Test several angles for the same post; the winner is rarely the one you'd have guessed.
Style your opening lineMatch the length to the job, then check it against the limit. Instagram captions can run long for storytelling but the hook must land in the first ~125 characters before 'more'; X/Twitter rewards tight, standalone lines; LinkedIn truncates around two lines. TikTok and Reels captions are short by nature. The reliable move is to draft freely, then trim against a live counter so nothing important gets cut.
Check the limit liveFewer, and more relevant, than the old advice. The era of 30 generic tags is over — most platforms now reward a small set (roughly 3–8) that genuinely describe the post, mixing one or two broad tags with several specific, lower-competition ones. Stuffing tags reads as spammy and can suppress reach. Put them where they don't interrupt the read: end of the caption or first comment.
Read the content hubTreat the bio as a one-line pitch, not a résumé. Open with who you help and the outcome they get, add a single proof point, and close with a reason to follow or a clear next step. Keep it skimmable, lead with the words people would search, and reserve any styled text for one emphasised phrase. Links and @mentions stay plain so they stay clickable.
Generate a bioExplore the topic cluster
A wider set of tools and guides on this topic.