# UTM Builder

> Free UTM builder and campaign URL generator. Enforces a tagging convention across your team, shows the GA4 channel each link lands in, warns about the mistakes that break reporting, and builds links in bulk. Runs in your browser. No login, no ads.

This is the Markdown copy of https://usesuperflow.ai/tools/utm-builder, published for AI agents and scripts.

## What it does

Build campaign URLs that follow one convention, and see which GA4 channel each link will land in before you send it.

## How to use it

1. **Paste the destination.** Any page URL. Existing tags on it can be loaded into the fields rather than duplicated.
2. **Fill in the placement.** Source and medium at minimum. Your convention is applied as you type, and each field shows the tag it will actually produce.
3. **Check the warnings, then copy.** The tool flags unrecognised mediums, personal data, and internal-link tagging before the link goes out. Add several to build a set.

## Call it directly

**HTTP:** `POST https://usesuperflow.ai/api/tools/utm-builder`. No API key, no account.

```bash
curl -sS https://usesuperflow.ai/api/tools/utm-builder \
  -H 'Content-Type: application/json' \
  -d '{"url":"example.com/pricing","source":"newsletter","medium":"email","campaign":"spring launch"}'
```

Returns `{ url, normalized, channel, issues[] with level, field and message }`.

**MCP:** this tool is `build_utm_url` on Superflow's MCP server at `https://usesuperflow.ai/api/mcp` (Streamable HTTP, no authentication). Setup for every client: https://usesuperflow.ai/tools/mcp

Limits: None. The work is local and costs nothing. Allow up to 10 seconds for a response. Results are cached for 24 hours per URL; pass `"refresh": true` to run again.

## Facts

| | |
| --- | --- |
| Cost | Free. No login, no email, no ads. |
| Where it runs | The tool on this page runs entirely in the browser: the URLs you build there are never uploaded or logged. The same builder is also published as an endpoint for scripts and agents, which does the identical pure transform on our side and stores nothing — but if you can use the page, use the page. |
| Stored data | Only the tagging convention, in the visitor's own browser localStorage. Never a built URL. |
| Required parameters | utm_source and utm_medium. utm_campaign is strongly recommended. |
| Parameters written | utm_source, utm_medium, utm_campaign, utm_id, utm_term, utm_content. Empty fields are omitted rather than written blank. |
| Bulk output | Add links to a list, then copy all or download a CSV with one row per link and a column per parameter. |

## Questions

### Which UTM parameters do I actually need?

Source and medium. Without both, GA4 cannot place the visit in a channel and it usually ends up reported as direct. Campaign is strongly recommended because it is how you group placements together. Term and content are optional, and content is the one most people underuse: it is how you tell the hero button apart from the footer link in the same email.

### Why does capitalisation matter so much?

Analytics tools treat values as literal strings. Facebook, facebook, and FaceBook are three separate rows in your report, splitting one campaign's numbers three ways. Nothing warns you, and it is only obvious months later when the totals look wrong. Forcing lowercase is the single highest-value rule a team can agree on, which is why it is the default here.

### What does the channel line under Medium mean?

GA4 sorts traffic into default channel groups, and for most channels the decision comes from utm_medium alone. If you use a medium GA4 does not recognise, like newsletter or partner-blog, the traffic lands in Unassigned where nobody looks. This tool tells you which channel you are about to land in while you can still change it. Paid is the one exception: GA4 needs the source too, because it splits paid into Search, Social, Video, and Shopping.

### Should I put UTM tags on links inside my own site?

No. This is the most expensive UTM mistake there is. A tagged internal link starts a brand new session and overwrites the source that originally brought the person in, so a visitor who arrived from a paid ad and clicked a tagged nav link gets attributed to the nav link instead. Use UTMs only on links that bring someone in from outside.

### Can I build a lot of links at once?

Yes. Build one, click Add to list, change the source or the placement, and add the next. When you are done you can copy them all or download a CSV with one row per link and a column per parameter, which drops straight into a campaign tracker.

### Are my URLs sent anywhere?

Not from this page. The builder runs in your browser, so a URL you type here has nowhere to go. Campaign URLs give away more than people realise, including launches that have not been announced and partners who have not signed, which is why it works that way. Only your convention settings are saved, in your own browser. There is a separate endpoint for scripts and agents that cannot run a browser: it does the same pure transform on our side and stores nothing, but anything you send it does leave your machine, so prefer this page when you have the choice.

### What is utm_id for?

It matches a link to a campaign row when you import ad cost data into GA4. If you are not importing cost data, leave it empty. It is not a general purpose identifier and it should never carry anything personal.

## Related tools

- [MD5 Hash Generator](https://usesuperflow.ai/tools/md5-generator) — Hash any text to MD5, or call the same endpoint from a script. Markdown copy: https://usesuperflow.ai/tools/md5-generator.md
- [Markdown Viewer](https://usesuperflow.ai/tools/markdown-viewer) — Open and read any Markdown file. Nothing leaves your browser. Markdown copy: https://usesuperflow.ai/tools/markdown-viewer.md
- [AI Visibility Checker](https://usesuperflow.ai/tools/ai-visibility-checker) — See whether ChatGPT, Claude, and Perplexity can actually read your site. Markdown copy: https://usesuperflow.ai/tools/ai-visibility-checker.md
- [robots.txt AI Checker](https://usesuperflow.ai/tools/robots-txt-ai-checker) — Test your robots.txt against every AI crawler that matters. Markdown copy: https://usesuperflow.ai/tools/robots-txt-ai-checker.md

## About

UTM Builder is one of a set of free tools published by Superflow at https://usesuperflow.ai/tools. None of them require a login, an email address, or payment.

Category: campaigns.

Superflow is a website and creative-asset review tool. Its agents watch every page of a site and report what changed. See https://usesuperflow.ai.
