Search Console vs GA4: Why Your Numbers Don't Match

GSC and GA4 measure different things differently. Learn exactly why clicks never equal sessions, and when to trust which data source.

Harlan WiltonHarlan Wilton
1 min

Google Search Console reports 500 clicks. Google Analytics 4 shows 380 sessions from organic search. Same site, same day, same Google — different numbers. This isn't a bug. GSC and GA4 measure fundamentally different things at different points in the user journey.

Why the Numbers Are Different

What Each Tool Measures

GSC measures search behavior:

  • Impression = your URL appeared in search results (whether seen or not)
  • Click = someone clicked your search result link
  • Position = where you ranked for that query
  • Measurement point: Google's search results page

GA4 measures site behavior:

  • Session = a user visited your site (30-minute window)
  • Event = an action taken on your site
  • User = a unique visitor (cookie-based)
  • Measurement point: your website

A GSC click happens when someone taps your link in Google. A GA4 session happens when your page loads and the tracking script fires. These are two different events with different rules, timing, and failure modes.

Specific Discrepancies Explained

1. GSC Clicks > GA4 Sessions

The most common scenario. Typical gap: 20-40% fewer sessions than clicks.

Causes:

  • Bounce before load. User clicks your result, sees slow loading, hits back. GSC records a click; GA4 never fires because the page didn't fully load.
  • GA4 blocked. Ad blockers, privacy browsers (Brave, Firefox with Enhanced Tracking Protection), and corporate firewalls block Google Analytics. GA4 can miss 15-30% of visits depending on your audience.
  • JavaScript disabled. GA4 requires JavaScript. GSC counts the click regardless.
  • Bot clicks. GSC filters most bot traffic, but some slips through. GA4 has its own bot detection with different thresholds.

2. GA4 Sessions > GSC Clicks

Less common, but it happens.

Causes:

  • Multiple sessions from one click. User clicks your result, browses, leaves, comes back within 30 minutes (new session) or via a bookmark. GA4 counts multiple sessions; GSC counted one click.
  • Redirects. If your search result URL redirects to another URL, GSC may attribute the click differently than GA4 attributes the landing.
  • Google Discover / Google News. These generate sessions that GA4 categorizes as "organic" but don't appear in GSC's Search Performance report (which only covers web search by default).

3. Date Attribution Mismatch

GSC attributes data to the date the search happened (in the user's local timezone, then normalized to Pacific Time). GA4 attributes data to the date the session started (in your property's timezone).

A click at 11:55 PM Pacific on March 1st that leads to a session starting at 12:01 AM on March 2nd shows up on different dates in each tool. Over a monthly aggregate this washes out, but daily comparisons will never align perfectly.

4. Query Data: 46% Hidden

GSC filters "rare queries" for privacy. Google doesn't show queries with very few impressions or those it considers personally identifiable. Patrick Stox at Ahrefs found that 46% of total clicks are attributed to these hidden terms.

GA4 has no equivalent — it shows all sessions regardless of how rare the search query was. But GA4 doesn't know the query at all (Google stopped passing query strings to Analytics years ago via (not provided)).

Result: GSC knows the query but hides many. GA4 sees all the traffic but knows almost no queries. Neither gives you the complete picture.

5. Sampling Differences

Both tools sample at scale, but differently:

  • GSC: Samples when data exceeds internal row limits. Large sites lose ~66% of impression detail data. Aggregate totals (total clicks) are accurate; row-level breakdowns are sampled.
  • GA4: Uses thresholding (hides rows that could identify individuals) and samples reports when data exceeds processing limits. Free GA4 samples more aggressively than GA4 360.

Comparing two sampled datasets amplifies discrepancies.

When to Trust Which Source

Trust GSC for:

  • Search rankings and position tracking — GA4 has no ranking data
  • Impression data — How often you appear in search, even without clicks
  • Click-through rate — True CTR from search results
  • Query-level analysis — What people searched before clicking (despite the 46% hidden caveat)
  • Technical SEO — Indexing status, crawl issues, Core Web Vitals

Trust GA4 for:

  • On-site behavior — What users do after arriving (pageviews, scroll depth, events)
  • Conversion tracking — Purchases, signups, form submissions
  • Cross-channel comparison — Organic vs paid vs social vs direct
  • User-level analysis — Returning visitors, cohorts, user journeys
  • Revenue attribution — GA4 connects sessions to transactions

Use Both Together for:

  • Content performance: GSC tells you which queries drive traffic; GA4 tells you which pages convert. A page with high GSC clicks but low GA4 engagement signals a content-intent mismatch.
  • Keyword-to-conversion mapping: GSC query → landing page → GA4 conversion event. This is the most complete organic search funnel you can build.
  • Diagnosing traffic drops: GSC shows if you lost rankings (position change) or visibility (impression drop). GA4 shows if users changed behavior (lower engagement) or if tracking broke (sudden session drop with no GSC change).

How to Reconcile the Two

You can't make the numbers match exactly, but you can minimize confusion:

  1. Compare the same date ranges. Use the same start/end dates in both tools. Account for GSC's 2-3 day data delay — don't include the last 3 days in comparisons.
  2. Use GSC's "clicks" vs GA4's "sessions" with landing page dimension. Filter GA4 to only "Organic Search" sessions and add the landing page dimension. This gets you closest to an apples-to-apples comparison.
  3. Accept 20-40% variance as normal. If GA4 shows 20-40% fewer sessions than GSC shows clicks, your tracking is working correctly. Investigate only if the gap exceeds 50% or changes suddenly.
  4. Check GA4 tracking coverage. If the gap is large, check if GA4 is installed on all pages. Missing tracking on mobile pages, AMP versions, or specific subdomains is a common cause.
  5. Archive both. GSC data disappears after 16 months. GA4 data retention is configurable (2 or 14 months for free). Use gscdump for GSC and BigQuery export for GA4 to preserve both datasets long-term.

FAQ

Why does GSC show more clicks than GA4 shows sessions?

Ad blockers, page load failures, and JavaScript-disabled browsers all prevent GA4 from firing while GSC still records the click. A 20-40% gap is normal and expected.

Should I use GSC or GA4 for reporting organic traffic?

Use GSC for search-specific metrics (rankings, impressions, CTR) and GA4 for business metrics (conversions, revenue, engagement). Report both — they answer different questions.

Why does GSC show "(not set)" for some pages?

GSC shows "(not set)" when it can't determine the landing page, typically due to redirects or URL canonicalization. GA4 shows "(not set)" when the landing page dimension isn't available for a session. Different causes, same label.

Can I connect GSC and GA4 data?

Yes. In GA4, go to Admin → Search Console Links to connect the two properties. This adds GSC data (queries, impressions, clicks) as a report within GA4's interface. However, this linked view is still subject to both tools' sampling and filtering — it doesn't solve the discrepancy, just puts both datasets in one UI.

Do other analytics tools match GSC better?

No analytics tool will match GSC exactly because the fundamental measurement difference (search-side vs site-side) applies regardless of which analytics platform you use. Plausible, Fathom, and Matomo will all show different numbers than GSC for the same reasons GA4 does.

gscdump
© 2026 GSCDUMP.COM - BUILT FOR DEVELOPERS