UTM Generator & Builder

Free UTM generator, builder and campaign URL creator: tag any link with utm_source, utm_medium and utm_campaign so analytics attributes every click.

  • Marketing
  • Free
  • No sign-up
Mode

Pick a common channel to fill the most-used source, medium and content — every field stays editable.

Picking a preset fills the fields below — edit any value to fine-tune it.

Free · Private · Runs in your browser

Why use it

  • Presets for every channel

    Start from Google Ads, Facebook, email or Instagram presets that fill the most-used source, medium and content — every field stays editable.

  • Keeps your URL intact

    Existing query parameters are preserved and old utm_* values are replaced, so the generated campaign URL is always clean.

  • Copy-ready tracking links

    Get an analytics-ready link in one click, properly encoded, ready for ads, emails, posts and QR codes.

Great for

  • Tracking Google Ads, Facebook and LinkedIn campaign clicks in GA4
  • Measuring which newsletter, email or WhatsApp broadcast drives sign-ups
  • Comparing creatives or CTAs with utm_content in A/B tests
  • Tagging QR codes on flyers and packaging to see offline-driven visits

How to use

  1. Paste the destination URL of the page you want to track, including https://.
  2. Pick a preset — Google Ads, Facebook Ads, Instagram or email — or type your own source and medium, then name the campaign.
  3. Optionally add utm_term (the paid-search keyword) and utm_content (the ad or link variant) to split reports further.
  4. Click Generate URL and copy the tracked link into your ad, post, email or QR code.

What is a UTM code?

A UTM code is the set of utm_* parameters appended to a URL — utm_source, utm_medium, utm_campaign, utm_term and utm_content. When someone clicks a tagged link, your analytics tool reads those parameters and attributes the visit to the campaign, channel and placement that earned it, instead of dumping the click into a vague referral bucket.

UTM stands for Urchin Traffic Monitor, named after Urchin, the analytics tool Google acquired in 2005 and rebuilt into Google Analytics. Twenty years later the same five parameters remain the universal campaign-tagging format: GA4, Matomo, Piwik, Mixpanel and HubSpot all read them, so one tagged link reports everywhere.

The five UTM parameters

Google's own campaign URL builder defines five parameters. The first three should be on every link you tag; the last two split the reports further:

  • utm_source — Where the click comes from: google, facebook, newsletter, qr_code. Required — without a source most analytics tools ignore the whole tag.
  • utm_medium — The marketing channel: cpc, paid_social, email, social, organic, referral, display, video. Required.
  • utm_campaign — The campaign's name or ID: black-friday, launch-2026, spring-sale. Required — this is the row your reports group by.
  • utm_term — Optional. The paid-search keyword that triggered the ad, e.g. utm_term=crm+software.
  • utm_content — Optional. Distinguishes ads or links pointing at the same URL — top_banner vs sidebar — which makes it your A/B-testing lever.

UTM examples for Google Ads, Facebook, email and QR codes

A Google Ads click on the keyword crm software — with Auto-tagging off, or a link reused outside Ads:

https://example.com/pricing?utm_source=google&utm_medium=cpc&utm_campaign=search-brand&utm_term=crm+software&utm_content=ad-1

A Facebook or Instagram ad, with one utm_content value per creative so the report crowns the winner:

https://example.com/demo?utm_source=facebook&utm_medium=paid_social&utm_campaign=retargeting-may&utm_content=video-a

An email newsletter — medium is always email, and the source identifies the list:

https://example.com/blog?utm_source=newsletter&utm_medium=email&utm_campaign=issue-42&utm_content=cta-bottom

A QR code printed on a flyer — one utm_content per offline placement, so you know which piece pulled the scan:

https://example.com/offer?utm_source=qr_code&utm_medium=print&utm_campaign=expo-2026&utm_content=flyer-front

UTM naming best practices

Your reports are only as clean as your tags. Agree on a convention before the first campaign ships and hold the whole team to it:

  • Use lowercase everywhere: analytics counts Summer_Sale and summer_sale as two different campaigns.
  • Separate words with hyphens or underscores — never spaces, which encode as %20 and wreck the URL.
  • Keep names short and readable: spring-sale beats 2026_q2_multi_latam_final_v3.
  • Never rename a campaign mid-flight, or one campaign splits into two report rows.
  • Keep a shared sheet of every campaign name so ads, email and social tag consistently.
  • Tag the placement with utm_content (banner, video-a, cta-footer) to make A/B reads trivial.
  • Don't tag internal links — that overwrites the visitor's original campaign.

Frequently asked questions

How do I create a UTM link?
Paste the destination URL, fill in a source, medium and campaign name, then click Generate URL. The tool appends the utm_* parameters, properly encoded, and gives you a copy-ready tracking link for your ad, post, email or QR code.
What is a UTM code?
A UTM code is the set of utm_* parameters appended to a URL — utm_source, utm_medium, utm_campaign and the optional utm_term and utm_content. Analytics platforms read them to attribute the visit to the campaign that sent it, instead of lumping the click into a generic referral.
What does UTM stand for?
Urchin Traffic Monitor, a leftover of Urchin, the web analytics tool Google acquired in 2005 and turned into Google Analytics. The same five utm_ parameters are still read by GA4, Matomo, Mixpanel, HubSpot and virtually every marketing platform, so a tagged link works everywhere.
Which UTM parameters are required?
utm_source, utm_medium and utm_campaign are the three most analytics tools expect on every tagged link. utm_term and utm_content are optional and mostly used to split paid-search keywords and A/B-tested creatives in the reports.
What is the difference between utm_source and utm_medium?
utm_source says where the click comes from — google, facebook, newsletter, qr_code. utm_medium says what kind of channel it is — cpc, paid_social, email, social, referral. The same source can appear under several mediums, which is exactly what makes comparison reports useful.
When should I use utm_term and utm_content?
Use utm_term for the paid-search keyword that triggered the ad, like utm_term=crm+software. Use utm_content to tell apart two ads or CTAs pointing at the same page — top_banner vs sidebar, video-a vs video-b — so A/B tests show the winner in your reports.
Do I need UTM parameters on Google Ads links?
If Auto-tagging is enabled, Google Ads already sends a GCLID that GA4 uses for attribution, so manual utm_ tags are optional. Add them when Auto-tagging is off, when the link leaves the Ads ecosystem (a Display creative reused by email) or when you want campaign names you control.
How do I tag Facebook and Instagram links?
Use utm_source=facebook (or instagram) with utm_medium=paid_social for ads and utm_medium=social for organic posts. Facebook appends its own click ID, but manual UTM tags keep your campaign report consistent across every platform you buy from.
Can I put a UTM link inside a QR code?
Yes, and it is the cleanest way to measure offline pieces. Generate the tracked link first — for example utm_source=qr_code and utm_medium=print — then turn it into a QR code. Use one utm_content value per placement (flyer, packaging, store sign) to see which piece pulls the scans.
Are UTM values case-sensitive?
Yes — analytics treats Summer_Sale and summer_sale as two different campaigns. Pick lowercase with hyphens or underscores, never spaces, and keep the convention for the whole campaign: utm_campaign=summer_sale, not “Summer Sale”.
Where do I see UTM data in Google Analytics?
In GA4, open Reports, then Acquisition and Traffic acquisition: session source/medium and campaign are the dimensions your utm_ values populate. Use Realtime right after clicking a tagged link to confirm the tags arrived intact.
Does it change my existing query string?
No. UTM parameters are appended to whatever the base URL already has, and any old utm_* values are replaced rather than duplicated, so the generated campaign URL stays clean.

29 more free tools, no sign-up

Encoders, generators, media and marketing tools — all right in your browser.

Browse all tools