Campaign URL Builder
Build the URL in ten seconds. Deciding what to call the campaign is the part that takes longer, and the part that decides whether the report is readable in six months.
Build a campaign URL
The same builder, for teams agreeing a naming convention
This page uses the free TagPipes UTM Builder: five standard parameters, built in your browser, nothing sent anywhere and no account needed. What is different here is the explanation around it, written for teams agreeing a naming convention.
The builder is not the hard part
Every campaign URL builder does the same thing: it takes a destination and five parameters and joins them together. That is a solved problem, and the form above solves it.
What goes wrong is not the joining. It is that six people tagged links for the same campaign over three weeks and called it SpringSale, spring_sale, spring-sale-2026 and Spring Sale. The analytics tool is not being difficult when it shows you four campaigns: it was told four different names and has no way of knowing they were meant to be one.
So the useful thing a page like this can give you is not a form. It is a decision you make once, write down, and apply every time.
Decide these four things once
Write the answers somewhere the whole team can see them. Anywhere is better than nowhere.
| Decision | A workable answer | What happens if you skip it |
|---|---|---|
| Case and separator | Lowercase, hyphens between words, no spaces and no underscores mixed in | One campaign appears as three or four rows, and every report has to be cleaned by hand before anyone can read it |
| The medium list | A closed list: email, cpc, social, referral, affiliate, display, print. New value needs a conversation | Channel groupings stop working, because paid-social, paidsocial and Paid Social are three different mediums |
| The campaign name pattern | Something like season-offer-year, or quarter-initiative, applied the same way every time | Nobody can find last year's equivalent campaign to compare against, because there is no pattern to search for |
| Who is allowed to invent a new value | One person, or a short approval step. Not everyone with a keyboard | The taxonomy grows a new synonym every month and the cleanup job never ends |
None of this is exotic. The reason it fails is that it lives in a document nobody opens at the moment the link is being made, which is usually five minutes before something goes out.
Before you send the link
A short check that catches most of the mistakes that cannot be undone once the email is out.
Worth checking every time
- The destination URL actually loads, and is the page you meant, not a staging copy
- The values match the case convention: all lowercase, hyphens, no stray capitals
- Source and medium are the right way round: medium is the category, source is the specific place
- The campaign name is character for character identical to the other links in this campaign
- You are not tagging a link that points at your own site from your own site
Worth checking once per campaign
- Somebody agreed the campaign name before anyone started building links against it
- The medium you are using is on the agreed list, rather than a new one invented for this
- Anyone else tagging links for this campaign has the same name in front of them
- If the link is going into print or a QR code, the destination is one you can redirect later
Automated testing does not replace a manual accessibility review.
The four mistakes that cost the most
In rough order of how much reporting damage they do per occurrence.
Tagging internal links
A UTM parameter on a link between two of your own pages starts a fresh session and credits the visit to your own campaign. The record of how that person actually found you is overwritten. It is the only mistake on this list that destroys data rather than just splitting it.
Inconsistent case
Recoverable, but only by editing every report by hand, forever. Every analytics tool is case sensitive on these values and none of them will merge the rows for you.
Source and medium swapped
Putting email in source and newsletter in medium is not wrong enough to break anything visibly, which is why it survives for years and quietly ruins every channel grouping built on top of it.
No agreed owner
Without one person who decides what a campaign is called, the taxonomy is whatever the last person to build a link thought sounded reasonable.
Tagging the short link and not the destination
A short link redirects. The parameters have to be on the address the visitor ends up at, or they arrive with nothing attached.
The spreadsheet nobody updates
The convention exists, in a document, that the person building the link at 4:55pm on a Friday does not open. This is the failure the governance page is about.
Frequently asked questions
More on campaign links
The builder explained for other questions, and what changes when the convention has to hold across a team.
- UTM BuilderBuild one tagged campaign URL. Free, no signup, nothing leaves your browser.
- GA4 UTM BuilderWhere each parameter lands in a GA4 report, and what GA4 does with it.
- UTM Campaign ManagerFrom building single URLs to managing a campaign's links in one place.
- Campaign Link ManagerFind, reuse and keep track of the links a campaign is already using.
- UTM GovernanceAn agreed naming template, enforced when the link is created.
- Agency UTM ManagementMany clients, many properties, one taxonomy per client.
A convention in a document is a suggestion.
Relay applies the naming template at the moment the link is created. Build a URL above, then save it into Relay from the result and the template applies from the next one on.
Build a campaign URLThe builder stays free and needs no account. You register only when you save a link into Relay.