Free tool · Always free

Tag links that track.

Build clean, consistent UTM-tagged URLs so GA4 and your CRM can attribute traffic more accurately when your tracking is set up correctly. No login, no API key, and nothing you enter ever leaves your browser. Use it as much as you want.

Definition

What is UTM Builder?

The UTM Builder is a free web tool that adds campaign tags (source, medium, campaign, and optional term and content) to any link, so GA4 and your CRM can attribute the visit to the exact source that drove it. It runs entirely in your browser, requires no login, and stores nothing you enter.

How it works

You paste a URL and fill in the campaign fields, and the tool appends the standard UTM parameters and gives you a clean, copy-ready link. A force-lowercase toggle keeps values consistent so one source doesn't split into two in reports, and one-click ad-platform templates (Google Ads, Microsoft/Bing, Meta, TikTok) auto-fill each network's dynamic tracking macros.

Who it’s for

It's for marketers, agencies, and business owners who share links across ads, email, and social and want reporting they can trust; the outcome is cleaner attribution, so you can see which channels actually drive leads and calls instead of losing them to "direct" or "referral" traffic.

In practice

A shop tagging its monthly newsletter builds a link like https://example.com/sale?utm_source=newsletter&utm_medium=email&utm_campaign=spring_sale_2026, so every click and lead from that email shows up correctly in GA4 instead of being lumped in with untracked traffic.

Build a tagged URL

Consistent tags, clean data.

Build consistent, campaign-tagged URLs so GA4 and your CRM can tell exactly where a visitor came from. Paste your link, then either fill the five tags by hand or pick an ad platform to auto-fill its dynamic macros. Nothing is stored, it all runs in your browser.

Running ads? Start here (optional). Pick your ad platform to auto-fill the tracking tags below with its dynamic macros. This overwrites the source, medium, campaign, term, and content fields, so pick your platform first, then adjust:
Dynamic variable reference (ValueTrack & platform macros)
Google Ads (ValueTrack){campaignid} {adgroupid} {creative} {keyword} {matchtype} {network} {device} {placement} {loc_physical_ms} + gclid auto-appended by Google Ads when auto-tagging is on.
Microsoft / Bing{CampaignId} {AdGroupId} {AdId} {keyword} {matchtype} {network} {device} {QueryString} + msclkid auto-appended by Microsoft Advertising when auto-tagging is on.
Meta (Facebook / Instagram){{campaign.name}} {{campaign.id}} {{adset.name}} {{adset.id}} {{ad.name}} {{ad.id}} {{placement}} {{site_source_name}} + fbclid auto-appended.
TikTok Ads__CAMPAIGN_NAME__ __CAMPAIGN_ID__ __AID_NAME__ __AID__ __CID_NAME__ __CID__ __PLACEMENT__ + ttclid auto-appended.

Macros stay un-encoded and case-exact so the platform can substitute them at click time. Force-lowercase is auto-disabled when you load a template.

FAQ

Questions, answered.

A UTM is a small set of tags added to a link so analytics tools can attribute the visit to a specific source, medium, and campaign. Without them, a lot of traffic lands in 'direct' or 'referral' and you cannot tell what actually drove it. For example, tagging your newsletter links helps GA4 attribute leads to the newsletter more reliably when your tracking is set up correctly.

Source, medium, and campaign are the three that matter and should always be set. Term and content are optional, term is mainly for paid-search keywords and content is for telling two versions of the same link apart (like two buttons in one email).

UTM values are case-sensitive, so 'Facebook' and 'facebook' become two separate sources in your reports and split your data. Forcing lowercase keeps everything in one clean bucket.

The links and values you enter never leave your browser; nothing you type is uploaded, logged, or stored. (Like most sites, the page itself uses standard analytics.) You can use it as much as you like, for free.

Want tracking done right across the stack?