MUD\WTR
Sensor audit · 52 weeks

Checkout → Converted:
Shopify vs GA4

Of the people who reach checkout, what share actually buys? Measured two ways over 52 weeks — Aug 11, 2025 to Aug 9, 2026. The Shopify-side sensor and GA4 disagree in 51 of 52 weeks, by an average of 26.3 percentage points. This page establishes which one to believe, what genuinely changed in the last year, and when.

Shopify says
72.3%
completion, last 4 wks
GA4 says
45.4%
same weeks
Ratio
1.6×
stable all year
Real change
Nov 3
step up, both sensors
May 18 break
None
claim not supported
What this changes
  1. Every checkout-completion number we have published this year is wrong by about 1.6×.

    GA4 puts checkout completion at 45.4% over the last four weeks. The Shopify-side sensor puts it at 72.3%. GA4 reads lower in 51 of 52 weeks — the single exception is a known GA4 glitch week. This is not a small calibration difference: it is the difference between "half the people who reach checkout bail" and "seven in ten buy". Decisions about checkout UX have been sized off the wrong number.

  2. The "GA4 begin_checkout broke on 18 May 2026" footnote is wrong. Retire it.

    That caveat has ridden on every weekly report for three months. It does not survive the 12-month view. GA4's checkout-begin rate is flat straight through that date (4.24% before, 4.26% after). And the mild completion decline after it shows up in both sensors at nearly the same size — GA4 -1.6pt, Shopify -1.7pt. Two independent sensors agreeing is the signature of a real change, not a tracking bug. We have been writing off a genuine softening as instrumentation.

  3. The gap is a stable offset, not a drift — which makes GA4 usable for direction and useless for level.

    Shopify ÷ GA4 completion averaged 1.7× across the first half of the year and 1.5× across the second. The two series move together; they just sit 26.3pt apart. So: read GA4 for whether completion is improving, never for what completion is. The likely mechanism is GA4 over-counting begin_checkout — its add-to-cart→checkout step reads 74.4% against Shopify's 94.2%, so GA4 is crediting a checkout reach that the Shopify sensor never sees.

  4. The one real change in 12 months: completion stepped UP in early November 2025, and both sensors caught it.

    Shopify-side completion broke from 64.6% to 73.4% at the week of Nov 3, 2025 (t=8.35). GA4 independently breaks two weeks later, 38.0% → 47.6% at Nov 17, 2025 (t=9.67). A step that size, found by both sensors within a fortnight, is real. Worth finding out what shipped to checkout around then — whatever it was, it is the most valuable checkout change of the year and nobody has been crediting it. Note it coincides with the holiday run-up, so some of it is seasonal mix rather than a code change.

  5. GA4 also counts 36% more sessions than the Shopify sensor — and the weekly pulse calls that gap "~10%".

    Using one consistent framing throughout: GA4 counted 36% more sessions than the Shopify-side pixel across the first 13 usable weeks and 36% more across the last 13, so the gap is flat — a fixed structural difference between the two sensors, not drift. Either way it is nowhere near the ~10% our reports assume. Any conversion rate carrying GA4 sessions in the denominator is biased low on top of the completion problem. Two weeks (Jun 8 and Jun 15) are excluded here — their Shopify-side session counts collapsed to a third of neighbouring weeks, which is a pixel gap rather than a traffic event; their rates track the neighbours fine, which is precisely why the rest of this page is built on ratios.

The headline

Two sensors, one funnel step

Both lines answer the identical question: of the visits that reached checkout, what share completed a purchase. Shopify-side is conversion_rate ÷ checkout_begin_rate from the pixel on the storefront and checkout. GA4 is ecommercePurchases ÷ checkouts. Because both are ratios of two rates, the comparison survives the fact that the sensors disagree about how many sessions there were.

Shopify-side GA4 event markers

The lower panel is the gap in percentage points. It is remarkably flat: the sensors are offset, not diverging. One GA4 glitch week (Sep 29, 2025, completion read 85.6%) is excluded from both panels and from every statistic on this page.

What changed and when

One real step, in early November 2025

Each series was tested for its strongest single break, sweeping every candidate week and scoring by Welch's t with a minimum of six weeks on each side. Glitch weeks are excluded so a one-week spike cannot capture the split.

Shopify-side completion
Breaks atNov 3
Before → after64.6% → 73.4%
t / weeks8.35 · 12v40
GA4 completion
Breaks atNov 17
Before → after38.0% → 47.6%
t / weeks9.67 · 13v38
The sensor gap itself
Breaks atJan 26
Before → after28.1pt → 25.4pt
t / weeks4.35 · 23v27

Read it this way. Both sensors independently find a large step up in completion within two weeks of each other in early-to-mid November 2025 — that is a real event, not instrumentation. The sensor gap's own break (Jan 26, 28.1pt → 25.4pt) is much weaker and simply reflects the offset tightening slightly. The action item is archaeology: find out what shipped to checkout in the first half of November 2025. Caveat honestly — that window is also the holiday run-up, when traffic mix shifts toward warm, high-intent buyers, so part of the step is seasonal. It did not fully give the gain back afterwards, which argues for a durable change on top of the seasonal one.

Testing our own footnote

The 18 May 2026 "GA4 break" did not happen

Since May the weekly report has carried a caveat that GA4's begin_checkout is degraded and the checkout stage should be read as directional only. That claim was made without a long baseline. Here is the baseline.

GA4 checkout-begin rate
Mar 2 – May 174.24%
May 18 – Aug 94.26%
Change+0.02pt
GA4 completion
Mar 2 – May 1747.85%
May 18 – Aug 946.29%
Change-1.6pt
Shopify completion
Mar 2 – May 1772.48%
May 18 – Aug 970.80%
Change-1.7pt

If GA4's checkout event had broken, its checkout-begin rate would have moved. It did not — it is flat to two decimal places. And the completion decline after that date is present in both sensors at almost identical magnitude, which is what a real (if mild) business softening looks like. Consequence: a genuine ~1.6pt deterioration in checkout completion since mid-May has been dismissed as a tracking artifact for three months. The GA4 checkout stage does have a serious problem, but it is a constant level error present all year, not a May event.

Every stage, both sensors

Where the sensors agree and where they don't

Small multiples, one panel per funnel metric, Shopify-side in green against GA4 in blue. The shape of the disagreement tells you the mechanism.

Shopify-sideGA4

The mechanism. The two sensors are close on add-to-cart rate but far apart on add-to-cart→checkout: Shopify sees ~94% of carts reach checkout while GA4 sees ~74%. GA4 is therefore recording checkout reaches that the Shopify sensor does not — inflating its denominator and deflating completion. Shopify's own abandoned-checkout rate (last panel) is the direct measure of the leak and is the number to quote.

Full series

All 52 weeks

WeekShopify sess.GA4 sess.S/G Shopify compl.GA4 compl.Gap Shopify cart→coGA4 cart→coAband. checkout
Aug 112025 210,179 284,614 0.74× 65.4% 37.5% 27.8pt 94.7% 54.2% 35.4%
Aug 182025 218,974 306,527 0.71× 61.3% 35.2% 26.0pt 95.9% 55.9% 39.3%
Aug 252025 212,412 292,195 0.73× 60.3% 34.8% 25.5pt 96.3% 58.3% 40.2%
Sep 12025 242,047 326,595 0.74× 70.0% 41.7% 28.3pt 97.0% 54.1% 30.9%
Sep 82025 206,161 274,762 0.75× 67.4% 36.8% 30.6pt 96.4% 56.7% 33.3%
Sep 152025 203,446 278,850 0.73× 66.1% 35.5% 30.6pt 96.6% 66.5% 34.4%
Sep 222025 220,883 289,082 0.76× 67.0% 37.0% 30.0pt 97.0% 79.6% 33.8%
Sep 292025 230,102 316,204 0.73× 65.2% 85.6%glitch — excluded -20.4pt 96.1% 81.6% 35.4%
Oct 62025 245,388 340,020 0.72× 64.9% 44.3% 20.6pt 96.2% 82.6% 35.9%
Oct 132025 246,296 331,115 0.74× 62.6% 35.8% 26.8pt 95.5% 82.0% 38.2%
Oct 202025 299,763 411,351 0.73× 62.8% 36.4% 26.4pt 94.3% 79.2% 37.8%
Oct 272025 256,274 342,408 0.75× 62.8% 37.6% 25.2pt 94.5% 78.5% 37.9%
Nov 32025 220,066 299,635 0.73× 69.5% 41.2% 28.3pt 95.7% 76.2% 31.2%
Nov 102025 213,619 297,524 0.72× 68.5% 39.8% 28.7pt 94.5% 77.4% 32.2%
Nov 172025 268,090 384,863 0.70× 77.0% 46.4% 30.6pt 94.2% 59.0% 24.1%
Nov 242025 268,373 372,027 0.72× 83.5% 50.4% 33.1pt 94.0% 56.8% 17.7%
Dec 12025 275,698 379,219 0.73× 79.5% 50.6% 28.9pt 95.1% 58.8% 21.8%
Dec 82025 167,233 231,906 0.72× 76.1% 48.2% 28.0pt 93.6% 71.2% 25.8%
Dec 152025 191,211 261,100 0.73× 80.6% 52.1% 28.5pt 94.6% 65.3% 21.6%
Dec 222025 164,889 221,999 0.74× 79.3% 49.0% 30.3pt 93.7% 70.3% 24.0%
Dec 292025 195,952 254,255 0.77× 78.4% 50.6% 27.8pt 93.6% 71.4% 24.3%
Jan 52026 195,710 266,621 0.73× 77.6% 47.5% 30.1pt 94.0% 77.8% 24.7%
Jan 122026 186,445 249,373 0.75× 77.4% 49.9% 27.6pt 93.8% 74.3% 23.0%
Jan 192026 193,464 241,816 0.80× 78.4% 51.4% 26.9pt 92.9% 70.5% 22.2%
Jan 262026 261,514 334,685 0.78× 67.2% 44.2% 23.0pt 93.4% 73.1% 33.5%
Feb 22026 177,261 245,361 0.72× 77.8% 51.4% 26.4pt 93.2% 55.2% 22.9%
Feb 92026 208,310 286,927 0.73× 72.2% 46.8% 25.4pt 93.4% 68.0% 28.6%
Feb 162026 246,325 344,718 0.71× 73.7% 46.4% 27.3pt 94.3% 76.3% 26.7%
Feb 232026 241,181 318,557 0.76× 71.1% 43.0% 28.2pt 93.2% 77.9% 29.3%
Mar 22026 218,041 290,157 0.75× 70.5% 43.6% 26.9pt 93.5% 76.8% 30.0%
Mar 92026 227,254 314,702 0.72× 70.2% 48.7% 21.5pt 94.6% 66.3% 30.3%
Mar 162026 193,480 271,958 0.71× 69.8% 46.5% 23.3pt 95.3% 70.6% 30.7%
Mar 232026 170,497 237,588 0.72× 70.0% 48.0% 22.1pt 94.1% 66.8% 30.5%
Mar 302026 171,359 243,907 0.70× 75.0% 51.1% 24.0pt 94.0% 64.7% 25.5%
Apr 62026 180,353 252,265 0.71× 70.5% 45.9% 24.6pt 95.1% 66.8% 30.3%
Apr 132026 173,297 234,956 0.74× 70.4% 46.1% 24.3pt 83.9% 64.2% 29.9%
Apr 202026 148,081 207,808 0.71× 77.9% 51.9% 26.1pt 94.4% 70.5% 22.9%
Apr 272026 152,863 226,060 0.68× 75.6% 49.7% 25.9pt 93.8% 74.7% 24.9%
May 42026 165,461 236,300 0.70× 75.3% 48.5% 26.9pt 92.9% 73.9% 25.0%
May 112026 155,053 221,016 0.70× 72.0% 46.4% 25.6pt 92.8% 72.9% 28.2%
May 182026 157,255 224,100 0.70× 76.2% 49.3% 26.9pt 92.8% 66.9% 24.7%
May 252026 137,605 202,591 0.68× 71.7% 61.3% 10.4pt 92.8% 70.9% 28.9%
Jun 12026 132,122 186,681 0.71× 69.3% 45.3% 23.9pt 94.2% 71.8% 31.2%
Jun 82026 70,259 181,209 0.39× 67.8% 43.4% 24.4pt 92.0% 72.5% 32.6%
Jun 152026 98,559 186,307 0.53× 66.9% 43.4% 23.5pt 94.2% 74.7% 33.4%
Jun 222026 118,877 172,914 0.69× 71.0% 45.7% 25.3pt 94.9% 82.5% 29.5%
Jun 292026 125,768 163,005 0.77× 68.3% 43.0% 25.4pt 95.4% 75.5% 32.2%
Jul 62026 133,271 169,595 0.79× 69.1% 42.4% 26.7pt 95.4% 76.2% 31.4%
Jul 132026 108,321 142,878 0.76× 71.6% 44.7% 26.9pt 94.8% 76.6% 29.1%
Jul 202026 111,339 140,375 0.79× 72.7% 45.2% 27.6pt 95.0% 75.7% 28.0%
Jul 272026 108,565 143,819 0.76× 73.5% 44.7% 28.8pt 95.0% 76.1% 26.9%
Aug 32026 109,708 135,843 0.81× 71.5% 47.1% 24.4pt 95.5% 74.4% 29.2%
Method

How this was built, and where it can be wrong

The metric is a ratio on purpose. The two sensors disagree about the denominator — Shopify-side rates are per visitor, GA4's are per session — and about how many sessions there were at all. Dividing conversion rate by checkout-begin rate cancels the denominator, so what remains is a genuine sensor disagreement about the funnel step rather than a units artifact.

What "Shopify-side" means here, precisely. It is the Intelligems pixel, which runs on the Shopify storefront and checkout and is independent of GA4. It is not Shopify's own ShopifyQL analytics — that endpoint returns a 500 on every query, including the vendor's own documentation example, so it could not be used as a third opinion. Two sensors, not three.

This does not prove Shopify is right and GA4 is wrong — only that they disagree, consistently, and that the mechanism points at GA4's checkout event. The supporting argument is that Shopify-side completion reconciles with the abandoned-checkout rate measured directly on the same pixel, and that 94% of carts reaching checkout is the more plausible figure for a store where checkout is one click from cart. A third sensor would settle it properly.

Excluded and flagged. Sep 29, 2025 is dropped from every statistic (GA4 completion read 85.6%, more than 3.5 median-absolute-deviations out). Weeks of 2026-06-08 (70,259) and 2026-06-15 (98,559) show sessions far below the ~130K neighbours. Treat those two weeks' ABSOLUTE counts as suspect (likely a pixel/tracking gap); the RATES still look continuous with neighbours, which is why this analysis leans on ratios.

Breakpoints are a single best split, not a changepoint model. With 52 points, sweeping for the strongest one break and reporting its t is as far as the sample honestly goes. Treat the dates as "the best-supported week", not a precise incident timestamp.

Refresh. GA4 pulls itself with the service account the Monday pipeline already uses. The Shopify-side series is an interactive Intelligems pull with no CI credential, so it is captured to reports/checkout-compare-shopify.json and must be refreshed by hand. Rebuild with node scripts/pull-checkout-compare.mjs && node scripts/build-checkout-compare-report.mjs.