All articles

Attribution

GA4 vs Google Ads vs Meta: why conversion totals don't match

Why GA4, Google Ads, Meta, and Shopify report different conversion totals: attribution windows, dates, view-through, modeling, and how to reconcile the gap.

One copper signal splitting toward two differently balanced measurement scales

GA4, Google Ads, and Meta can observe the same sale and still report different totals. Different conversion totals do not automatically mean one platform is broken. Each system answers a different question with different evidence, different dates, and different rules for what deserves credit.

The mistake is treating every reported conversion as if it were counted under the same rules. A useful investigation starts by documenting those rules before comparing the numbers.

How GA4, Google Ads, and Meta count conversions differently

GA4 Google Ads Meta Ads
Date a conversion is reported The date the key event happened The date of the ad click or interaction The date of the ad impression or click
Default window Lookback window set in GA4 attribution settings Conversion window set per conversion action 7-day click and 1-day view
Credits ad views Generally no Yes, through view-through and engaged-view conversions Yes, within the view window
Scope of credit All channels compete for credit Only Google Ads interactions Only Meta ad interactions
Modeled conversions Yes, with consent mode Yes Yes

Even with perfect tags, these differences alone produce different totals.

Start with the business total

Your ecommerce platform, payment system, or CRM should provide the reference count for completed outcomes. This is the total the business actually fulfilled or accepted.

Clean the comparison before using it. Remove test orders, failed payments, internal leads, duplicates, and records outside the reporting period. Use a consistent business timezone and currency.

This source of truth does not explain marketing contribution by itself. It gives you the denominator needed to judge whether the measurement systems are plausible.

Why do GA4 and Google Ads show different conversions?

The most common reasons are structural, not technical:

  • Different dates. Google Ads reports a conversion on the day of the ad click. GA4 reports it on the day the conversion happened. A click on the 1st and a purchase on the 5th land on different days.
  • Different scope. In GA4, every channel competes for credit. Google Ads only looks at its own clicks and views.
  • View-through and engaged-view conversions can be counted in Google Ads without a matching GA4 session from that ad.
  • Modeled conversions fill gaps where consent or browser restrictions removed the observed signal.
  • Double counting. If a Google Ads conversion tag and an imported GA4 key event both track the same purchase as primary actions, Google Ads counts it twice.

Why does Meta report more conversions than GA4?

Meta’s default attribution setting credits conversions up to seven days after a click and one day after an ad view. A visitor who saw an ad, did not click, and bought the next day through a Google search can appear in Meta’s results and in GA4 under Google organic.

Meta can also connect activity across devices when people are logged in to Facebook or Instagram, and it receives server events through the Conversions API. Without matching event IDs between the Pixel and the API, the same purchase can be counted twice. I explain that setup in how to deduplicate Meta Pixel and Conversions API events.

Why does Shopify show more orders than GA4?

Your store records every order. GA4 only sees the purchases where tracking ran successfully. The gap usually comes from:

  • Visitors who declined analytics consent or use ad blockers.
  • Payment flows that redirect away and never return to the confirmation page.
  • Orders created outside the online storefront, such as draft, manual, or point-of-sale orders.
  • Purchase events that fail because of script errors or missing transaction_id values.

A stable gap is expected. A gap that grows after a theme change, app install, or checkout update is a sign to audit the tracking.

Check definitions before debugging code

Confirm that each platform is counting the same business action. A purchase event should not be compared with an all-leads conversion action or a thank-you page visit.

Review whether the platform counts every conversion or one conversion per interaction. Check if refunds, cancellations, or offline outcomes are imported. Confirm whether the displayed column uses platform-attributed conversions or another reporting view.

This step often explains more than tag debugging does.

Use shared identifiers

A consistent transaction ID or booking ID creates a bridge between systems. It lets you verify whether one business outcome appeared in GA4, the advertising platforms, and your backend.

For browser and server versions of the same event, send the same event ID where the destination supports deduplication. Without that connection, the platform may count two signals as two conversions.

Do not send placeholder IDs or reuse an ID across multiple outcomes. A shared identifier is useful only when its meaning is stable.

Compare cohorts, not isolated screenshots

Choose a fixed date range and compare the same timezone, conversion action, and attribution settings. Then group the results by channel, campaign, device, or consent state.

Look for patterns:

  • A gap isolated to one browser may indicate signal loss.
  • A gap isolated to one campaign may indicate URL or landing-page problems.
  • A sudden change after a release may indicate a tracking regression.
  • A stable difference across all periods may reflect attribution policy rather than implementation failure.

Patterns provide a stronger diagnosis than one total viewed on one day.

Which number should you trust?

The backend should answer how many outcomes occurred. GA4 should help explain on-site behavior and channel performance under its measurement model. Advertising platforms should support delivery and optimization using the signals available to them.

These systems should be reconcilable, but they do not need to be identical. A healthy measurement setup documents the expected differences and alerts the team when those differences move outside a reasonable range.

The goal is not perfect agreement. The goal is a clear explanation for why the numbers differ and enough evidence to make the next decision responsibly. If your gap no longer has a clear explanation, a GA4 and conversion tracking audit or a Meta Conversions API setup with proper deduplication is usually the next step.

Frequently asked questions

Is it normal for GA4 and Google Ads conversions to be different?

Yes. The two tools credit conversions to different dates, use different attribution windows and models, and Google Ads can include modeled and view-through conversions. A stable, explainable gap is normal. A sudden change or a gap moving in opposite directions points to a tracking problem.

Why does Google Ads show more conversions than GA4?

Google Ads credits conversions to its own ad interactions, can count view-through and modeled conversions, and may count the same action twice if both a Google Ads tag and an imported GA4 key event are primary. GA4 only counts events it actually received under its own attribution rules.

Why does Meta report more purchases than GA4?

Meta's default attribution setting includes conversions within one day of an ad view as well as seven days after a click, and Meta can connect devices through logged-in accounts. GA4 does not credit an ad that was only seen, so Meta-attributed purchases are often higher.

Why does Shopify show more orders than GA4?

Shopify records every order in its database. GA4 only sees purchases where tracking ran and the visitor's consent and browser allowed it. Ad blockers, declined consent, payment redirects that skip the confirmation page, and orders created outside the online store all widen the gap.

What is an attribution window?

An attribution window is the period after an ad click or view during which a conversion can be credited to that ad. Google Ads, Meta, and GA4 each have their own default windows, which is one reason their totals differ.

Which conversion number should I trust?

Use your backend or CRM for how many outcomes actually happened. Use GA4 to understand on-site behavior and compare channels under one model. Use each ad platform's numbers to manage delivery and bidding inside that platform. Each answers a different question.

WhatsApp