UTM builder with naming rules and CSV batch
Build campaign links in one consistent pattern and generate hundreds at once by pasting a list or CSV.
Your data never leaves your browser
UTM builder
Link with UTM
Fill in the URL, source, medium and campaign to build the link.
How to build a link with UTM
UTMs are parameters you add to the end of a link so Google Analytics and other tools know where each visit came from. When everyone on the team writes them differently, reports split into Google, google and google-ads. This tool applies one pattern to every link.
- Paste the destination URL. With or without https://. Parameters already in the URL and anything after the # are preserved.
- Fill in source, medium and campaign. These are the three fields every analysis needs. Term, content and ID are optional and help separate keywords, creatives and internal campaigns.
- Check the naming rules. Choose lowercase, accent removal and the separator. Click Save these rules so the browser remembers them next time.
- Copy the link or build in bulk. In the Batch tab, paste one URL per line or a CSV with columns, review errors line by line and export the result as CSV.
Everything is calculated here, in your browser. Nothing you type is sent to any server and we use no third-party cookies.
How the naming rules work
Each value goes through the same steps, always in the same order. The result is stable: applying the rules to an already clean value changes nothing.
The final URL keeps existing parameters first and adds the UTMs after them. If the URL already had a utm_ parameter you are setting, it is replaced and the tool tells you.
- 1. Lowercase
Black Friday → black friday - 2. No accents
promoção de verão → promocao de verao - 3. Separator in place of spaces and symbols
promocao de verao! → promocao-de-verao - 4. Assembly
destination?utm_source=…&utm_medium=…&utm_campaign=…#fragment
Examples
Google search ad
Destination shop.com/sneakers, source Google, medium CPC, campaign Black Friday 2026. Result: https://shop.com/sneakers?utm_source=google&utm_medium=cpc&utm_campaign=black-friday-2026.
Newsletter with two buttons
Use the same utm_campaign on both links and tell them apart with utm_content, for example top-button and footer-button. The report then shows which button got more clicks.
One hundred links from a spreadsheet
Paste the URLs in the Batch tab, one per line, and set source, medium and campaign as default values. Or paste a CSV with url, source, medium, campaign columns: the row's column beats the default. Export and upload the CSV to your ad tool.
Frequently asked questions
What is a UTM and what is it for?
UTM (Urchin Tracking Module) parameters such as utm_source, utm_medium and utm_campaign sit at the end of a URL. When someone clicks, Google Analytics reads them and attributes the visit to the source, medium and campaign you set.
Does uppercase versus lowercase matter?
Yes. GA4 treats Google and google as different values, which splits the same traffic across separate report rows. That is why the recommended rules convert everything to lowercase.
Which parameters are required?
This tool requires utm_source, utm_medium and utm_campaign, the minimum set for any campaign analysis. utm_term, utm_content and utm_id are optional.
Can I use UTMs on internal links on my site?
It is not recommended. Clicking an internal link with a UTM can overwrite the visit's original source with the new one, and you lose how the person actually reached the site.
How do UTMs work alongside the Google Ads gclid?
Google Ads adds the gclid by itself when auto-tagging is on, and it usually takes precedence over manual UTMs in GA4. Keep auto-tagging on for Google ads and use UTMs for other sources such as email, social and partners.
Are my links and data sent to any server?
No. Building happens in your browser, and the page is configured not to make requests to third parties. The only stored data is the naming rules in your browser's local storage, and only if you click Save.
Is the exported CSV safe to open in Excel?
Yes. Cells that start with =, +, - or @ get an apostrophe in front so the spreadsheet treats the content as text, not a formula. This is protection against CSV injection.
Related tools
URL inspector
Paste any campaign link and see its parameters, UTM mistakes and each platform's click identifiers.
URL inspectorCampaign naming generator
Set your pattern once and generate consistent campaign names, one by one or in bulk, that you can split back into columns in your report.
Campaign naming generator