Le Lab

ADS

Why don't Google Ads and GA4 show the same conversions?

The short answer

Because they don't count the same thing: Google Ads takes credit for any conversion that follows an ad click and dates it to the day of the click, while GA4 shares credit across all channels and dates it to the day of the conversion. A moderate, stable gap is normal. A large gap, or one that changes suddenly, often points to a tracking problem.

Do both tools measure the same thing?

No, and that's the first thing to understand. Google Ads measures what your ads triggered. GA4 measures what happens on your website, across all channels. Both numbers can be right at the same time while being different.

What are the normal reasons for a gap?

Reason Google Ads GA4
Attribution Takes credit as soon as an ad click is part of the journey Shares credit across every channel in the journey, depending on the model
Date The conversion is dated to the day of the click The conversion is dated to the day it happens
Modelling Estimates conversions it can't observe (declined cookies, device switches) Mostly counts what it observes
Counting Every conversion, or one per click, depending on the setting Depends on how the key event is configured
Delays Reported within a few hours Reported more slowly, sometimes over 24 hours

Attribution explains most of the gap. Take a customer who clicks your ad, comes back three days later through an email, then buys. Google Ads counts a conversion for the ad. GA4, with its attribution model, may give some or all of the credit to the email.

The date creates gaps mainly at the end of the month. By default, Google Ads dates each conversion to the day of the click that preceded it, to line it up with the spend. A click on 30 September followed by a purchase on 2 October shows in September in Google Ads, and in October in GA4.

When does the gap hide a problem?

When it's very large, when it changes suddenly, or when Google Ads shows more sales than your back office recorded. The causes I find most often:

  • A conversion counted twice. On Moom Tableware's WooCommerce store, the Divi theme fired its own tag on top of Google Tag Manager: every purchase was recorded twice in GA4 and Google Ads.
  • Two primary actions for the same purchase. The Google Ads tag and the GA4 import measure the same sale, both counted for bidding.
  • Missing parameters. An event with no currency or value skews your return on ad spend.
  • Test orders never excluded, or refunds handled on one side only.
  • A tag that doesn't fire everywhere, for example on a confirmation page hosted by the payment provider.
Tracking · E-commerce tracking WooCommerce

Flow: WooCommerce store, to Tagging plan, then Google Ads, GA4.

Real CPA

visible for the first time, conversions de-duplicated

Source: Google Ads and GA4, after the tracking overhaul

Real result, from the project Moom Tableware

At Moom Tableware, the displayed cost per acquisition was artificially low. The client was investing more in campaigns that were actually bringing in less. Once the duplicate was removed, the real cost per acquisition showed up for the first time.

Tracking · Tagging plan 3 platforms

Flow: Ticket purchase, to Code, no GTM, then Google Ads, Meta Ads, TikTok Ads.

0 duplicates

Clean attribution across 3 platforms

Source: Tagging plan delivered, recorded at the end of the engagement

Real result, from the project Kinky Boots — Ticketmaster

On the Kinky Boots ticketing, for Ticketmaster, checking each platform one by one caught two silent issues before launch: a missing currency on a Meta event, and the TikTok pixel firing twice.

So which number should you trust?

Your back office. Orders actually paid, or leads actually recorded in your CRM, are the only reference. Then:

  • Google Ads is for managing bids and comparing Google campaigns with each other;
  • GA4 is for understanding the role of each channel in the journey;
  • the gap between them is your alarm: if it moves suddenly, something changed in the tracking.

How can you check your setup in 15 minutes?

  1. Compare a full month, not a week, and use the "by conversion time" columns in Google Ads.
  2. Match the number of purchases in Google Ads, GA4 and your back office over the same period.
  3. In Google Ads, check there's only one primary conversion action per goal.
  4. Place a test order and check it's recorded only once in each tool.
  5. Check that value and currency come through with every purchase.

If the numbers still don't add up, that's the time to have the tracking audited before touching the budget. It's where I start every Ads engagement.

Frequently asked questions

What gap between Google Ads and GA4 is normal?

There's no official figure: it depends on how much of your sales come from other channels, your conversion windows and your consent rate. What matters is that the gap stays stable over time. A gap that doubles from one month to the next almost always has a technical cause.

Should I use the Google Ads tag or import GA4 conversions?

Both work. What matters is having only one primary conversion action per goal. If the Google Ads tag and the GA4 import measure the same purchase and both are primary, Smart Bidding sees every sale twice.

How do I compare Google Ads with my monthly sales?

Use the Google Ads 'by conversion time' columns: they date each conversion to the day it happened, like your back office, instead of the day of the click.

Sources

  1. Understand conversions by time with new columns · Google Ads Help
  2. Get started with attribution (GA4) · Google Analytics Help
  3. About conversion measurement · Google Ads Help
FURTHER READING
Back to the top of the page