A Third of Your GA4 Numbers Are Modeled — WooCommerce Stores Can’t See Which
When 50 to 60 percent of EU visitors reject cookies, GA4 fills the gap with behavioral modeling — machine learning estimates based on consenting users’ patterns. The result is that roughly a third or more of the conversion numbers in a typical WooCommerce store’s GA4 report are statistical inferences, not observed events. GA4 doesn’t label which numbers are modeled. The only indicator is a small data-quality icon referencing “estimated user data” with no percentage or breakdown. The reconciliation point is your own first-party event log — the one number you fully observe.
Contents
- The Number You Reported Last Friday Might Be a Guess
- How GA4 Behavioral Modeling Actually Works
- The Consent Math That Decides How Much Is Modeled
- The BigQuery Gap Nobody Warned You About
- The June 15 Consent Mode Shift That Changes the Rules
- How to Reconcile GA4 Against What You Actually Observed
- Key Takeaways
The Number You Reported Last Friday Might Be a Guess
GA4 blends modeled and observed conversions in every report — and the dashboard doesn’t distinguish between the two.
When cookie rejection rates hit 50 to 60 percent — and they do, on any site running a GDPR-compliant banner with a clearly visible Reject All button — GA4 doesn’t show you a gap. It fills the gap. Behavioral modeling uses machine learning to estimate what non-consenting users probably did, based on patterns from users who said yes. The estimates get mixed into your reports alongside observed data, and the totals look complete.
Here’s the thing: GA4 does not indicate how much of your data is modeled versus observed. As documented by iDimension’s analysis, GA4 reporting doesn’t explicitly show how much behavioral modeled versus observed data is included in reports for a given date range. You get a small data-quality icon in some reports that references “estimated user data.” That’s it. No percentage. No per-row breakdown. No way to look at a specific conversion number and know whether it was measured or guessed.
This isn’t a bug. Google designed it this way. The stated goal is reporting continuity — preventing the appearance of a data cliff when consent banners activate. The unstated consequence is that the conversion number you reported to leadership last Friday is a probability distribution you can’t see the shape of.
GA4 does not indicate how much of your conversion data is modeled versus observed — the only indicator is a small data-quality icon with no percentage or per-row breakdown.
How GA4 Behavioral Modeling Actually Works
The modeling is real machine learning, not random padding — but it has hard requirements most small stores don’t meet.
GA4 runs two distinct modeling systems that work differently. Behavioral modeling estimates broader user metrics — sessions, page views, engagement — for users who declined consent. It trains on patterns from consenting users and applies those patterns to estimate what the non-consenting group probably did. Conversion modeling does the same for key events, estimating conversions that can’t be tied directly to a traffic source.
Both models have activation thresholds. GA4 behavioral modeling requires a minimum of 1,000 daily consented and unconsented events before it activates. Most small WooCommerce stores don’t hit that number. If your store falls below the threshold, you don’t get estimates — you get raw gaps. The dashboard just shows fewer conversions, with no indication of what’s missing.
For stores that do qualify, the modeling runs automatically. Behavioral modeling is enabled by default in every new GA4 property. You didn’t opt in. Google opted you in. The models fire, the estimates blend into your reports, and the totals look like complete data sets. One analysis found behavioral modeling drove a 23 percent increase in observable traffic in analytics reporting on European and UK websites. That’s not recovered data — that’s estimated data appearing in reports as if it were observed.
The practical implication is that two WooCommerce stores looking at the same GA4 report structure are seeing structurally different numbers depending on their consent rate, traffic volume, and geographic mix — but the reports don’t surface those differences.
You may be interested in: GA4 Behavior Modeling vs Real Data: Is Google Guessing Your Conversions?
The Consent Math That Decides How Much Is Modeled
The share of modeled data in your reports is directly proportional to your cookie rejection rate — and rejection rates are higher than most operators think.
A compilation of 26 consent studies aggregated by Ignite Video and updated in February 2026 found a consistent pattern: when websites offer a clearly visible Reject All button on equal footing with Accept, rejection rates sit at 50 to over 60 percent. When rejecting requires multiple clicks, up to 90 percent of users accept instead. The design of your consent banner directly determines how much of your GA4 data is real versus estimated.
Walk through the math. Say your WooCommerce store gets 100 conversions in a week. Your consent banner shows equal-weight Accept and Reject buttons. Roughly 55 percent of visitors reject. GA4 observes 45 conversions directly. It then models the behavior of the 55 percent who rejected, estimates that roughly 30 additional conversions probably happened based on the consenting group’s patterns, and blends those 30 modeled conversions into the report. Your dashboard shows 75 conversions. Thirty of them — 40 percent — are statistical estimates that look identical to observed events.
The exact ratio depends on your consent rate, traffic volume, geographic mix, and whether your site meets the modeling threshold. But the directional math is consistent: for sites with GDPR-compliant banners targeting European traffic, somewhere between a third and half of the conversion numbers in GA4 are modeled.
When websites offer a clearly visible Reject All button on equal footing with Accept, cookie rejection rates sit at 50 to 60 percent according to a compilation of 26 consent studies updated February 2026.
| Consent Banner Design | Typical Acceptance Rate | Estimated Modeled Share in GA4 | Spend Decision Risk |
|---|---|---|---|
| Equal Accept/Reject buttons (GDPR-compliant) | 40–50% | 30–45% | High — significant modeled share |
| Multi-click reject (dark pattern) | 80–90% | 5–15% | Lower — but compliance risk |
| No consent banner (non-EU) | ~100% | Minimal | Low — mostly observed data |
| Below 1,000 daily events threshold | Any | 0% (modeling inactive) | Different risk — raw data gaps |
The BigQuery Gap Nobody Warned You About
GA4’s BigQuery export contains only observed events — creating a structural disconnect between what your dashboard shows and what your warehouse holds.
This is the detail that catches most data teams off guard. Modeled conversion data from GA4 does not export to BigQuery. The BigQuery export contains only observed events — the ones directly measured from consenting users. Behavioral modeling and conversion modeling estimates stay in the GA4 interface.
The result is a structural gap. Your GA4 dashboard shows 75 conversions (45 observed + 30 modeled). Your BigQuery table shows 45. A data analyst querying BigQuery sees a number that’s 40 percent lower than what the marketing team reported from the GA4 dashboard — and neither side knows why the numbers don’t match.
This gap compounds in every downstream system that reads from BigQuery. Looker Studio dashboards built on BigQuery show observed-only numbers. Predictive models trained on BigQuery event data learn from a partial signal. Attribution analyses run against BigQuery miss the modeled conversions entirely. The deeper your data stack runs on BigQuery as its source of truth, the wider the disconnect from GA4’s dashboard.
The gap also means your BigQuery data is more accurate in one specific sense: it contains only events that were directly measured. No estimates, no inference, no black-box modeling. Translation: BigQuery is showing you reality. GA4 is showing you reality plus guesses. The question is which one you’re making spend decisions from.
The June 15 Consent Mode Shift That Changes the Rules
Google is consolidating data controls — and the change makes your Consent Mode implementation the single point of failure for measurement.
Starting June 15, 2026, Google restructures how GA4 and Google Ads share data. The core change: Consent Mode’s ad_storage parameter becomes the sole control for all Google Ads data collected through linked GA4 properties. Google Signals will no longer control Google Ads cookie and ID collection. If ad_storage is granted via Consent Mode, Google Ads collects and associates activity with signed-in accounts regardless of your Google Signals setting in GA4.
Until now, two controls jointly determined whether Google Ads received advertising data from your site: the Google Signals toggle inside GA4, and the ad_storage parameter in Consent Mode. Many teams turned Google Signals off as a secondary safety net to restrict ad data sharing. After June 15, that safety net disappears. The consent signal carries all the decision-making weight.
For WooCommerce stores, the practical impact is that your Consent Management Platform configuration — the specific banner plugin, its settings, and the exact consent parameters it fires — becomes the single point of failure for your entire measurement stack. A misconfigured banner or a missing ad_user_data parameter doesn’t just affect analytics. It breaks your conversion tracking, remarketing audiences, and Smart Bidding signal in one move.
Properly configured Consent Mode v2 plus conversion modeling recovers 15 to 40 percent of conversions that would otherwise be lost to rejected consent, according to audit data. But that recovery depends entirely on the implementation being correct. A poorly designed consent banner can push opt-in rates below 30 percent. A well-designed one achieves 70 to 85 percent. The delta between those two numbers is your modeling ceiling.
You may be interested in: Scraped Data vs Streamed Data: Claude Live Artifacts Made the Gap Visible
How to Reconcile GA4 Against What You Actually Observed
The only number you fully observe is your own first-party event log — and building that comparison habit is the most valuable data practice for 2026.
The reconciliation framework is straightforward. You need three numbers side by side: the GA4 dashboard total (observed + modeled), the BigQuery event export total (observed only), and your WooCommerce order table (ground truth). The delta between the GA4 dashboard and BigQuery tells you how much GA4 is modeling. The delta between BigQuery and WooCommerce tells you how much your tracking is missing even among consenting users.
Run this comparison weekly. Pick a specific key event — purchase is the clearest — and pull the count from all three sources for the same date range. The first time you do this, the numbers won’t match. That’s the point. You’re mapping the shape of your measurement uncertainty.
For stores running a server-side event pipeline, the reconciliation is tighter. A first-party event collector that writes directly to BigQuery captures every purchase event at the server level — independent of consent state, browser restrictions, or client-side blocking. The server-side number should match your WooCommerce order count within a small margin. If it doesn’t, you’ve found a pipeline gap to fix.
Transmute Engine™ sits at this layer. It captures events server-side before they reach any ad platform, writes them to BigQuery as observed first-party data, and then distributes the appropriate signals to Google, Meta, and other destinations. The BigQuery dataset you get isn’t a modeled estimate — it’s a deterministic record of what happened in your store.
The reconciliation habit also reveals the modeling ceiling. If your GA4 total is consistently 35 percent higher than your BigQuery total, you know roughly a third of your reported conversions are estimates. That number is your uncertainty band. Every spend decision you make from GA4 carries that margin of error — and now you can see it, budget for it, and make better calls because of it.
Key Takeaways
- GA4 blends modeled and observed data without labeling: The dashboard doesn’t show which conversion numbers are directly measured and which are machine learning estimates. The only indicator is a small data-quality icon with no per-row breakdown.
- Cookie rejection rates determine your modeled share: With GDPR-compliant banners showing equal Accept/Reject buttons, 50 to 60 percent of visitors reject. That means roughly a third or more of your reported GA4 conversions are estimates.
- BigQuery shows only observed events: GA4’s BigQuery export excludes modeled data. This creates a structural gap between dashboard totals and warehouse numbers that catches data teams off guard.
- June 15 makes Consent Mode your single measurement control: After the transition, ad_storage alone determines what Google Ads receives. Google Signals no longer acts as a secondary safety net.
- Reconcile weekly against WooCommerce orders: Compare GA4 dashboard totals, BigQuery event exports, and WooCommerce order counts. The delta is your measurement uncertainty — and knowing the shape of it is more valuable than pretending it doesn’t exist.
GA4 does not break down modeled versus observed data at the row level. The only indicator is a small data-quality icon in some reports that references “estimated user data” — with no percentage or per-conversion breakdown. To find the gap, compare your GA4 conversion totals against your WooCommerce order table or BigQuery event export, which contains only observed events.
When GA4 key events are imported into Google Ads as conversion actions, modeled conversions flow in alongside observed ones. Smart Bidding receives both without distinction. In accounts with low conversion volume, modeled data can represent a significant percentage of total conversions, making bid optimization less stable.
No. GA4’s BigQuery export contains only observed events. Behavioral modeling and conversion modeling estimates do not appear in the export. This creates a structural gap: the GA4 dashboard shows a blended total including estimates, while BigQuery shows only what was directly measured.
Starting June 15, 2026, Consent Mode’s ad_storage parameter becomes the sole control for Google Ads data collected through linked GA4 properties. Google Signals will no longer control Google Ads cookie and ID collection. If ad_storage is granted via Consent Mode, Google Ads collects data regardless of the Google Signals setting in GA4.
References
- Louis Loh — Google Is Filling Your GA4 Reports with Modeled Data (March 2026)
- Plausible Analytics — Consent Mode and How GA4 Fills Missing Data (2025)
- Mauro Romanella — GA4 Modeled Data: Are You Looking at Real Data? (2025)
- UniConsent — Google Consent Mode June 2026 Update (2026)
- DumbData — Modeled Data and Observed Data in Google Analytics Explained (2024)
- BeKnown — Google’s New Consent Rules: The GA4 and Ads Update (2026)
- Optimize Smart — GA4 Behavioral and Conversion Modeling (2026)
- GROAS — Google Ads Conversion Tracking Audit Guide (2026)
The conversion number in your GA4 dashboard isn’t wrong — it’s incomplete in a way the dashboard doesn’t disclose. Knowing the shape of your measurement uncertainty is more valuable than pretending it doesn’t exist. Talk to Seresa about building a first-party event pipeline that gives you the observed number to reconcile against.