Table of Contents
- How UTM Errors Affect Campaign Decisions
- 15 UTM Mistakes to Check in Your GA4 Setup
- 1. Tagging Internal Website Links with UTMs
- 2. Inconsistent Letter Casing (CPC vs cpc)
- 3. Inventing Non-Standard utm_medium Values
- 4. Allowing 301/302 Redirects to Strip Query Strings
- 5. Using Spaces and Raw Special Characters
- 6. Placing UTM Parameters After the URL Hash (#)
- 7. Swapping utm_source and utm_medium
- 8. Hardcoding Static Values in Dynamic Ad Templates
- 9. Overwriting Auto-Tagging Without Alignment
- 10. Using Cryptic, Undocumented Campaign Names
- 11. Leaving Non-Paid Touchpoints Unmonitored
- 12. Mixing Delimiters (Underscores, Hyphens & Pluses)
- 13. Passing PII in UTM Parameter Strings
- 14. Confusing First User vs Session Scopes in GA4
- 15. Launching Paid Campaigns Without Pre-Flight QA
- Automated Link Auditing with the UTMCraft Checker
- Frequently Asked Questions
Missing or inconsistent UTMs can make GA4 campaign reports harder to read. Check how you name links, whether redirects retain the parameters and what data reaches the landing page. These 15 mistakes are useful places to start.
How UTM Errors Affect Campaign Decisions
Tracking errors can affect decisions in several ways:
- Missing Campaign Credit: A campaign may receive less credit when its source information is missing or incorrect.
- Budget Decisions: A low reported return can lead a team to pause an ad before checking whether tracking explains the result.
- Reporting Disagreements: Differences between ad platform, GA4 and CRM figures are harder to explain when campaign tags are inconsistent.
15 UTM Mistakes to Check in Your GA4 Setup
1. Tagging Internal Website Links with UTMs
Suppose a visitor arrives from a Google Search ad, then clicks a homepage banner tagged with ?utm_source=internal_banner. That internal tag adds campaign information to later activity. The behavior differs between Analytics versions:
- In Universal Analytics, a campaign-source change could start a new session.
- In GA4, a new campaign value does not start a new session. Values collected mid-session can be associated with those events, making event-level campaign reporting harder to interpret.
Use internal event tracking (e.g. custom GA4 events like banner_click with event parameters like promotion_name) instead of UTM parameters for on-site navigation.
2. Inconsistent Letter Casing (CPC vs cpc)
GA4 default channel definitions are not case-sensitive. However, differently capitalized manual source values such as Facebook and facebook can appear as separate values in reports. Choose a consistent convention, such as lowercase, to make those reports easier to compare.
| Tagged Parameter | GA4 Classification | Impact |
|---|---|---|
utm_source=google&utm_medium=cpc | Review the applicable Paid Search rule | Classification depends on available traffic-source data |
utm_medium=CPC | Channel definitions are not case-sensitive | Use consistent casing to keep naming orderly |
utm_source=Google | Splits from google | Fragmented reporting rows |
3. Inventing Non-Standard utm_medium Values
GA4 applies its current Default Channel Group definitions to available traffic-source information. A custom medium such as promoted-post or influencers may not match a default channel by itself; the result depends on the other available values and the applicable rule. If you need a custom classification, create a Custom Channel Group in GA4 Admin.
Always verify your medium against our GA4 Default Channel Grouping guide. If you need custom classifications, either conform to standard mediums (e.g., cpc, paid_social, email, affiliate) or build Custom Channel Groups in GA4 Admin.
4. Allowing 301/302 Redirects to Strip Query Strings
A marketer promotes https://example.com/summer-sale?utm_source=meta..., but the web server redirects to https://example.com/summer-sale/ or changes HTTP to HTTPS. Depending on the redirect rule, the query string may or may not be preserved. If campaign parameters are lost and no usable referrer or other campaign information remains, GA4 may classify the session as Direct or otherwise lack the expected campaign attribution. Test the complete redirect chain to confirm what reaches the landing page.
Use the UTM Checker for URL syntax and parameter checks, then test redirects separately in a browser or network inspector. Confirm that the final destination and analytics tag receive the expected query parameters.
5. Using Spaces and Raw Special Characters
Use a consistent naming convention and encode values correctly. A correctly decoded %20 or + can represent a space; encoding alone does not inherently create a different campaign. Double encoding, literal encoded text and inconsistent names can cause differences. Build URLs with a URL library rather than concatenating unescaped values.
❌ Broken: ?utm_campaign=Spring Sale 2026!
✅ Fixed: ?utm_campaign=spring-sale-2026
6. Placing UTM Parameters After the URL Hash (#)
Web browsers and web servers treat the hash character (#) as a client-side fragment identifier. Modern Single Page Applications (SPAs) that place parameters after the hash prevent servers and analytics scripts from capturing standard query parameters:
❌ Broken: https://example.com/#/pricing?utm_source=newsletter
✅ Fixed: https://example.com/?utm_source=newsletter#/pricing
7. Swapping utm_source and utm_medium
Use source for the origin and medium for the channel. Swapping them makes the labels hard to interpret and may affect channel classification. For example, utm_source=google&utm_medium=cpc describes a different convention from utm_source=cpc&utm_medium=google.
8. Hardcoding Static Values in Dynamic Ad Templates
In Meta and Google Ads, media buyers frequently copy and paste URLs with hardcoded ad IDs or campaign names across ad sets. As campaigns scale, ads in "Ad Set B" report traffic under "Ad Set A" because the UTM string was never parameterized with dynamic tokens like {{adset.name}} or {campaignid}.
9. Overwriting Auto-Tagging Without Alignment
Keep auto-tagging enabled for a linked Google Ads account. Manual UTMs can provide readable labels for CRM records; compare the appropriate manual and cross-channel dimensions rather than assuming they must match. See how auto-tagging and UTMs work together and Google’s traffic-source documentation. The manual override checkbox described in older Universal Analytics instructions is not a GA4 setup step.
10. Using Cryptic, Undocumented Campaign Names
Naming campaigns camp_01_v2_final makes reporting impossible 6 months later. Establish a repeatable taxonomy: [region]-[objective]-[theme]-[year] (e.g., us-lead-ebook-2026). Read our UTM Naming Conventions Guide to implement an organizational standard.
11. Leaving Non-Paid Touchpoints Unmonitored
Organic social bio links, customer support email signatures, press releases, partner webinars, and offline QR codes account for massive traffic volume. If untagged, they land as generic Direct or Referral, masking your true organic reach.
12. Mixing Delimiters (Underscores, Hyphens & Pluses)
When team member A uses hyphens (q1-promo) and team member B uses underscores (q1_promo), GA4 isolates them into distinct reporting rows, doubling your manual aggregation workload in Looker Studio.
13. Passing PII in UTM Parameter Strings
Do not pass personally identifiable information (PII), such as an email address or phone number, in UTM values. Google’s Analytics policies prohibit sending PII to Analytics. Keep campaign parameters limited to non-identifying campaign information.
14. Confusing First User vs Session Scopes in GA4
First user dimensions describe initial acquisition; session dimensions describe session-level acquisition. They answer different questions and depend on available identity and collection. Choose the scope that matches the report rather than expecting the values to agree.
15. Launching Paid Campaigns Without Pre-Flight QA
Before launch, test that campaign parameters reach the landing page and that your analytics implementation receives the expected data. Our Pre-Launch UTM QA Checklist provides steps for reviewing a campaign link before it is used.
Automated Link Auditing with the UTMCraft Checker
Instead of manually inspecting long URL query strings, run your links through the UTMCraft UTM Checker. It checks URL syntax, selected parameter presence, casing consistency, spaces, and a limited set of medium patterns. It does not inspect your live redirects, analytics implementation, or guarantee GA4 channel assignment.
Frequently Asked Questions
Which UTM problems should I investigate first?
Start by checking whether internal links carry UTMs, whether campaign parameters survive redirects, and whether source/medium values match your intended conventions. Internal UTM tagging can change the campaign context reported for subsequent activity, so use event parameters for on-site navigation instead.
Why does my campaign traffic show up as (Unassigned) in GA4?
GA4 uses Unassigned when the available traffic-source information does not meet an applicable Default Channel Group definition. Missing or unexpected source, medium, campaign, or platform values can contribute. Channel definitions are not case-sensitive; check the current rule and the data collected for the session.
Are UTM parameters case-sensitive in GA4?
GA4 default channel definitions are not case-sensitive. Differently capitalized manual values can still appear as distinct values in reports, so using a consistent convention such as lowercase can make reporting easier to read.
Choose a focused guide
Use these guides when you need to investigate a specific part of this topic.
- 7 UTM Naming Mistakes Marketing Teams Keep Making
Review 7 UTM naming mistakes that can fragment campaign reports and make GA4 campaign analysis harder, with ways to improve consistency.
- 5 utm_source Mistakes That Break Attribution in GA4
Check five utm_source mistakes that make GA4 reports harder to compare, including inconsistent platform names and values in the wrong field.
- 5 utm_medium Mistakes That Send Traffic to the Wrong GA4 Channel
Learn how GA4 uses source and medium information for Default Channel Grouping, and what to review when traffic appears as Unassigned.
- 10 Facebook Ads UTM Mistakes to Avoid in Meta Campaigns
Review 10 Facebook and Meta Ads UTM mistakes that can affect paid social reporting in GA4, with steps for checking campaign tags and attribution.
- 7 Google Ads Tracking Mistakes That Cause Bad Attribution
Review 7 Google Ads tracking errors, ValueTrack syntax mistakes, and auto-tagging conflicts that can affect GA4 reporting.
- 6 LinkedIn UTM Mistakes That Make Campaign Reporting Messy
Check six LinkedIn UTM mistakes involving dynamic tokens, Sponsored Content and Message Ads. Review the final URL and the data GA4 receives.
- 8 Email UTM Mistakes That Create Direct or Unassigned Traffic
Prevent email campaigns from showing as Direct or Unassigned in GA4. Fix click-tracking redirect drops, non-standard mediums, and security bot skew.
- 5 QR Code Tracking Mistakes to Avoid in Print & Offline Campaigns
Review 5 QR code tracking mistakes that can affect campaign reporting, including scanning issues and redirect behavior, with steps for checking attribution.
- 7 UTM Mistakes Agencies Make Across Client Accounts
Review seven UTM mistakes agencies make across client accounts. Set shared naming rules, save client presets and check links before launch.
- 5 UTM Mistakes SaaS Companies Make in Lead Generation
Check five UTM tracking problems in SaaS lead generation, including missing form fields, subdomain transitions and overwritten campaign values.
- 6 Ecommerce UTM Mistakes That Make Revenue Attribution Harder
Check six ecommerce UTM problems involving checkout, internal promotions and affiliate links. Review campaign data before comparing revenue.
- 5 Redirect Mistakes That Strip UTM Parameters and GCLIDs
Learn how 301 redirects, HTTP-to-HTTPS hops, and trailing-slash rules can affect campaign parameters, and how to test that links arrive intact.
- 7 Campaign Naming Mistakes That Fragment GA4 Reports
Stop fragmenting campaign reporting across dozens of duplicate rows. Learn the 7 campaign naming mistakes to avoid and how to design durable taxonomies.
- 5 UTM Mistakes to Fix Before Launching a Paid Campaign
Check tracking before your paid campaign starts. Use this five-step review to test the landing URL, campaign values and analytics collection.
- 10 Signs Your UTM Tracking System Needs an Immediate Audit
Review ten signs that campaign tracking needs attention, including unexpected Direct traffic, inconsistent names and missing CRM source fields.
- ChatGPT Ads UTM Tracking: 7 Setups and Mistakes to Get Right
Tag ChatGPT ads so GA4 separates paid clicks from organic ChatGPT referrals. Covers source and medium values, OpenAI macros, redirects and reconciliation.
- 10 UTM Tracking Mistakes That Can Wreck Your Black Friday 2026 Data
Avoid the BFCM 2026 UTM mistakes that split campaigns, send SMS and push to Unassigned, or lose tags in redirects. Includes a naming table and timeline.
- 9 Demand Gen Tracking Mistakes to Fix Before Google Display Campaigns Migrate
Google is moving Display campaigns into Demand Gen. Nine tracking mistakes that break UTMs, GA4 channels and cost reporting during the migration, and how to fix each one.
References
- Google Analytics 4 Default Channel Grouping Rules (Google Support)
- GA4 URL builders: UTM best practices (Google Support)
- RFC 3986: Uniform Resource Identifier (URI) Generic Syntax (IETF)