Free tool
UTM link builder
Fill in the campaign parameters and get a correctly encoded URL back. Everything is encoded properly, existing query strings are preserved, and nothing leaves your browser.
Where the traffic comes from — x, bluesky, newsletter.
How it arrives — social, email, cpc.
What it belongs to — launch-week, spring-sale.
Paid keyword. Usually left empty.
Which variant — hero-link, footer-link.
Your tagged URL
Enter a destination URL and the tagged link appears here.
How this works
- Existing query strings survive. A destination that already carries parameters keeps them; the UTM values are added alongside rather than replacing the query string.
- Everything is encoded properly. Spaces, ampersands and non-ASCII characters are percent-encoded by the browser’s own URL parser rather than by string concatenation, which is where hand-built campaign links usually break.
- Empty fields are omitted. A blank parameter is left out entirely instead of being added as an empty value, because `utm_term=` in a report is worse than no `utm_term` at all.
- Lowercase is a convention worth keeping. Analytics tools treat `Social` and `social` as two different mediums. This tool does not rewrite what you type, so pick one case and hold to it.
- It runs here, in your browser. Nothing is sent anywhere, stored, or logged.
Common questions
- What are UTM parameters?
- Five optional query parameters — source, medium, campaign, term and content — that analytics tools read to attribute a visit to where it came from. They change nothing about the page; they only travel with the link.
- Which ones do I actually need?
- Source, medium and campaign carry almost all of the value. Term is for paid keywords and content is for distinguishing two links to the same place in the same campaign.
- Does adding UTM parameters affect a post on X?
- Not for reach, but it does for cost if you publish through the X API: a post containing any URL costs twenty times more than a plain one, tagged or not.
The other free tools
Publish Guard
Paste a post, pick the networks, and see every reason it would be rejected.
Character counter
One count, measured against all seven networks’ limits at the same time.
Thread splitter
Turn a long piece of writing into a thread that fits, split at sentence boundaries.
X API cost calculator
What X actually charges to publish a post — and why a link costs twenty times more.
This is one check out of a product full of them
postfast runs this inside its composer, on every post, against every network you publish to. Join the waitlist for early access.