UTM naming conventions that keep GA4 clean
Create consistent UTMs that support GA4 channels and cost imports. Includes an allowed-values registry, CSV template, Python URL builder and launch checklist.
Jafrin Akter AloLast updated 10 min read
Build one tagged campaign link, or hundreds from a spreadsheet. Each link is checked against naming rules, and you see the GA4 channel it should land in before you publish.
Your tagged link
https://www.example.com/pricing?utm_source=acme_weekly&utm_medium=email&utm_campaign=2026_11_pipeline_webinar&utm_id=cmp_2026_311&utm_content=hero_buttonOther parameters and any #section stay in place.
Who sent the visit: the platform, publication or partner.
How it was sent: email, paid_social, cpc, referral.
The initiative, as yyyy_mm_initiative.
The ID cost joins on, like cmp_2026_311.
Which link or ad, like hero_button.
The paid keyword.
Sample shown. Type over it with yours.
Off checks the basics only.
No problems found.
Runs in your browser with no sign-up. What you type stays on this page, and we only record that the tool was used. A copied link carries your values after the #, so share it only with people you’d show them to.
UTM parameters are tags on a link that tell analytics where a visit came from. Google says to always use utm_source, utm_medium and utm_campaign, and strongly recommends utm_id and utm_source_platform. Values are case sensitive, so Google and google count as two different sources. You can add them in any order.
| Parameter | Example |
|---|---|
| utm_sourceReferrer. Google Analytics Help | |
| utm_mediumMarketing medium. Google Analytics Help | cpc |
| utm_campaignProduct, slogan or promo code. Google Analytics Help | spring_sale |
| utm_idCampaign ID. Google Analytics Help | cmp_2026_311 |
| utm_contentTells creatives apart. Google Analytics Help | hero_button |
| utm_termPaid keyword. Google Analytics Help | crm_audit |
| utm_source_platformThe platform directing the traffic. Google Analytics Help | dv360 |
| utm_creative_formatNot reported in GA4 yet. Google Analytics Help | native |
| utm_marketing_tacticNot reported in GA4 yet. Google Analytics Help | prospecting |
Examples for utm_id, utm_content, utm_term and utm_source_platform are ours. The descriptions are Google’s.
Values use lowercase a-z, 0-9 and underscores, and utm_campaign reads yyyy_mm_initiative, up to 60 characters. It flags emails, phone numbers, stray macros and values like li or newsletter that land in the wrong GA4 channel. The rules come from our free campaign naming convention skill.
GA4 sorts each visit by source and medium rules. A paid medium with a source off Google’s lists lands in Paid Other. A pair no rule covers, like qr as a medium, lands in Unassigned. This tool runs your pair through those rules and shows the result before launch.
Usually not. Google says GA4 puts auto-tagging ahead of manual tags, with no override, so keep it on. Add manual UTMs only when a CRM or form tool needs readable values, and use the full set, so clicks without a usable click ID still read correctly.
utm_id is the campaign ID. Google asks you to use the same ID you use when uploading campaign data, which is how cost joins to sessions. Use the ad platform’s campaign ID by macro on paid links, and a registry ID like cmp_2026_311 on email and partner links.
GA4 stops at 1,000 characters for page_location, counted on the encoded URL. This tool warns from 800, because click IDs and consent parameters get added at click time. Keep values short, and drop anything from the landing page URL that the page doesn’t need.
No. Use UTMs only on links that bring people in from somewhere else. Tagging your own banners and menus replaces the real source, so the campaign that brought the visitor loses the credit. Track clicks inside your site as events, and keep UTMs off any URL that gets indexed or reshared.
Open Bulk links and paste rows from a spreadsheet, with url, utm_source, utm_medium and utm_campaign as the header. Columns can sit in any order. Each row gets its own checks, repeated links are flagged, and the CSV download adds the tagged link and predicted channel beside your columns.
Clean links only pay off when the tracking behind them works. Our GA4 consulting sorts that out at a fixed price.
Paste this where you want it. It stays free and sends no tracking from your site.
<iframe src="https://www.martechdevs.com/embed/utm-builder" title="UTM builder" width="100%" height="1060" style="border:0;max-width:760px" loading="lazy"></iframe>
<p style="font-size:13px">Free tool by <a href="https://www.martechdevs.com/tools/utm-builder">martechdevs</a></p>Last updated
Create consistent UTMs that support GA4 channels and cost imports. Includes an allowed-values registry, CSV template, Python URL builder and launch checklist.
Jafrin Akter AloLast updated 10 min read
GA4 shows Unassigned when no channel rule matches a session. Find the cause in source and medium, tag order, consent or server events, then fix it.
Jafrin Akter AloLast updated 14 min read
Diagnose GA4 missing values by dimension. Check consent, page views, Ads links and custom parameters, then verify the fix with the right denominator.
Jafrin Akter AloLast updated 11 min read
Want it set up for you? See implementation plans or book a free call.