UTM Link Builder — Campaign Tracking URLs

Build UTM-tagged URLs for campaign tracking: source, medium, campaign, term, content — with naming conventions and a saved history. Free, instant.

UTM parameters are how Google Analytics tells you a visitor came from your newsletter versus your Instagram bio — five tags appended to any link: utm_source, utm_medium, utm_campaign, and optionally utm_term and utm_content.

The builder enforces the conventions that keep reports clean (lowercase, consistent separators — "Newsletter" and "newsletter" are two sources in GA4), previews the final URL, and keeps a session history so your campaign links stay consistent across the team.

100% in-browser · no upload · no signup · nothing you paste or drop here leaves your device

🔗
Developer/UTM Link Builder & Tracker

UTM Link Builder & Tracker

Build UTM-tagged URLs for Google Analytics. Presets, batch mode, history, CSV export — 100% local.

100% LOCALSmart presetsBatch modeHistory & CSV exportQR code generation
URL & UTM Parameters
Generated URL
https://freetoolhub.org/json-formatter/?utm_source=google&utm_medium=cpc&utm_campaign=spring-sale&utm_term=json%2Bformatter&utm_content=logolink
URL Breakdown
Base URLhttps://freetoolhub.org/json-formatter/
utm_sourcegoogle
utm_mediumcpc
utm_campaignspring-sale
utm_termjson+formatter
utm_contentlogolink
History (0)
No saved links yet. Generate a URL and click "Save".
Data Source & Legal Disclaimer
Effective: 2026
Sources: Browser-side processing (no external API)

This tool runs 100% in your browser. All computation happens locally on your device — your input is never uploaded to any server. Results are for reference only.

How UTM parameters drive campaign attribution — illustrated

UTM stands for Urchin Tracking Module, five reserved query-string parameters that survive the whole URL-encoding pipeline: utm_source (the platform), utm_medium (the channel), utm_campaign (the promotion name), plus optional utm_term (paid keyword) and utm_content (specific creative). This tool appends them with URLSearchParams so existing query parameters are preserved and values are properly encoded, then shows a URL breakdown. When a visitor lands, Google Analytics 4 reads the query string and attributes the session to Source, Medium, and Campaign dimensions — which is how marketing reports get their numbers.

From base URL to GA4 attribution
UTM CAMPAIGN PIPELINEBASE URLhttps://freetoolhub.org/json-formatter/?utm_source=google&utm_medium=cpc&utm_campaign=spring-sale&utm_term=json+formatter&utm_content=logolinkLanding pagereads query string on loadGA4 ATTRIBUTIONSourcegoogleMediumcpcCampaignspring-sale

GA4 never sees your ad — it sees the tagged landing-page URL and decodes the utm_* parameters from it.

Worked example

Nadia runs paid search for a SaaS company and tags every ad link so GA4 can report which campaign drove the sign-ups.

  1. Base:She starts from https://freetoolhub.org/json-formatter/ and fills in source=google, medium=cpc, and campaign=spring-sale.
  2. Term and content:She adds term=json+formatter for the paid keyword and content=logolink to tell the two ad creatives apart in reporting.
  3. Generate:The tool builds the full URL with URLSearchParams, preserving any existing query parameters, and renders a breakdown of every utm_* key.
  4. Attribute:When a visitor clicks, GA4 reads the query string and logs Source "google", Medium "cpc", Campaign "spring-sale". She saves the link to history and exports the CSV for the team.

About this UTM link builder

This page covers utm generator online, add utm parameters to url, ga4 campaign url builder, tracking url for marketing — all the same underlying task as UTM link builder. The tool above is FreeToolHub's utm builder embedded in full: every feature works right here, and nothing you process is uploaded to any server.

Frequently asked questions

What are the five UTM parameters?

utm_source (where: newsletter, google, instagram — required), utm_medium (channel type: email, cpc, social — required), utm_campaign (the initiative: spring_sale_2026), utm_term (paid search keywords), and utm_content (A/B variant or placement). Source and medium are the minimum for GA4 to attribute the session.

Why are my UTM links showing two sources in GA4?

Case sensitivity: utm_source=Newsletter and utm_source=newsletter are different sources in GA4. Fix it with a naming convention — all lowercase, hyphens not spaces — enforced from one builder so every link on the team is consistent before it ships.

Joke of the Day
Sep 6

What do you call a crab that plays baseball?

100% Free, Forever

Keep Tools Free for Everyone

No paywalls, no signups, no data sold. Built by a solo developer who believes useful tools should be accessible to everyone.

Support me on Ko-fi— keep tools free

100% of proceeds go towards hosting & building more free tools.