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 mediumCampaign 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.
Your campaign URL
Updates as you type
Enter a destination URL to build your link.
GA4 will report this as
Add a source and medium to see the default channel group.
UTM builder in 3 steps
- 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
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
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.
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.
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 asnewsletter,googleorlinkedin. Required.utm_medium: the type of traffic, such asemail,cpcorsocial. Required, and it decides most of GA4's channel rules.utm_campaign: the launch, promotion or email, such asspring_launch. Google's builder asks for a campaign name or autm_id.utm_term: the paid keyword or audience.utm_content: tells apart links in the same campaign, such asheader_buttonandfooter_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_medium | GA4 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, cpm | Display |
| social, social-network, social-media, sm | Organic Social (also any non-paid link from a social site) |
| anything containing "video" | Organic Video (also any non-paid link from a video site) |
| organic | Organic Search (also any non-paid link from a search engine) |
| referral, app, link | Referral |
| email, e-mail, e_mail | |
| affiliate | Affiliates |
| audio | Audio |
| sms | SMS |
| ends with "push", or contains "mobile" or "notification" | Mobile Push Notifications |
| anything else | Unassigned |
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
- Lowercase everything. GA4 values are case-sensitive, so
Emailandemailbecome two rows. - No spaces. Use underscores or hyphens and stick to one.
- Stick to standard mediums (
email,cpc,paid_social,social,referral,affiliate) so every link lands in a real channel. - Put detail in campaign and content, not in the medium:
utm_medium=email&utm_campaign=trial_day_3rather thanutm_medium=trial_email. - 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
#fragmentaren'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_sourcevalues. 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.
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.
Keep going
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.
Free plan · No credit card · 10-minute setup