What This Rule Detects
Browsers NEVER send URL fragments (anything after #) to servers. When # appears before ?, all UTM parameters are completely invisible to GA4. This causes 100% tracking failure.
🔍 Want to scan for this issue automatically?
UTMGuard checks for this and 39 other validation rules in 60 seconds.
Try Free AuditWhy It Matters
Business Impact:
- 100% attribution loss for affected traffic
- Campaigns show as Direct traffic
- Impossible to measure ROI
- Ad spend attribution fails completely
Technical Impact:
- Browser behavior: Only sends URL up to # character
- GA4 receives:
example.com/page#(query string stripped) - Result: Zero UTM data captured
Common Scenarios
Scenario 1: Single Page Apps (SPA)
Many React/Vue apps use hash routing:
Scenario 2: Anchor Links with UTMs
Marketing emails with jump links:
Scenario 3: Accidental Hash Placement
Copy-paste errors or CMS issues:
😰 Is this your only tracking issue?
This is just 1 of 40+ ways UTM tracking breaks. Most marketing teams have 8-12 critical issues they don't know about.
• 94% of sites have UTM errors
• Average: $8,400/month in wasted ad spend
• Fix time: 15 minutes with our report
✓ Connects directly to GA4 (read-only, secure)
✓ Scans 90 days of data in 2 minutes
✓ Prioritizes issues by revenue impact
✓ Shows exact sessions affected
How to Fix
Step 1: Identify Affected URLs
-
Check your campaign URLs in:
- Email templates
- Social media posts
- Ad platforms
- QR codes / printed materials
-
Search for pattern:
#before?
Step 2: Reorder URL Structure
Correct Order: domain + path + ? query + # fragment
Step 3: Verify in GA4
- GA4 → Reports → Acquisition → Traffic acquisition
- Check if campaigns now appear
- Verify Source/Medium attribution
Examples
❌ Incorrect Examples
https://example.com#top?utm_source=facebook&utm_medium=cpc
Result: GA4 sees only https://example.com#top
Tracking: FAILS (100% data loss)
✅ Correct Examples
https://example.com?utm_source=facebook&utm_medium=cpc#top
Result: GA4 receives all UTM parameters
Tracking: SUCCESS (attributed to Facebook CPC)
GA4 Impact Analysis
Channel Grouping:
- Affected traffic: Appears as "Direct" channel
- Lost attribution: 100% of sessions with this pattern
Session Attribution:
- First-click: Lost (defaults to Direct)
- Last-click: Lost
- Multi-touch: Missing from attribution path
✅ Fixed this issue? Great! Now check the other 39...
You just fixed one tracking issue. But are your Google Ads doubling sessions? Is Facebook attribution broken? Are internal links overwriting campaigns?
• Connects to GA4 (read-only, OAuth secured)
• Scans 90 days of traffic in 2 minutes
• Prioritizes by revenue impact
• Free forever for monthly audits
Join 2,847 marketers fixing their tracking daily
Related Validation Rules
Related Validation Rules
External Resources
fragment_before_query