UTM Generator

Build a campaign-tagged URL for ads, emails, and social posts. Fill in the fields and the tracking URL appears ready to copy.

More ways to experience Recasely:

Ut

Build Trackable Campaign URLs

UTM parameters are tags added to the end of a URL that tell your analytics platform where a visitor came from. They are invisible to the visitor and change nothing about the page — they simply travel along with the click so that Google Analytics, Matomo, or whatever you use can attribute the session to a specific campaign. This builder assembles them correctly, entirely in your browser.

What does each parameter mean?

ParameterAnswersExamples
utm_sourceWhich site or list sent the traffic?google, newsletter, linkedin
utm_mediumWhat kind of channel was it?cpc, email, social
utm_campaignWhich campaign is this?spring_sale, launch_2026
utm_termWhich keyword? (paid search)running shoes
utm_contentWhich version or link? (A/B tests)logolink, variant_b

Source is the only one Google Analytics genuinely requires, but source, medium, and campaign together are the practical minimum — without medium, everything lands in reports as unassigned.

Does capitalization matter?

Yes, and it is the single most common way UTM reporting gets messed up. Analytics platforms treat utm_source=Newsletter and utm_source=newsletter as two different sources, so one campaign ends up split across two rows. This tool preserves exactly what you type rather than quietly lowercasing it, because rewriting your input would hide the problem rather than solve it. Pick a convention — lowercase throughout is the usual choice — and stick to it.

What happens to spaces and special characters?

They are percent-encoded, so a space becomes %20 and characters such as &, =, and ? are escaped. This matters: an unescaped & inside a campaign name would be read as the start of a new parameter and silently truncate your value. Some teams prefer underscores or plus signs to spaces for readability; either works, as long as it is consistent.

Will this break a URL that already has parameters?

No. If your URL already contains a query string, the tags are joined with & rather than a second ?. And if the URL ends in a fragment such as #pricing, the parameters are inserted before it, which is where they have to be — anything after the # is never sent to the server and would not be recorded.

Tips for tagging that stays useful

Only tag external links. Adding UTM tags to links between pages of your own site restarts the session attribution and overwrites the original source, so your real acquisition data disappears. Keep a shared spreadsheet of the values your team uses so that email does not become e-mail next quarter. And avoid putting anything private in a campaign name — tagged URLs get shared, pasted into chats, and indexed.

Related tools

To escape a value by hand or inspect one you have been given, use URL Encode & Decode. To turn a campaign name into a clean, URL-safe form first, try the Slugify URL Generator.

Last reviewed: August 2026