Why don’t the numbers match?
Because each tool answers a different question. Google Ads asks how many conversions its ads deserve credit for. Meta asks the same about its ads. GA4 asks how to split credit across every channel that touched the user. Each uses its own windows, models, date rules and counting, so the totals will never agree, and adding the two ad platforms together usually overstates the real number.
The gap is only a problem when it is unexplained or changing. The goal of reconciliation is to explain it.
What are the main causes?
| Factor | Google Ads | GA4 | Meta |
|---|---|---|---|
| Who gets credit | Only interactions with that Google Ads account | Paid and organic channels by default in GA4 reports | Only Meta ads |
| Attribution model | Data-driven is the default for most conversion actions | Reporting attribution model set per property (data-driven or rules-based) | Ad set attribution setting (click and optional view window) |
| Windows | Click 30 days default; engaged-view 3 days; view-through 1 day | Lookback 90 days for most key events, 30 for first visits | Windows such as 1-day or 7-day click, 1-day view |
| Report date | The ad interaction date; “by conv. time” columns available | Event time by default | Impression time or conversion time (API setting) |
| Counting | Every or One per click, per conversion action | Once per event or once per session | Per event, after deduplication |
| Modeling | Consent mode and cross-device modeling in Conversions | Its own conversion and behavioral modeling | Not covered here |
Sources for each cell are linked in the sections below.
How do attribution models and windows change the count?
They decide which conversions each tool is allowed to claim. Google Ads’ conversion windows default to 30 days for clicks, 3 days for engaged views and 1 day for views, and changes apply only going forward. Data-driven is the default model for most conversion actions, which uses your account’s past data to estimate each Google Ads interaction’s contribution. Google’s discrepancy guide adds that Google Ads only reports conversions with interactions from the same account.
GA4 works differently. Its attribution settings default to a 90-day lookback for most key events and 30 days for first_visit and first_open. Rules-based first click, linear, time decay and position-based models were removed in November 2023. The “channels that can receive credit” setting defaults to paid and organic in GA4 reports, so organic search, email and direct can take credit that Google Ads keeps for itself. Changing the reporting model restates history; changing the lookback window or channel setting applies only going forward.
Meta credits its own ads inside the ad set’s attribution setting. Its Insights API reference lists windows such as 1d_click, 7d_click, 28d_click and 1d_view, and notes that use_unified_attribution_setting=true reports with the ad set settings, matching Ads Manager. A 7-day click plus 1-day view setting will always claim more than a 1-day click comparison.
What is the difference between click-through and view-through?
A click-through conversion follows an ad click; a view-through conversion follows an impression with no click. Google’s discrepancy guide notes that view-through conversions are not in the Conversions column by default, so check which columns you are reading. Meta’s view windows count people who saw an ad and later converted, including some who would have bought anyway. An impression that never produced a site visit leaves no traffic source for GA4 to credit, so view-through credit is a common reason Meta and GA4 disagree. To learn what view-through conversions are worth, test with a holdout; see incrementality testing.
Why does the date of a conversion differ?
Google Ads dates a conversion back to the ad interaction, while GA4 and your backend date it to when it happened. Google’s discrepancy guide recommends the “Conversions (by conv. time)” or “All conv. (by conv. time)” columns to align with Analytics, and says to allow 24 to 48 hours for processing. Meta’s API exposes the same choice: action_report_time set to impression reports a conversion on the day of the ad, and conversion on the day it happened. Last week’s numbers in an ad platform will keep rising for days after the week ends. Offline imports take about 3 hours to appear (import guidelines).
How do modeled conversions and consent mode affect the numbers?
They add estimated conversions that no cookie recorded. With consent mode, Google Ads places modeled conversions in the Conversions column for users who declined cookies, once the account reaches 700 ad clicks over 7 days per country and domain grouping. Under advanced consent mode, tags send cookieless pings that support an advertiser-specific model; under basic mode, nothing loads before consent and a general model is used. GA4 runs its own conversion and behavioral modeling, so even two Google products will model differently. Google Ads also models cross-device conversions, where someone clicks on a phone and buys on a laptop.
How do counting and deduplication change totals?
Counting rules decide whether one person can produce several conversions. Google Ads lets each action count every conversion or one per click. GA4 counts key events once per event or once per session, and changes apply only to future data. A lead form counted “One” in Google Ads and “once per event” in GA4 will diverge whenever someone submits twice.
Deduplication matters on Meta. If the Pixel and the Conversions API both send a purchase, Meta discards the second only when the event_id and event name match and it arrives within 48 hours of the first (deduplication docs). Missing IDs mean double counting. Google Ads also removes some conversions it identifies as invalid traffic, which GA4 and your backend still record.
How do you reconcile them, step by step?
Reconcile one conversion action at a time against your own records.
- Pick the source of truth. Orders or CRM records, deduplicated, with the UTM source and click IDs stored on each.
- Pick one conversion and a closed date range that ended at least a few days ago, so processing and late conversions have settled.
- Align the date basis. Google Ads: add “Conversions (by conv. time)”. Meta: report by conversion time. GA4: event time.
- Align scope. In GA4, compare Google Ads against a view where only Google paid channels receive credit; in your backend, filter orders by UTM or click ID.
- Strip view-through and modeled conversions where the tool lets you, and compare click-only numbers first.
- Check counting settings for the same action in each tool.
- Check duplication: same order IDs or event IDs sent twice, and both platforms claiming the same order.
- Record the ratio of each tool to the backend, and alert on changes in that ratio rather than on the gap itself.
Use the outcome as a decision rule: steer bids with each platform’s own numbers, compare channels in GA4, and decide budgets on backend revenue. Our guide to ROAS, MER and contribution margin shows how.
How MSG approaches this
We set conversion definitions and their sources before scaling spend, and write down which tool answers which question. Weekly reporting is reconciled to the business’s own order or CRM data, and for partners who pay on performance, to the partner’s tracking. We say what we know and what we don’t: a platform number is labeled as attributed, not as caused. Larger budget decisions get a holdout test. See our measurement service, and our guide to Google Ads conversion tracking.
Sources
- Google Ads Help: Data discrepancies: factors and troubleshooting
- Google Ads Help: About conversion windows
- Google Ads Help: About attribution models
- Google Ads Help: About conversion counting options
- Google Ads Help: About consent mode modeling
- Google Ads Help: Guidelines for importing offline conversions
- Google tag platform: Consent mode overview
- Analytics Help: Select attribution settings
- Analytics Help: Conversions vs. key events in Google Analytics
- Analytics Help: Change the counting method of key events
- Meta for Developers: Ad account insights reference
- Meta for Developers: Deduplicate Pixel and server events
Platform features and policies change. This guide reflects the sources above as of October 28, 2026.