UTM Link Builder

Build clean, lowercase campaign links GA4 will group correctly, with presets and history. 100% free, no signup. Everything runs in your browser.

100% free No sign-up Private by design Works on any device
UTM Link BuilderRuns locally

Loading the tool…

This free UTM link builder turns a base URL plus source, medium, campaign, term and content values into a properly encoded tracking link, with the final URL updating live as you type and a copy button when it is ready. One-click presets fill the common pairs instantly: google with cpc, facebook with paid-social, newsletter with email, and x with social. Every link you build in a session is saved to a history table stored only in your browser through localStorage, so you can copy yesterday's naming instead of reinventing it.

I built this after auditing my own analytics and finding the same newsletter recorded as Email, email and E-mail, three campaigns that were really one. The tool now enforces lowercase, strips accidental spaces and URL-encodes every value, because those three boring rules are the difference between a report you trust and a report you squint at. Nothing you enter is sent anywhere; the history lives in your browser and nowhere else.

How to use

  1. Paste your base URL, the full address of the page you want people to land on.
  2. Click a preset if one fits: google and cpc for paid search, facebook and paid-social, newsletter and email, or x and social.
  3. Fill in your campaign name, and add term and content values if you need to separate keywords or creative variations.
  4. Watch the final URL assemble live as the tool lowercases values, strips stray spaces and encodes special characters.
  5. Click copy and paste the finished link into your ad platform, email tool or post.
  6. Check the history table when you build the next link, so your naming stays consistent with what you used before.

Consistency is the entire game with UTM tags, and this tool makes consistency the default. GA4 is case-sensitive, so Email and email are counted as two different campaigns and your report splits one effort into meaningless fragments. By forcing lowercase and trimming spaces before the link exists, the tool removes the mistake at the source instead of leaving you to clean it up in reports.

The presets encode conventions you would otherwise have to remember. Using cpc as the medium for paid search and email for newsletters keeps your data aligned with GA4's default channel grouping, which means sessions land in the right bucket without custom configuration. The parameter format itself follows Google's own campaign URL documentation, so what you build here is exactly what GA4 expects to read.

The history table is a quiet superpower. Most UTM chaos comes from forgetting what you called things last month, and the session history means the answer is one glance away. It is stored in your browser with localStorage, never on a server, so your campaign plans stay private while remaining handy.

Encoding is handled for you, which matters more than people think. A space or an ampersand in a campaign name can silently break parameters and hand your analytics a truncated mess. The tool encodes values the moment you type them, so the copied link works on the first try.

It also keeps tagging fast enough that you actually do it. When building a link takes ten seconds, every channel gets tagged, and suddenly the question of whether the podcast or the newsletter drove signups has a real answer. I stopped guessing about my own traffic the month I started tagging everything.

Who is this tool for?

Email marketers tag every campaign send so newsletter traffic stops hiding inside direct traffic. Set the newsletter preset, name the campaign after the send date or subject theme, and your email platform's click numbers finally reconcile with what GA4 reports on the other end.

Paid media managers tag Facebook, Instagram and Microsoft ads where auto-tagging does not cover everything. Using content to separate creative variants means you can see which ad actually drove conversions, not just which campaign. The lowercase enforcement keeps a team of three from producing five spellings of the same source.

Small business owners running a mix of channels use it to compare efforts honestly: a link for the local partnership, one for the print flyer through the QR code generator, one for the Instagram bio. Three tagged links, and at month's end you know which one earned its keep.

Content teams tag guest posts and podcast appearances. When your founder does five podcast interviews, giving each show its own campaign value tells you which audience actually clicked through. Keep the landing page URL itself clean and readable with the slug generator before you add parameters.

Frequently asked questions

Are my links or campaign names uploaded anywhere?

No. The link is assembled in your browser and the history table is stored in your browser's localStorage. Clear your browser data and the history is gone; it never existed on any server.

Why does the tool force everything to lowercase?

Because GA4 treats utm values as case-sensitive, so Email, EMAIL and email become three separate campaigns in reports. Lowercase everywhere is the simplest convention that prevents this, so the tool applies it automatically.

Which parameters do I actually need?

Source, medium and campaign cover most situations: where the traffic came from, what kind of channel it was, and which effort it belongs to. Term and content are optional refinements for paid keywords and creative variants.

Should I put UTM parameters on internal links?

No, never. Tagging a link from one page of your site to another restarts the session attribution and corrupts your data. Use UTM tags only on links that bring people to your site from somewhere else.

Do UTM parameters affect SEO?

Not meaningfully, as long as your pages declare a clean canonical URL so tagged and untagged versions are not treated as duplicates. I set that up with the meta tag generator and then tag freely without worrying.

What is the difference between utm_source and utm_medium?

Source is the specific place the click came from, like google, facebook or newsletter. Medium is the category of channel, like cpc, email or social. Together they answer where and how, and GA4 uses both to group your traffic.

Does the history sync between my devices?

No, and that is by design. The history is localStorage on the device you used, which keeps your campaign plans private. If you need a shared record for a team, paste your links into a shared sheet as you build them.

Related tools