The UTM builder.

Tagged campaign URLs that report cleanly. Presets, live validation, CSV export, and nothing you type leaves this page.

The page you are sending people to. Query strings already on the URL are kept.

Start from a channel

Presets fill source and medium with values GA4 groups correctly. The campaign name is still yours to write.

Where the traffic comes from: google, newsletter, partner_name.

The kind of traffic: cpc, email, paid_social, referral.

The thing you are running: spring_sale_2026, launch_week.

Optional. The ad platform's own campaign id, for joining reports back together.

Optional. The paid keyword. Mostly used by search ads.

Optional. Which creative or link it was: hero_cta, footer_link, variant_b.

Your tagged URL
Enter a destination URL to build your link.

Saved links

Nothing saved yet. Saved links stay in this browser only. They are never uploaded, and there is no account to make.

Everything on this page runs in your browser. No link you build is sent to Mrkr, there is nothing to sign up for, and the saved list is stored only in this browser’s local storage.

What is a UTM builder?

A UTM builder appends utm_source, utm_medium and utm_campaign to a URL so your analytics tool can tell where a visit came from. Paste your destination page, name the source, medium and campaign, and you get a correctly encoded link. Without the tags, most paid and email clicks report as direct traffic.

What each parameter means.

Six parameters exist. Three of them do almost all the work. The rest earn their place only when you have a concrete report in mind that needs them.

ParameterWhat it answersExampleUse it?
utm_sourceWhich specific site, app or list sent the clickgoogleAlways
utm_mediumWhat type of traffic it is, so channel grouping can bucket itcpcAlways
utm_campaignWhich campaign or push this link belongs tospring_sale_2026Always
utm_idThe ad platform's own campaign id, for joining spend to sessions1234567890When you reconcile ad spend
utm_termThe paid keyword that triggered the adprivacy_analyticsSearch ads only
utm_contentWhich creative, placement or link inside the same campaignhero_ctaWhen you are A/B testing creative

Medium values matter more than they look: analytics tools use them to build channel groupings. cpc, organic, email, referral, affiliate, paid_social and display are the values that get bucketed correctly. Invented ones like ads or fb-paid land in an other bucket.

Where these tags land.

Once a tagged visitor arrives, the parameters show up in your campaign report. In Mrkr that is the sources view: source, medium and campaign each get their own breakdown, alongside referrers and direct traffic, so you can see whether the newsletter or the ad actually moved anything.

The tags are read from the URL on arrival. Mrkr runs cookieless by default, so nothing persistent is stored on the visitor’s device to make that work. Cookie mode is available per site when you need to follow someone across sessions, and that does change your consent obligations.

Mrkr traffic sources showing referrers, campaigns, and direct traffic.
Traffic sources in Mrkr, with UTM campaigns broken out from referrers and direct. Open it in the live demo.

Naming rules that keep reports readable.

Lowercase everything

UTM values are case sensitive. Facebook and facebook are two rows that never add back together.

Underscores, not spaces

A space becomes %20, which survives nothing. Underscores survive chat apps and spreadsheets.

Source is the platform

google, linkedin, mailchimp. Campaign carries the what, source carries the where.

Date the campaign

spring_sale_2026 still reads a year later. Dating every link just fragments the campaign.

Why campaigns report wrong.

Mixed case

One person tags LinkedIn, the rest tag linkedin. Both appear, neither is the total.

Tagged internal links

A tagged banner on your own site restarts the session and overwrites the real source. Use an event instead.

One campaign, three spellings

spring-sale, spring_sale and springsale are three campaigns. A shared naming sheet is the only fix.

Redirects that strip the query

Shorteners and vanity domains drop parameters. Click your own link end to end before you send it.

Tagged links are only half the job

Building the link is easy. The useful part is seeing which campaign produced revenue, not just clicks. The Mrkr demo is a fully populated dashboard on real demo traffic, with no signup and no cookies.

Open the live demo
Mrkr revenue attribution showing which sources and campaigns produced sales.

Do I still need UTM tags in 2026?

More than before, and for a reason that has nothing to do with ads. Referrer data keeps getting thinner. Clicks from apps, from private browsing, from pages that strip the referrer, and increasingly from AI assistants that pass along a bare link, all arrive with no referrer at all and get filed as direct. A UTM parameter survives all of that, because it is part of the URL rather than a header the browser may or may not send.

The trade-off is that the tags are visible to anyone in the address bar. Keep them descriptive rather than clever, and never put anything in a UTM parameter you would not want a visitor to read: no email addresses, no user ids, no unannounced codenames. Personal data in a query string is personal data you are processing, and it lands in server logs everywhere along the way.

Questions, answered.

Keep reading

Your first visitor is already here.

Drop in the script and watch them land. It takes about a minute.