Open Google Ads and it reports 100 conversions. Open GA4 for the same window and it shows 78. Check your store's order table and there are 92. None of them are lying, and none of them will ever agree. Consent is one of the biggest reasons the numbers split, and once you understand which parts are observed and which are estimated, you stop chasing a reconciliation that can't exist and start trusting the right number for the right decision.
Five reasons the numbers disagree
Consent sits underneath most of these, but it's worth naming each so you can tell measurement error from consent-driven gaps.
- Consent gating. When a visitor rejects marketing or analytics cookies, the conversion tag doesn't fire. That conversion is real, it happened, and your ad platform never recorded it. The higher your reject rate, the bigger this hole.
- Modeling. To patch the hole, Google fills gaps with modeled conversions. GA4's behavioral modeling and Consent Mode modeling estimate what non-consenting users probably did, based on the patterns of those who did consent. Those estimates flow straight into the Conversions column and into Smart Bidding. So part of your reported number was observed and part was inferred.
- Attribution models and windows. Google Ads, GA4, and Meta each use different default attribution models and lookback windows. The same purchase can count in one tool and not another purely because of window and credit rules.
- Deduplication. Run the browser pixel and a server-side API without a shared event ID and you double-count. Some tools dedup, some don't, and the totals drift apart.
- Cookie lifespan and cross-device. Safari's Intelligent Tracking Prevention caps client-set cookies at seven days, so a visitor who converts on day nine looks like a new user. Cross-device journeys break the chain entirely.
What modeled conversions really are
Modeled conversions deserve a closer look, because marketers often treat them as observed fact. They're not. Google's model quantifies the relationship between consented and unconsented users, then uses the behavior of the consented, observed group to estimate the rest. It's a reasonable statistical fill, and it keeps your bidding from optimizing on a half-blind view. But it only kicks in when you have enough data to model from. Google states a threshold of 700 ad clicks over a seven-day period per country and domain grouping, plus a correct Consent Mode or IAB TCF implementation, before conversion modeling applies. Below that volume, the gap just stays a gap. Above it, a meaningful share of your reported conversions is a model output, not a counted event.
This is why advanced Consent Mode matters for measurement even though it changes nothing about who you can retarget. Advanced mode keeps a cookieless signal flowing from rejected users, which is the raw material the model needs. Basic mode blocks the tag entirely, so there's less to model from. For the trade-offs, see advanced versus basic Consent Mode.
Recovering match rate, within consent
Two features claw back accuracy for the users you do have consent for. Google's Enhanced Conversions and Meta's Advanced Matching send hashed first-party data, like an email captured at checkout, alongside the conversion, so the platform can match events it would otherwise lose to cookie limits and cross-device gaps. Both raise reported conversions by improving match quality, not by inventing events. Both require consent, because you're still sending a person's data for advertising. Gate them the same way you gate everything else. For the server-side pattern, see server-side conversions API and consent.
Pick a source of truth
The mistake is treating any single platform's Conversions column as ground truth. Each one is a partial, consent-limited, partly-modeled view built for its own bidding engine. Instead:
- Anchor on your backend. Your order table or CRM records every sale regardless of consent, cookies, or attribution windows. That's your real total. Use it as the denominator everything else is measured against.
- Use platform numbers for optimization, not accounting. Google Ads conversions, including modeled ones, exist to steer bidding. They do that job well. They're not your revenue report.
- Measure incrementality for spend calls. When a chunk of your reported conversions is modeled, a geo holdout or a conversion-lift test tells you what a channel actually caused, which no attribution column can.
- Reconcile the shape, not the exact number. Expect the platforms to disagree by a stable margin. A sudden change in that margin is the real signal, and it often traces back to a shift in consent rate.
Know your observed-versus-modeled split
Every point above turns on one number you probably don't have in front of you: what share of your conversions were observed versus estimated. That share is a direct function of your consent rate. CookieBeam's consent analytics report accept and reject rates by region and segment, so you can tell how much of your conversion data is real counting and how much is model fill. When the modeled share is uncomfortably high, the A/B testing tool helps lift the consented share with tested banner variants, which shifts your reporting back toward observed events and makes every downstream number more trustworthy. You can't make platforms agree. You can know exactly why they don't.
For the broader analytics-loss framework, see measuring the impact of consent on your analytics. For the Meta-specific version of this problem, see Facebook ads after consent. And for the June 2026 Google changes, see GA4 and Google Ads Consent Mode.