← All tools

UTM builder & campaign URL parser

Add UTM tags to a link so Google Analytics and other tools show exactly which campaign, email or post sent each visitor. Tag one link or a whole list, or paste a tagged link to read its tags and check them. The tool keeps your link's own parameters and #anchor, lowercases values and tells you which GA4 channel the visits will land in.

Term, content and campaign ID

Type the page address and the tags to build the link.

About the UTM builder & campaign URL parser

UTM tags are short labels added to the end of a link, such as ?utm_source=newsletter&utm_medium=email&utm_campaign=autumn-sale. When someone clicks the link, Google Analytics, Matomo, Plausible, HubSpot and most other analytics tools read the labels and credit the visit to that source and campaign, instead of lumping it in with direct or unknown traffic. This tool builds tagged links one at a time or in bulk, keeps your link's own parameters and #anchor intact, and reads and checks the tags in links you already have.

How to use it

  1. Paste the page address you want people to visit.
  2. Choose a preset such as Newsletter or Google Ads, or type a source, medium and campaign.
  3. Add term, content or campaign ID if you need them, for paid keywords, A/B tests or GA4 cost imports.
  4. Read the checks, including which GA4 channel the visits will be grouped in, then copy the link.
  5. For many links, switch to Many links and paste a list or a CSV with a header row; download the result as CSV.
  6. To check an existing link, switch to Read a link and paste it.

Tip: Write your naming rules down once (lowercase, hyphens, which mediums you use) and share them with everyone who makes links. Consistent tags are what make campaign reports readable a year later.

The five tags (and a sixth)

utm_source
Where the visitor comes from: google, newsletter, facebook, a partner's name. Required.
utm_medium
The kind of traffic: cpc, email, social, paid_social, referral, display, affiliate. GA4 uses it, with the source, to sort visits into channels.
utm_campaign
The campaign or promotion: autumn-sale-2026, product-launch, webinar-oct.
utm_term
For paid search, the keyword. Google Ads fills this in automatically when auto-tagging is on, so you rarely need it.
utm_content
Tells apart two links in the same campaign: header-button and footer-link, or ad-a and ad-b.
utm_id
A campaign ID that GA4 uses to join visits with cost data you import from ad platforms that it doesn't link to directly.

How GA4 groups your tags into channels

Google Analytics 4 sorts every visit into a default channel group using the source and medium. A medium matching cpc, ppc, paid-anything or retargeting is a paid channel: Paid Search when the source is a search engine, Paid Social when it's a social network, otherwise Paid Other. email or e-mail in the source or medium means Email; social, social-network or social-media means Organic Social; display, banner and cpm mean Display; affiliate means Affiliates; referral means Referral.

A medium GA4 doesn't recognise, such as newsletter, qr or offline, puts the visits in Unassigned. They're still recorded with your source and campaign, but they won't appear in the channel reports most people look at. The tool shows the likely channel for every link and warns when it would be Unassigned. The rules here follow Google's published definitions in simplified form; GA4 also uses its own lists of known search, social and video sites.

Tagging many links at once

Paste plain addresses, one per line, and each gets the shared tags. For more control, paste a spreadsheet or CSV with a header row: a url column plus any of source, medium, campaign, term, content and id. Each row's own values win, and empty cells fall back to the shared values. Download the result as a CSV with the original and tagged link side by side, ready to paste into an email tool or ad platform.

Reading and fixing tagged links

Read a link shows every parameter in a tagged address and catches the mistakes that quietly break tracking: tags written in capitals (UTM_Source isn't read), the same tag twice, made-up tags such as utm_foo, mixed case values that split one source into two rows, and tags placed after the #, which analytics never sees. It also points out click IDs such as gclid and fbclid, which ad platforms add automatically and shouldn't be copied into new links. Edit these tags loads the link into the builder so you can fix it.

Tips and tricks

Never tag internal links

UTM tags on links between your own pages start a new session and overwrite the real source. Use them only on links from outside your site.

Lowercase everything

Facebook, facebook and FB become three sources in reports. The builder lowercases by default.

Hyphens, not spaces

Spaces become %20 and look messy. Use hyphens or underscores and stick to one.

Leave auto-tagged ads alone

Google Ads and Microsoft Ads auto-tagging (gclid, msclkid) already credits clicks; adding UTMs is optional and must match.

Shorten for print

For QR codes and printed material, put the tagged link behind a short redirect on your own domain.

Keep a log

Record every campaign link in a spreadsheet: date, channel, tags and where it was used.

Questions

Do UTM tags affect SEO?

No. Search engines ignore them for ranking, and a canonical tag on the page points to the clean address. Just don't use tagged links for internal navigation.

Are UTM tags case-sensitive?

The names must be lowercase (utm_source). The values are case-sensitive in most analytics tools, which is why lowercasing matters.

What's the difference between source and medium?

Source is who sent the visit (newsletter, facebook); medium is how (email, social, cpc). Together they decide the channel.

Can I use UTM tags with a #anchor?

Yes. The tags go before the #, which the builder handles. Tags after the # are never seen by analytics.

Do other analytics tools read UTM tags?

Yes. Matomo, Plausible, Fathom, Adobe Analytics, HubSpot and most email and ad platforms understand them.

Is what I type sent anywhere?

No. The checks and previews run in your browser, on your device. Nothing you type or paste is uploaded, stored or logged.

Related tools

Updated