UTM Builder
Add consistent campaign tags to one URL or a whole list.
Campaign parameters
Your campaign URL
How to use this tool
- Paste your URL. Use the single field for one link, or switch to bulk and enter one URL per line. Each one has to start with https:// or http://.
- Fill in the tags. Source, medium and campaign are the three your reports group by. Term and content are optional. The preset buttons fill in source and medium for common cases.
- Set the formatting. Choose how spaces are handled and whether values are forced to lowercase, so names stay consistent with the rest of your tracking.
- Copy or download. Copy the finished link, or export the whole batch as a CSV.
Common questions
Source is where the visit came from, such as google or newsletter. Medium is the kind of traffic, such as cpc, email or paid_social. Campaign is the name you group the activity under, such as summer_launch. Analytics reports are built around these three, which is why they are the ones marked as recommended.
They are replaced. Each tag you fill in overwrites the one already on the URL, so pasting a link that was tagged before gives you a clean result rather than two competing sets of parameters.
The parameter is left off, and if the URL you pasted already carried it, it is removed. An empty field never produces a dangling utm_term= with nothing after it.
Yes. Only the five utm_ parameters are touched. Anything else already on the link, such as a product id or a referral code, is kept exactly as it was and the tags are added after it.
It stays at the end and the tags are placed before it. That order matters: anything written after the # is part of the anchor, and analytics never receives it.
The tool parses your URL rather than gluing text onto the end of it, which is what lets it keep your existing parameters and anchor intact. Without a scheme there is nothing definite to parse, so example.com/page is reported as invalid instead of being guessed at.
Usually yes. Reports treat Google and google as two different sources, which splits one campaign across separate rows. Forcing lowercase keeps them together. Turn it off only when a value is genuinely case sensitive.
Underscore and hyphen replace each space before the URL is built, so the finished link stays readable. Keeping spaces encodes them instead, which shows up as a plus sign in the URL. Whichever you choose, use it everywhere, because summer_launch and summer-launch are two different campaigns in every report.