UTM Builder
Build tracked URLs with UTM parameters
Fill base URL, source, medium, and campaign first to generate the tracked URL; param breakdown is available in Advanced mode.
The full guide also includes pitfalls, worked examples, snippets, FAQs, and related tools for checking results or troubleshooting.
About this tool
Add campaign labels to an existing URL using utm_source, utm_medium, utm_campaign, utm_term and utm_content. Enter a complete base URL, fill the desired fields and select Generate UTM URL. Non-empty values replace matching lowercase UTM parameters; other parameters and fragments remain, with query encoding handled by URLSearchParams. The builder creates the link but does not configure analytics. Form drafts are stored in this browser and can be removed with Clear.
Scenario Recipes
Tag two newsletter placements separately
Goal: Keep a shared campaign name while distinguishing a header link from a footer link.
- Enter the same landing URL, source newsletter, medium email and campaign name for both links.
- Set Content to header_cta, build and copy the first link. Then set Content to footer_cta and build again.
- Open each landing URL and check that redirects retain the tags and the installed analytics receives the intended campaign values.
Result: The links differ by utm_content. Reporting still depends on analytics setup, consent and the destination’s handling of query parameters.
Failure Clinic (Common Pitfalls)
An old UTM value survives after its field is left blank
Cause: Only non-empty fields are added or replaced. Blank fields do not delete matching parameters already in the base URL.
Fix: Remove the old parameter from the base URL before building, or enter the replacement value. Rebuild after changing any field.
Production Snippets
Update a campaign without clearing a pre-existing term
text
Base URL: https://example.com/offer?ref=footer&utm_source=old&utm_term=summer#buy
Source: newsletter
Medium: email
Campaign: autumn
Term: [blank]
Content: [blank]
Result:
https://example.com/offer?ref=footer&utm_source=newsletter&utm_term=summer&utm_medium=email&utm_campaign=autumn#buyFrequently Asked Questions
How should source, medium, campaign, term and content be used?
Source names the publisher or origin, medium names the channel, campaign groups the activity, term can identify a paid-search term, and content distinguishes placements or creatives. Agree on naming conventions before distributing links.
What happens if a UTM parameter appears more than once?
A non-empty matching field replaces its first occurrence and removes the other occurrences of that exact lowercase name. Differently cased names such as UTM_Source remain separate.
Do spaces or Chinese campaign names need manual encoding?
No. Enter their plain text. URLSearchParams encodes the values, including spaces as +; pre-encoded text would encode the percent signs again.
Are all five fields required by this builder?
No. The builder requires only a parseable complete base URL. It can produce a URL with missing campaign fields, so generating a result does not verify the tagging requirements of your analytics platform.
Keep browsing