By Updated

UTM Builder

Build trackable campaign URLs with UTM parameters for Google Analytics, GA4, and other tracking tools

Interactive tool

Campaign details

Tracking URL

Read-only

Saved presets

Saved presets are stored locally in this browser. Use them to reload a campaign in one click.

What is a UTM Builder?

A UTM builder generates trackable campaign URLs by appending standardized utm_* query parameters to a destination URL. Analytics platforms like Google Analytics 4, Plausible, Matomo, and Adobe Analytics read these parameters to attribute visits to a specific source, medium, and campaign: letting you measure exactly which marketing channels and content drive traffic and conversions.

How to Use This UTM Builder

  1. 1Enter the destination URL (the page you want to track)
  2. 2Fill in utm_source (where the traffic comes from)
  3. 3Fill in utm_medium (the channel: email, cpc, social, …)
  4. 4Fill in utm_campaign (the campaign name or identifier)
  5. 5Optionally add utm_term, utm_content, or utm_id for more detail
  6. 6Copy the assembled URL or save it as a preset for re-use
  7. 7Switch to bulk CSV mode to generate dozens of URLs at once
What you get

Key features

GA4-aware

Supports both classic UTM parameters and the GA4 utm_id field

Bulk CSV mode

Paste a spreadsheet column and generate hundreds of URLs in one pass

Saved presets

Store frequently-used campaigns locally for one-click re-use

Smart warnings

Surface mixed casing, whitespace, missing required params, and duplicate UTMs

Auto HTTPS

Automatically prepends https:// when missing from the base URL

QR shortcut

Open the generated URL directly in our QR Code Generator with one click

Open in new tab

Quickly verify the URL works in your browser before sharing

100% private

Everything happens locally; no campaign data ever leaves your browser

Why Tag URLs with UTM Parameters?

Without UTM parameters, you can only see that a visitor arrived from "example.com": not whether they clicked a Facebook ad, a newsletter link, or an organic share. UTM parameters give you the resolution to compare campaigns, channels, and creative variations, so you know where to invest your marketing budget.

Common use cases

  • Tracking newsletter campaigns and individual email blasts
  • Comparing paid social variants (Facebook vs LinkedIn vs Twitter)
  • Measuring influencer or affiliate referral traffic
  • A/B testing CTA buttons or banner placements with utm_content
  • Tagging links shared on podcasts, videos, or PDFs
  • Reporting on campaigns across multiple analytics tools

The five UTM parameters explained

  • utm_source: required, the referrer (newsletter, google, facebook)
  • utm_medium: required, the channel (email, cpc, social, organic)
  • utm_campaign: required, the campaign name (spring_sale, launch_2026)
  • utm_term: optional, paid keyword for cost-per-click campaigns
  • utm_content: optional, variant identifier (header_cta vs footer_cta)
  • utm_id: optional, GA4 campaign id, used to merge UA data

Naming conventions that scale

Pick a convention and document it. Use lowercase only, replace spaces with underscores, never include personally identifiable information, and avoid abbreviating campaign names too aggressively. The warnings panel flags casing or whitespace issues as you type.

Pro tips

Tips & best practices

Lowercase everything

Analytics platforms treat "Email" and "email" as different sources. Keeping every utm_* value lowercase keeps your reports clean.

Reserve "organic" for organic search

Don't use utm_medium=organic for social or referrals. Stick to the standards (cpc, email, social, referral, …) so your reports stay comparable.

Save campaigns as presets

For recurring campaigns like "weekly newsletter", save a preset so the team always uses the same source/medium combination.

Use bulk mode for migrations

Have a spreadsheet of links you need to tag? Paste them as CSV with the exact column names baseUrl,source,medium,campaign,term,content,id and copy the result back.

Add utm_id for GA4

GA4 uses utm_id to join UTM-tagged sessions with imported cost data. Add it when running paid media to unify reporting.

Built for trust

Privacy & security

This UTM builder runs entirely in your web browser. The URLs you build, the saved presets, and any CSV input are never uploaded, logged, or shared. Presets are stored only in this browser's localStorage.

Frequently Asked Questions

Which UTM parameters are required?

utm_source, utm_medium, and utm_campaign are required for analytics platforms to recognize a tagged URL. utm_term, utm_content, and utm_id are optional and add detail for paid keywords, A/B variants, and GA4 campaign IDs respectively.

Are UTM parameter values case-sensitive?

Yes. "Email" and "email" are reported as two separate values in most analytics tools. The builder warns you when you mix cases so you can keep your reports clean.

What is utm_id and when should I use it?

utm_id is a GA4-specific parameter that ties a URL to a campaign ID configured in your analytics platform. It allows GA4 to join UTM-tagged sessions with imported ad cost data. Add it whenever you run paid media campaigns.

Can I generate many URLs at once?

Yes: switch to Bulk CSV mode and paste rows with the columns baseUrl,source,medium,campaign,term,content,id. The tool will produce one tagged URL per row that you can copy or download.

Where are saved presets stored?

Presets live in this browser's localStorage only. They never leave your device, so you may need to re-create them on a different browser or computer.

Will it overwrite existing utm_* parameters in my base URL?

Yes. If your base URL already contains UTM parameters, the new values you enter will overwrite them and a warning is shown so you know it happened.