Skip to content
Back to blog
GA4Jul 10, 2026 · Ludde Nyström · 14 min read

Google Ads vs GA4 Conversions Don't Match: Every Reason, In Order.

Why Google Ads and GA4 conversions don't match: conversion timing, attribution models, double-counting, and consent modeling, ranked by impact.

Google Ads vs GA4 Conversions Don't Match: Every Reason, In Order

Google Ads and GA4 almost never report the exact same conversion count, and in a correctly configured account that's expected, not broken. The two platforms compute attribution independently, log a conversion against a different date (Google Ads at the ad-click date, GA4 at the date the conversion actually happened), and count entirely different sets of conversions — view-through, cross-device, and consent-modeled conversions all work differently in each system. A gap somewhere in the rough range of 10-30% is common enough that it isn't, by itself, evidence of anything wrong; what deserves an afternoon of investigation is a gap that's much bigger than that, one that flips direction for no reason, or one that showed up suddenly right after you changed something.

This post walks through every reason the two numbers diverge, in the order they're worth checking, then gives you a reconciliation checklist and a straight answer to "which number do I actually trust."

First, Make Sure You're Comparing the Same Slice of Traffic

Before anything about attribution models or processing delays, check the most common — and most boring — cause of a mismatch: you might be comparing two numbers that were never supposed to match in the first place.

Google's own naming makes this easy to miss. Inside GA4, a key event (what GA4 called a "conversion" until the March 2024 rename) is counted across every traffic source that touches your property — direct visits, organic search, email, referral, social, and paid. Inside Google Ads, a "conversion" for a given conversion action is counted only when Google Ads' own attribution model credits one of its ads with that outcome. If 100 people complete checkout this week and 35 of them arrived through a Google Ads click, GA4's Key Events report shows roughly 100 purchases and Google Ads shows roughly 35 conversions — and that's not a discrepancy to fix, it's two different questions being answered correctly.

Before you troubleshoot anything else, confirm you're looking at a Google-Ads-scoped view in GA4 (the Advertising → Attribution reports, or a session-source/medium filter for google / cpc) rather than the property-wide Key Events total, when the comparison you actually care about is "how many of my Ads clicks converted."

Second, Confirm the Google Ads Link Is Actually Working

If GA4 shows a key event total and Google Ads shows nothing for that same action — not a smaller number, literally zero or "no recent conversions" — you don't have a reconciliation problem, you have a plumbing problem. Work through this before reading any further.

Prerequisites

  • Editor or Administrator access in GA4.
  • Administrator access in the Google Ads account.
  • Both accounts accessible from the same Google login, or delegated access to both.

Linking and importing, in order

  1. In GA4: Admin → Product links → Google Ads links → Link → select the Google Ads account. If it doesn't show up, you don't have Admin access on the Ads side yet.
  2. Enable Personalized Advertising on the link — required for audience sharing, and worth having on even if you only care about conversions.
  3. In Google Ads: Admin → Account settings → Auto-tagging → confirm it's on. This is the setting people forget most often, and without it GA4 can't attribute a session to a specific campaign, ad group, or keyword at all — it just sees generic google / cpc traffic with no campaign detail.
  4. Back in GA4: mark the event as a key event at Admin → Data display → Events, toggle "Mark as key event" for the specific event (e.g. purchase, generate_lead).
  5. In Google Ads: Goals → Conversions → New conversion action → Import → Google Analytics 4 properties → select your property → select the key event → Import and continue.
  6. Set the imported action's status to Primary (used by Smart Bidding) or Secondary (tracked, not optimized against) — and set the counting method to One per click for lead-gen, or Every for ecommerce, where every transaction should count.

If you also run Enhanced Conversions (Google Ads → Goals → Conversions → Settings), it can close part of the gap on its own — it matches conversions to ad clicks using hashed first-party data (typically email) even when third-party cookies are blocked, which recovers conversions that would otherwise never get attributed to an ad at all. It's worth turning on regardless of what's causing your current mismatch.

Why Do Two Correctly-Linked Platforms Still Show Different Numbers?

Assume the link is active, auto-tagging is on, and you're comparing the same event on the same traffic slice. The numbers still won't match exactly, for seven distinct reasons — roughly in order of how much of a typical gap each one explains.

1. Conversion time: click-day vs. conversion-day

This is the big one, and it affects every account with any gap between an ad click and the moment someone actually converts. Google Ads uses interaction-time reporting — a conversion is logged against the date of the ad click that gets credit for it, not the date the conversion happened. GA4 uses conversion-time reporting throughout — an event is logged against the date it actually fired.

Walk the example: someone clicks your Google Ads ad on Monday, leaves without buying, comes back through a bookmark on Thursday, and completes a $200 purchase. Google Ads books that $200 conversion to Monday — the date of the click that's credited with it. GA4 books the same $200 purchase to Thursday — the date the purchase event fired. Pull a "this week" report on Tuesday and Google Ads already shows the conversion; GA4 doesn't, because as of Tuesday it genuinely hasn't happened yet. Pull a report scoped to just that Monday the following week, after the purchase has happened, and Google Ads still shows the conversion there — but GA4 doesn't, because GA4 filed it three days later under Thursday, a date your Monday-only report never included. The two platforms aren't disagreeing about whether the sale happened — they're disagreeing about which day to file it under. The longer your typical time-to-conversion, the bigger this effect gets; it's negligible for impulse purchases and substantial for anything with a multi-day consideration window (B2B leads, high-ticket ecommerce, subscription trials).

2. Double-counting: the native Ads tag and the imported key event, both set to Primary

Unlike the other six reasons on this list, this one is an actual bug, not expected platform behavior — and it moves the number the most when it's present. It happens when the same real-world action is tracked twice: a native Google Ads Conversion Tracking tag fires on your thank-you page (often set up years ago, frequently through GTM), and the same GA4 purchase event gets imported as a separate conversion action. If both are set to Primary, every purchase gets counted twice in the Conversions column, your reported cost-per-acquisition looks like half of reality, and Smart Bidding optimizes toward a number that doesn't exist.

Check Google Ads → Goals → Conversions and look for two separate conversion actions tracking the same outcome — one native, one imported from GA4. Keep exactly one as Primary; set the other to Secondary, where it still shows up for analysis but stops feeding the Conversions column and Smart Bidding. This is the Ads-side cousin of the duplicate-tag-firing bug covered in our GA4×GTM cross-checks piece — same root cause (two tags recording one action), different platform pairing.

3. Attribution models: both "data-driven," never identical

Google Ads and GA4 both default to data-driven attribution (DDA) today — the older first-click, linear, time-decay, and position-based models were sunset across both products in 2023, leaving data-driven and last-click as the two real options. Defaulting to the same model name doesn't mean the two systems agree: each platform computes its DDA model independently, on its own view of your traffic, using its own lookback window and its own definition of a touchpoint. A path that Google Ads credits mostly to a Search click can get credited differently inside GA4's own model, which also weighs your organic, email, and direct touchpoints that Ads has no visibility into at all. See our attribution models guide for how GA4's model works and when last-click is the more useful setting for your property.

4. View-through and cross-device conversions

Google Ads counts view-through conversions — someone is shown a Display, Video, or Discovery ad, doesn't click it, but converts later within a defined view-through window. GA4 has no equivalent concept: if a user never clicked or otherwise interacted with the ad, GA4 has no record that the ad ever touched that user, so it structurally cannot count that conversion. Google Ads also does cross-device matching using Google's signed-in ecosystem — someone sees an ad on their phone, converts on their laptop while signed into Chrome or Gmail on both. GA4's cross-device coverage depends entirely on Google Signals being turned on for that property (off by default), and even then it's narrower than what the ad platform itself can see. On an account running real Display, Video, or YouTube spend, this alone can explain a meaningful chunk of "Ads has more conversions than GA4" — and GA4 will never fully close that gap by design, not because anything's broken.

5. Consent Mode: two different modeling engines filling the same gap

If you run Consent Mode v2 and a meaningful share of EU/UK visitors decline analytics or ad cookies, both platforms fill the resulting hole with modeled conversions instead of directly observed ones — but they don't use the same model. Google Ads models using its own signal pool across its advertiser network; GA4 models using only that property's own consented-vs-unconsented behavior. The two modeling engines will not land on the same estimate for the same gap, and on a property with real EU/UK traffic and a real consent-decline rate, expect Google Ads' modeled conversion count and GA4's modeled key-event count to diverge by a different amount than they would on a US-only property with no consent gating at all. That divergence isn't a bug in either platform — it's two independent estimates of the same missing data.

6. Reporting lag: the numbers aren't finished yet

GA4's own standard reports (as opposed to Realtime) commonly take 24-48 hours to fully process a day's data. Layer the Google Ads import step on top of that and Google doesn't publish a hard SLA for how long an imported key event takes to surface as a Google Ads conversion — in practice, treat anything less than about three days old, in either platform, as provisional. Comparing "today's" or "this week's" numbers between the two systems will show a gap that has nothing to do with the causes above — it's just that one or both platforms haven't finished counting yet.

7. Currency and timezone settings

If your GA4 property's reporting timezone (Admin → Property Settings → Reporting Timezone) doesn't match your Google Ads account's timezone, a conversion that happens at 11:40pm on one platform's clock can land on the next calendar day on the other's — which shifts day-level numbers around without any real discrepancy existing at the week or month level. The same logic applies to currency: if GA4's property currency doesn't match your Google Ads account currency and either side is doing an implicit conversion, revenue-based comparisons will drift by whatever the exchange rate has moved since either was last checked. Confirm both settings explicitly in GA4 Admin → Property Settings — a property left on UTC or defaulting to USD when your business runs elsewhere is a more common cause of "the revenue numbers are just off" than people expect.

So How Much of a Gap Is Actually Normal?

Google doesn't publish an official "acceptable discrepancy" number, and any source that hands you one exact figure is oversimplifying — the honest answer depends on your average sales cycle, your average order value, and how much of your spend sits on Display or Video versus Search. That said, practitioners who reconcile these two platforms regularly enough to have an opinion tend to converge on a rough range: somewhere around 10-30% between Google Ads' conversion count and GA4's key event count (for the same, correctly-scoped comparison) is common enough that it isn't, by itself, evidence of a bug. Conversion-time lag on its own — reason #1 above — is usually the single largest contributor to that range, especially for businesses with sales cycles longer than a day or two; the other reasons each add a smaller amount on top, or don't apply at all depending on your setup.

What's worth an afternoon of investigation: a gap much larger than that range (2x, 3x), a gap that flips direction between two periods with no linking or consent changes to explain it, or a gap that appeared suddenly right after a tag, container, or attribution-setting change. A steady, explainable 15-20% gap is boring and expected. An erratic or huge one is a bug, and it's almost always reason #2 (double-counting) or a broken link, not one of the platform-behavior differences.

The Reconciliation Checklist

  1. Confirm you're comparing the same slice of traffic — GA4's property-wide key event count versus Google Ads' ads-only conversion count are not the same metric.
  2. Confirm the link is active, Personalized Advertising is on, and auto-tagging is on in the Google Ads account.
  3. In Google Ads → Goals → Conversions, check for a native tag and an imported GA4 key event both tracking the same action with both set to Primary. If you find one, that's your answer — fix it before looking at anything else.
  4. Use date ranges that end at least 3 days ago on both platforms. Don't compare "today" or "this week."
  5. Check both properties' attribution model settings — not to force them to match, but to understand whether you're looking at data-driven vs. last-click on one side or the other.
  6. If you have meaningful EU/UK traffic under Consent Mode, expect a modeled-conversion gap and don't chase it to zero.
  7. If you run Display, Video, or YouTube campaigns, expect Google Ads to run structurally higher due to view-through and cross-device conversions GA4 can't see at all.
  8. Confirm GA4's property timezone and currency are explicitly set (not left on UTC or defaulting to USD) and roughly match your Google Ads account's settings.
  9. For the actual revenue question, reconcile both platforms against a third source of truth — your order or payment system — rather than each other. Neither Ads nor GA4 is an accounting system. If you're on Shopify specifically, this is exactly the pattern we walk through in why GA4 revenue doesn't match Shopify orders.

Which Number Should You Trust, for Which Decision?

  • Smart Bidding and budget decisions inside Google Ads: trust whatever Google Ads shows as Primary conversions. That number, not GA4's, is literally what the bidding algorithm is optimizing against — arguing with it in a spreadsheet doesn't change what the algorithm sees.
  • Understanding on-site behavior, funnel drop-off, and channel mix beyond paid search: trust GA4. It sees the full session across every traffic source, not just the interactions Google Ads is able to attribute to itself.
  • Real revenue for finance reporting: trust neither platform in isolation. Both are attribution/event-tracking systems, not accounting systems, and both will diverge from actual booked revenue for legitimate reasons — refunds, partial payments, currency conversion timing, test orders. Reconcile against your order or payment system.
  • A single number to report to a stakeholder each month: pick one platform as the source of truth per metric type, and say so explicitly in the report. Don't average the two into a synthetic number, and don't switch which platform you cite from month to month — that's how a stakeholder ends up asking why "conversions" went up 40% when nothing actually changed.

Verify the plumbing, not just the theory

Most of what's above assumes your link, key events, and property settings are configured correctly — but that's exactly where real accounts drift. NiceLookingData's GA4 audit checks your Google Ads link status, auto-tagging configuration, attribution model, timezone, and currency settings as part of every run, and flags exactly which one is missing or misconfigured. Run a free GA4 audit →

Frequently Asked Questions

Why does Google Ads show more conversions than GA4?

The most common causes, in order: Google Ads counts view-through and cross-device conversions that GA4 structurally cannot see at all; Google Ads books a conversion on the date of the ad click, so a conversion that completed today but was clicked several days ago already appears in Ads while GA4 hasn't recorded it yet (or has recorded it under an earlier date you're not looking at); and if you run Consent Mode, Google Ads' conversion modeling draws on a broader signal pool than GA4's, which can produce a higher modeled estimate for the same consent-decline traffic.

Why does GA4 show more conversions (key events) than Google Ads?

Almost always because you're comparing GA4's property-wide key event total — which includes direct, organic, email, and every other traffic source — against Google Ads' conversion count, which only includes outcomes its own attribution model credits to an ad. A key event that hasn't been imported into Google Ads at all, or whose imported conversion action isn't set to Primary, also won't show up in the Conversions column no matter how many times it fires in GA4.

How long should I wait before comparing Google Ads and GA4 numbers?

At least 3 days. GA4's standard reports typically finish processing a given day within 24-48 hours, and the Google Ads import step adds further lag on top with no published SLA. Comparing "today" or "this week" between the two platforms will show a gap driven almost entirely by one or both systems not having finished counting yet, not by any of the real platform differences.

Which number should I trust for Smart Bidding decisions?

Google Ads' own Primary conversion count for that conversion action. Smart Bidding optimizes directly against whatever Google Ads itself is counting — if you set an imported GA4 key event as the Primary action, that's the number that matters for bidding, not the total shown in GA4's Key Events report. Comparing it against GA4's broader number is useful for sanity-checking your setup, but it isn't the number the algorithm is reacting to.

Written by
Ludde Nyström — Founder, NiceLookingData

Analytics consultant turned founder. After years running the same GA4 and GTM audits across client engagements, Ludde built the audit into a product — so the pattern-matching takes a minute, not a meeting. More about Ludde →

Free tool

Run a free GA4 audit.

Connect your Google Analytics 4 property. Our auditor runs 61 checks and gives you an instant health score with a plain-English action plan.

Thanks for reading.