Attribution
Why ad platforms report different conversion totals
GA4, Google Ads, and Meta can observe the same sale and still report different totals. Here is how to investigate the gap without guessing.

Different conversion totals do not automatically mean one platform is broken. GA4, Google Ads, Meta, and your backend answer different questions with different evidence.
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.
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.
The platforms use different evidence
GA4 usually organizes reporting around website and app interactions observed within its identity and consent framework. Advertising platforms combine click, view, account, browser, and server signals according to their own attribution settings.
That creates several common sources of difference:
- Attribution windows cover different periods.
- One platform gives credit for a view while another requires a click.
- Identity resolution connects devices differently.
- Consent and browser restrictions remove some observable signals.
- Reporting timezones place the same conversion on different dates.
- Conversion definitions or counting methods are not aligned.
The totals can therefore differ even when the underlying tags are functioning.
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.
Decide what each system is for
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.