SEO Tools

UTM Builder

Build UTM tracking links in seconds. Add source, medium, campaign, term and content to any URL while keeping existing parameters. No sign-up needed.

Everything runs in your browser. Nothing you enter is uploaded or saved.

Your result

What is the UTM Builder?

UTM tags tell your analytics tool where a visitor came from. When someone clicks a link carrying utm_source, utm_medium and utm_campaign, reports such as Google Analytics can separate traffic from a newsletter, a WhatsApp broadcast, an Instagram bio or a paid ad. This UTM Builder adds those tags to any web address correctly, with spaces and special characters encoded, so you do not have to type long query strings by hand.

Source, medium and campaign are required, while term and content are optional extras for keywords or ad variations. The builder keeps any query parameters already on your link, keeps the #section at the end, and replaces old UTM values instead of duplicating them. It runs in your browser and never opens or checks the destination page, so you can prepare links for pages that are not live yet.

How to use the UTM Builder

  1. Paste the full landing page address, starting with http:// or https://, into Destination HTTP(S) URL.
  2. Fill in Campaign source (for example newsletter or facebook) and Campaign medium (for example email or cpc).
  3. Enter a Campaign name such as diwali_sale or autumn launch.
  4. Optionally add a Campaign term for a paid keyword and a Campaign content value to tell two ads or links apart.
  5. Click Process to generate the tagged URL; any missing required field is flagged inline.
  6. Click Copy result and use the link in your email, post or ad, or press Reset to build another.

Features

  • Adds utm_source, utm_medium and utm_campaign, plus optional utm_term and utm_content, to any HTTP or HTTPS address.
  • Keeps your existing query parameters, such as ref=home, and the #fragment at the end of the link.
  • Replaces any utm_ tags already on the URL instead of adding duplicates, and drops an old utm_term or utm_content when you leave that field empty.
  • Encodes spaces and symbols in your values automatically, so autumn launch becomes autumn+launch.
  • Validates input inline: the address must be absolute HTTP(S) without a username or password, and the three required fields cannot be blank.

Why use this utm builder

  • See exactly which channel and campaign brought each visitor in your analytics reports.
  • Avoid broken or messy links caused by hand-typed question marks and ampersands.
  • Re-tag an old link for a new campaign without cleaning it up first.
  • Create links privately and offline-friendly, since nothing is fetched or uploaded.

How it works

Parse an absolute HTTP(S) URL and set standard utm_* values with URLSearchParams encoding.

Examples

Newsletter link that keeps its parameters

Input: Destination: https://example.com/page?ref=home#details | Source: newsletter | Medium: email | Campaign: autumn launch

Result: https://example.com/page?ref=home&utm_source=newsletter&utm_medium=email&utm_campaign=autumn+launch#details Preserves other query parameters and the fragment; replaces existing standard UTM parameters. No URL is fetched.

Paid ad link replacing an old UTM tag

Input: Destination: https://shop.example.com/shoes?utm_source=old | Source: facebook | Medium: cpc | Campaign: diwali_sale | Term: running shoes | Content: video_ad

Result: https://shop.example.com/shoes?utm_source=facebook&utm_medium=cpc&utm_campaign=diwali_sale&utm_term=running+shoes&utm_content=video_ad Preserves other query parameters and the fragment; replaces existing standard UTM parameters. No URL is fetched. The old utm_source=old is replaced rather than duplicated.

Results are estimates for general information, not financial, medical, legal, tax, or property advice. Confirm important figures with the relevant institution or a qualified professional.

UTM Builder: frequently asked questions

Which UTM fields are required?

Campaign source, Campaign medium and Campaign name are required, and the tool shows a plain message such as 'Campaign medium is required.' if one is blank. Campaign term is meant for paid search keywords and Campaign content for telling apart two links or ads in the same campaign. Leave the optional fields empty if you do not need them.

Why does my link show an error about an absolute HTTP(S) URL?

The destination must be a complete address that starts with http:// or https://, such as https://example.com/offer. A bare domain like example.com, a relative path, or another scheme such as mailto: is rejected. Addresses that contain a username and password before the domain are also refused so credentials do not end up in shared links.

What happens to parameters that are already on my URL?

Ordinary parameters such as ref=home or id=42 are kept in place, and the #fragment stays at the end. Any existing standard UTM parameters are replaced with your new values, so you never end up with two utm_source tags. If the old link had a utm_term or utm_content and you leave that field blank, the old one is removed.

Why is the space in my campaign name shown as a plus sign?

Query strings are encoded with the same rules browsers use for web forms, where a space becomes +. Analytics tools decode it back to a space, so autumn launch is still reported as autumn launch. Many marketers prefer underscores or hyphens anyway to keep reports tidy, but either approach works.

Does the builder check that my page or analytics are working?

No. The link is generated locally and the destination is never visited, so a typo in the address will not be detected, and the tool cannot confirm that your analytics property is installed. Click the finished link yourself once to test it. Also avoid putting personal details such as email addresses into UTM values, because they are visible to anyone.

Are UTM tags case sensitive?

In most analytics tools, yes: Facebook and facebook are usually reported as two different sources. The builder keeps your text exactly as typed, so pick a naming convention, such as all lowercase, and stick to it across your team. That keeps campaign reports clean and easy to compare.