UTM Builder

Build campaign links for email, paid search and social posts. Paste one destination or a batch, apply a consistent naming convention, and inspect existing tracking parameters before copying or exporting.

File contents stay in this browser. UTM imports one URL per line.

How the calculation works

Append utm_source, utm_medium and utm_campaign, with optional utm_term and utm_content. URLSearchParams encodes each value; replacement removes existing duplicates while preserving unrelated parameters and fragments.

Worked example

For https://example.com/shop, source Newsletter, medium email and campaign Autumn Launch become https://example.com/shop?utm_source=newsletter&utm_medium=email&utm_campaign=autumn_launch when normalization is enabled.

Assumptions and limitations

Lowercase and underscores are a convention, not an analytics requirement. Presets set medium to email, social or cpc; your source and campaign remain editable. Links are not shortened, visited or checked for redirects. Maximum 100 destinations per batch.

Use stable campaign names across channels. Avoid personal identifiers in tracking links, and avoid tagging ordinary internal links because they can distort attribution. Download TXT or CSV to keep an owner-controlled campaign record.

Sources and editorial responsibility

Maintained by Renvoro Pty Ltd. Sources inform the methods and assumptions shown here; outputs have the limitations described on this page.

Common questions

Why are duplicate tags replaced?

Repeated tracking keys can be interpreted differently by systems. Replacement removes all occurrences of a UTM key and writes one normalized value. Disable replacement to reject an already tagged destination.

Does this enable Google Analytics?

No. Your destination must have its own analytics implementation. This generator only constructs links.

Method reviewed 2026-10-08. Calculation standards · Report an issue