Integrity Monitor

Find and fix data leakage in your tracking pipeline

The Problem: You're Paying for Ghost Traffic

You spend $1,000 on Google Ads. Google says you got 500 clicks. But GA4 only shows 350 sessions.

Where did the other 150 people go?

Common causes of data leakage:

1. GCLID Stripped — Your URL rewriter or redirect chain removes the gclid parameter, breaking click-to-session attribution

2. Slow Page Load — Users bounce before the GA4 tag fires (counted as a paid click, but never becomes a session)

3. Ad Blockers — 15-25% of users block Google Analytics tags entirely

4. Broken Redirects — Landing page redirects to a different domain, losing the referral chain and GCLID

5. Missing Tag — GA4 tag not installed on the landing page (happens more often than you'd think)

The Integrity Monitor visualizes this signal chain and tells you exactly where the leak is occurring.

The Signal Chain Visualizer

The dashboard shows 3 nodes connected by links:

Node A: Traffic Source (Ad Clicks)

Total clicks you paid for in Google Ads. Data source: Google Ads API.

Link A→B: Click-to-Session Match Rate

Percentage of ad clicks that successfully became GA4 sessions.

Formula: (GA4 Sessions from Google Ads / Google Ads Clicks) × 100%

Healthy: above 85%. Warning: 70-85%. Critical: below 70%.

Low match rate means: Users clicked but bounced before GA4 loaded, GCLID was stripped from URL, landing page is too slow, or ad blockers prevented tracking.

Node B: Destination (GA4 Sessions)

Total sessions attributed to Google Ads traffic in GA4 (where source=google and medium=cpc).

Link B→C: Session-to-Conversion Rate

Percentage of GA4 sessions that resulted in a tracked conversion. This isn't a data leak metric — it's your actual conversion rate. Industry benchmarks: 2-5% for e-commerce, 10-20% for high-intent B2B.

Node C: Measurement (Conversions Tracked)

Total conversions recorded in GA4 and imported into Google Ads.

The monitor also checks for import leakage — comparing GA4 conversions to Google Ads conversions. If GA4 shows 41 but Google Ads shows 35, there's a gap in the import pipeline.

The Repair Console

When the Integrity Monitor detects a leak, the Repair Console provides actionable fixes:

Fix 1: Enable Auto-Tagging (For GCLID Issues)

Use when the A→B match rate is below 85% or GCLID Pass Rate diagnostic shows below 90%.

What it does: Forces Google Ads to append gclid=xyz to all ad URLs via API call. This fixes roughly 80% of attribution breaks.

Note: If you're using a URL rewriter or redirect chain, auto-tagging might still get stripped downstream. Check your redirect setup if the issue persists.

Fix 2: Re-Link GA4 to Google Ads (For Import Issues)

Use when conversions appear in GA4 but NOT in Google Ads.

What it does: Re-establishes the data sharing connection between GA4 and Google Ads via API.

Fix 3: Manual Pipeline Verification

Use when you're unsure where the leak is occurring.

What it does: Opens a diagnostic checklist to manually verify each stage — click registered, GCLID present in URL, GA4 session created, conversion event fired, conversion imported to Google Ads. Follow each step to identify exactly where the chain breaks.

Fix 4: Verify Tag Installation (For Critical A→B Leaks)

Use when the A→B match rate is below 70%.

What it does: Opens Google Tag Assistant to check whether the GA4 tag is present on your landing page, firing correctly, and sending the expected events.

Common Leak Patterns & Diagnoses

Pattern 1: High Clicks, Low Sessions (A→B Leak)

Symptoms: 1,000 clicks, 600 sessions, 60% match rate (Critical).

Most likely causes: GCLID stripped (70% probability) → Enable auto-tagging. Page load exceeds 5 seconds (20%) → Optimize landing page speed. Ad blockers (10%) → Accept as baseline loss.

How to confirm: Run Manual Pipeline Verification. If GCLID is missing from the landing page URL, that's your culprit.

Pattern 2: Sessions Match Clicks, But Zero Conversions (B→C Leak)

Symptoms: 900 sessions, 0 conversions.

Most likely causes: Conversion event not firing on your site (60%) → Check GA4 event configuration. Conversion action not imported to Google Ads (30%) → Use Conversion Architect. Event name mismatch (10%) → Verify event names are case-sensitive matches.

Pattern 3: GA4 Shows Conversions, Google Ads Doesn't (Import Leak)

Symptoms: 50 conversions in GA4, 0 in Google Ads.

Most likely causes: GA4 not linked to Google Ads (80%) → Click 'Re-Link' in Repair Console. Conversion action deleted in Ads (15%) → Re-import via Conversion Architect. Permissions revoked (5%) → Re-authorize in Pulse Center.

Pattern 4: Match Rate Was Good, Suddenly Dropped

Symptoms: 88% last week, 62% this week, no campaign changes.

Most likely causes: Website update broke GA4 tag (50%) → Developer changed landing page code. New redirect added (30%) → URL rewriter stripping GCLID. Cookie consent tool updated (20%) → New GDPR banner blocking GA4.

What's an Acceptable Data Loss Rate?

No tracking system achieves 100% accuracy. Here's what's normal vs. problematic:

Click-to-Session Match Rate (A→B):

85-95%: Excellent (industry standard)

75-85%: Acceptable (some natural loss from ad blockers and fast bounces)

Below 75%: Problematic (investigate GCLID stripping or page speed)

Why not 100%? 5-10% of users have ad blockers that prevent GA4 from loading. 3-5% bounce in under 1 second (counted as click, but GA4 doesn't fire). 2-3% of mobile users lose connection mid-load.

Conversion Import Match (GA4 vs. Ads):

95-100%: Perfect sync

90-95%: Minor import delay (conversions take 24-48 hours to flow from GA4 to Ads)

Below 90%: Import broken (check GA4 link in Repair Console)

When to Investigate vs. When to Accept

Investigate Immediately If:

Match rate drops more than 10 percentage points in one week (something broke)

GCLID pass rate falls below 90% (attribution failing)

GA4 shows conversions but Google Ads shows zero (import pipeline is dead)

Manual Pipeline Verification fails at any step

Accept as Baseline Loss If:

Match rate is 85-90% and stable week-over-week (ad blockers and natural bounces)

Mobile match rate is 5-10% lower than desktop (expected behavior)

Display campaigns have lower match than Search (more accidental clicks and bot traffic)

Quick Decision Framework:

Check the 7-day trend in the Integrity Monitor

If stable (e.g., consistently around 83%), that's your baseline — accept it

If sudden drop (e.g., 88% → 71% overnight), something broke — investigate

If gradual decline (e.g., 90% → 85% → 80% over weeks), your site is slowing down — optimize page speed

Technical FAQ

Q: Why is my click-to-session match rate only 80%?

80% is on the lower end of acceptable. A 5-10% loss from ad blockers and fast bounces is normal, but 20% total loss suggests GCLID stripping or slow page load. Use the Repair Console to enable auto-tagging and run the Manual Pipeline Verification to pinpoint the issue.

Q: GA4 shows 50 conversions but Google Ads shows 45. Is tracking broken?

Not necessarily. Conversions can take 24-48 hours to import from GA4 to Ads. If the discrepancy persists for more than 3 days, check the GA4 → Ads link status in the Repair Console.

Q: What's GCLID and why does it matter?

GCLID (Google Click ID) is a unique parameter appended to your ad URLs (e.g., ?gclid=xyz123). It's how GA4 knows which specific ad click led to a session. If GCLID gets stripped by redirects or URL rewriters, click-to-session attribution breaks completely.

Q: My session-to-conversion rate is 0.8%. Is my tracking broken?

Not a tracking issue — that's your actual conversion rate. For Display campaigns, 0.5-2% is normal. If you're running Search campaigns with high-intent keywords, below 2% suggests a landing page or offer problem rather than a tracking problem.

Q: Can I fix ad blocker data loss?

No. 10-15% of users actively block Google Analytics. This is permanent, unrecoverable loss. The best strategy is ensuring the other 85-90% are tracked correctly via auto-tagging, fast page load, and proper tag installation.

Q: Why did my match rate suddenly drop from 90% to 60%?

Something broke recently. Common causes: (1) Website redesign removed the GA4 tag, (2) New redirect chain strips GCLID, (3) Cookie consent tool was updated and now blocks GA4. Check 'Last Sync Time' in the Pulse Center to identify the approximate time window when the break occurred.

Q: How often should I check the Integrity Monitor?

Weekly for stable accounts. Daily if you just launched new campaigns or changed landing pages. The system auto-alerts you if match rate drops more than 10 percentage points within 24 hours.

Q: What's the Manual Pipeline Verification feature?

It's a step-by-step diagnostic checklist that walks you through verifying each stage of the tracking pipeline. You check if clicks are registering, GCLID is present in the URL, GA4 sessions are created, conversion events fire, and conversions import to Google Ads. This helps you identify the exact point where the chain breaks.

Integrity Monitor | ClickCatalyst