Free tool/Campaigns & links

UTM builder for links GA4 reports correctly

Build campaign URLs with clean, consistent UTM parameters. See which GA4 channel each link lands in before you send it, catch naming mistakes, and create a whole campaign's links at once.

  • Free, no signup
  • 16 channel presets
  • Live GA4 channel preview
  • Bulk CSV export

Runs in your browser. Nothing is sent or stored.

The page people land on. We add https:// if you leave it out, and keep any existing query string and #anchor.

Start from a preset

Sets source and medium

Campaign parameters

utm_source · Where the click comes from: the site, platform or list.

utm_medium · The type of traffic. GA4 uses it to pick the channel.

utm_campaign · The promotion, launch or email this link belongs to.

Spaces

Your campaign URL

Updates as you type

Enter a destination URL to build your link.

Your page UTM parameters

GA4 will report this as

Add a source and medium to see the default channel group.

Make a QR codeShorten & track clicks
How it works

UTM builder in 3 steps

  1. 1

    Paste your destination

    Any page on your site. Existing query strings and #anchors are kept, and https:// is added if you leave it out.

  2. 2

    Pick a preset or type your own

    Presets fill in a source and medium that GA4 classifies correctly. Add a campaign name and any optional fields.

  3. 3

    Check the channel, then copy

    See the GA4 channel and any warnings as you type. Copy the link, make a QR code, or build a whole campaign in Bulk mode.

What you get

Built to keep your GA4 reports clean

Every link is checked against GA4's default channel rules and common naming mistakes before you use it.

GA4 channel preview

GA4's default channel group rules, run in GA4's order, with the reason each link lands where it does.

Presets for common channels

Newsletter, lifecycle email, Google Ads, Meta, LinkedIn, Reddit, YouTube, Product Hunt, affiliates, podcasts, SMS, push and QR codes.

Naming checks

Flags capital letters, spaces, missing required fields, source and medium clashes, email addresses in URLs and links over 2,000 characters.

Safe URL handling

Keeps existing query parameters, replaces duplicate UTMs instead of adding them twice, and puts UTMs before any #fragment.

Bulk mode

One row per variant, a shared campaign and destination, then copy all links or download a CSV with each link's GA4 channel.

Import and hand off

Paste an existing tagged link to edit it, then turn the result into a QR code or a short link with click counts.

Guide

How to use UTM parameters with GA4

UTM parameters tell your analytics where a visit came from. Without them, a click from your newsletter opened in a desktop email app often shows up as direct traffic, and a link shared in a chat app can arrive with no referrer at all. Five minutes of consistent tagging makes every campaign report trustworthy.

The parameters

  • utm_source: where the click comes from, such as newsletter, google or linkedin. Required.
  • utm_medium: the type of traffic, such as email, cpc or social. Required, and it decides most of GA4's channel rules.
  • utm_campaign: the launch, promotion or email, such as spring_launch. Google's builder asks for a campaign name or a utm_id.
  • utm_term: the paid keyword or audience.
  • utm_content: tells apart links in the same campaign, such as header_button and footer_link.
  • utm_id: a campaign ID, used when you import cost data into GA4.
  • utm_source_platform, utm_creative_format, utm_marketing_tactic: extra detail for ad buyers. GA4 reports the source platform, but not currently the creative format or marketing tactic.

How GA4 turns UTMs into channels

GA4 sorts every session into a default channel group by checking rules in a fixed order. The first rule that matches wins, which is why the order matters: social and search sources are checked before email, so a link with utm_source=linkedin&utm_medium=email is reported as Organic Social, not Email. Campaign names are checked first of all: a campaign containing "shop" or "shopping" is treated as a shopping campaign, and one containing "cross-network" is reported as Cross-network.

utm_mediumGA4 channel
cpc, ppc, paid_social, retargeting, or anything containing "cp" or starting with "paid"Paid Search, Paid Social or Paid Video when the source is a search engine, social network or video site; Paid Shopping for shopping sites or campaigns; otherwise Paid Other
display, banner, expandable, interstitial, cpmDisplay
social, social-network, social-media, smOrganic Social (also any non-paid link from a social site)
anything containing "video"Organic Video (also any non-paid link from a video site)
organicOrganic Search (also any non-paid link from a search engine)
referral, app, linkReferral
email, e-mail, e_mailEmail
affiliateAffiliates
audioAudio
smsSMS
ends with "push", or contains "mobile" or "notification"Mobile Push Notifications
anything elseUnassigned

Some sources are enough on their own. With a medium that isn't paid or display, such as newsletter, source google or bing lands in Organic Search, facebook or linkedin in Organic Social, and youtube in Organic Video. Without a known source, mediums like newsletter, qr, print or partner match nothing and land in Unassigned.

A naming convention that holds up

  1. Lowercase everything. GA4 values are case-sensitive, so Email and email become two rows.
  2. No spaces. Use underscores or hyphens and stick to one.
  3. Stick to standard mediums (email, cpc, paid_social, social, referral, affiliate) so every link lands in a real channel.
  4. Put detail in campaign and content, not in the medium: utm_medium=email&utm_campaign=trial_day_3 rather than utm_medium=trial_email.
  5. Write it down. A shared list of allowed sources and mediums stops the next person from inventing E-mail.

Common mistakes

  • Tagging internal links. A UTM on a link inside your own site replaces the visitor's real source with your internal tag, so the campaign that brought them in loses the credit.
  • Personal data in URLs. Never put an email address or name in a UTM value. Google Analytics forbids it, and URLs end up in server logs.
  • UTMs after the #. Parameters placed after a #fragment aren't part of the query string, so GA4 doesn't read them as UTMs. This builder always puts them before the fragment.
  • Duplicated parameters. Pasting a new tag onto an already-tagged link leaves two utm_source values. The builder replaces the old one.
  • Manual UTMs on Google Ads. With auto-tagging on, GA4 prefers the gclid for Google Ads clicks, so manual UTMs there usually aren't needed.

Once your links are tagged, turn a link into a scannable code with the QR code generator, or shorten it and count clicks with the Atlis link tracker.

FAQ

Frequently asked questions

Can't find your answer? Read the Atlis docs.

What are UTM parameters?

UTM parameters are tags you add to the end of a link, such as ?utm_source=newsletter&utm_medium=email&utm_campaign=spring_launch. When someone clicks, analytics tools like Google Analytics 4 read the tags and credit the visit to that source, medium and campaign instead of lumping it into direct or referral traffic.

Which UTM parameters are required?

Google's campaign URL builder requires utm_source and utm_medium, plus a campaign name or campaign ID. utm_term, utm_content, utm_source_platform, utm_creative_format and utm_marketing_tactic are optional. GA4 doesn't currently report utm_creative_format or utm_marketing_tactic.

How does GA4 decide which channel a UTM link belongs to?

GA4's default channel group runs through a fixed list of rules, and the first rule that matches wins. Most rules look at utm_medium (for example email, cpc, social, referral or affiliate), and some also check whether utm_source is a known search engine, social network, video or shopping site. This builder runs the same rules in the same order and shows the result as you type.

Why is my campaign traffic showing as Unassigned in GA4?

Unassigned means the source and medium didn't match any default channel rule. Common causes are custom mediums such as newsletter, qr, print or partner. Use a standard medium like email, cpc, social, referral or affiliate, or create a custom channel group in GA4 for your own mediums.

Are UTM parameters case-sensitive?

Yes. GA4 treats "Email", "email" and "EMAIL" as three different values, so the same campaign gets split across rows in your reports. Pick one convention, usually all lowercase with underscores or hyphens instead of spaces. The builder lowercases values and replaces spaces for you by default.

Should I use UTM parameters on Google Ads links?

Usually not. With auto-tagging on, Google Ads adds a gclid to every click, and GA4 prefers the gclid over manual UTMs for Google Ads traffic. UTMs are still useful for other ad platforms such as Microsoft Ads, Meta and LinkedIn.

Can I put UTM parameters on internal links?

No. A UTM on a link inside your own site replaces the visitor's real source with your internal tag, so the ad, email or post that actually brought them in loses the credit. Use UTMs only on links that point to your site from somewhere else: emails, ads, social posts, partners and print.

Can I build many UTM links at once?

Yes. Switch to Bulk mode, set a default destination and campaign, then add a row for each source, medium and content variant, or paste a list of destination URLs. Copy every link at once or download them as a CSV with the predicted GA4 channel for each row.

Atlis

Tagged the click? Now keep the user.

Atlis's link tracker gives you short links with click counts, and in the app, Lead Capture → Links creates tracked links for your workspace. Then Atlis watches what each new user does after signup and sends the right lifecycle email automatically: onboarding nudges, re-engagement and churn recovery.

Start free

Free plan · No credit card · 10-minute setup