Alen Capelja.
← Library

Assignment #2 · Measurement · November 2, 2026 · 5 min

Your GA4 sees 54 cents of every dollar

Before you make a channel decision, find out what share of your store's revenue your analytics can see.

The question

“How much of your store's revenue can your analytics see?”

The assignment

Divide 90 days of GA4 purchase revenue by the store's own order revenue. Then split out the orders that never touch the site.

54% of store revenue seen by GA4

Share of store revenue captured vs missed in the period reviewed

When I started working with an architectural products retailer, the first number I went looking for was how much of the store's revenue Google Analytics recorded. It was about 54 cents of every dollar. A year earlier it had been about 71 cents.

GA4 doesn't warn you. The reports still look complete, channels ranked and conversion rates to two decimals. This issue is how I found that number and why no budget moved until our model matched the store.

How I measured the gap

The method is plain and a bit tedious. Take the store's own order records for a period and GA4's purchase revenue for the same dates, both counted the same way, for example before tax and shipping. Divide GA4 by the store. That's your capture rate.

Then go down to single orders. GA4's transaction ID is the store's order number, so you can look each order up in both places and see which ones are missing.

It settles arguments too. When the client asked if Direct was paid traffic in disguise, we matched all 21 Direct orders from a nine-day window. Every one came from a registered account, mostly repeat trade buyers. Direct was real.

Where the other 46 cents went

The largest piece was structural. About 27% of the store's revenue came from orders staff entered by hand: phone orders, trade accounts, quotes and wholesale. Those orders never touch the website, so GA4 and the ad pixels can't see them at all. Split by the store's order source field, the ceiling was clear: even with perfect tracking, GA4 could only ever see a little over 70% of revenue.

That manual share had been steady, about 27% of revenue in the last 90 days and about 29% across every order on record. The rest of the gap sat on the website itself. The usual causes there are consent banners, ad blockers and checkouts that hand off to another domain. I didn't size each one separately.

Misfiled and double counted

Some of what GA4 did record was filed in the wrong place. The checkout-start event had been broken since March, so nobody could see where buyers dropped out. The best-selling category showed no revenue under its own name, because product data was formatted one way on the product page and another way at purchase. Meta's paid traffic landed in GA4's Paid Shopping group, so Paid Social read as zero.

The ad platforms went the other way. They claimed 4.2 times as much paid revenue as GA4 credited to paid on last click. Some of that was double counting: the order confirmation page sent about 17 to 19% more purchase events than there were real purchases, and Google Ads and Microsoft Ads had no way to drop the duplicates.

So GA4 undercounted and the platforms overcounted. Both looked precise. Only the store's records were actual orders.

Other accounts gave different answers. On an apparel brand, GA4 saw about 80 cents per store dollar. Organic Social sent 51,861 sessions with zero revenue, and sessions per order ran at 2.77 times its own clean baseline. On a pharmacy ecommerce operator, GA4 captured close to 100% of store revenue. All three ran on the same reporting setup, so you have to measure your own.

Why a 54% view leads you wrong

If the missing 46 cents were spread evenly across channels, you could scale the numbers up and carry on. It wasn't. Phone and trade orders here averaged close to three times the size of a web order, and those buyers heard of the brand somewhere before they picked up the phone. Whichever channel introduced them got no credit in GA4.

So the channels that look weak in GA4 may be the ones feeding the phone line, and the ones that look strong in the ad platforms may be partly counted twice. Each number looks reasonable on its own. Cut the wrong channel or fund the wrong one, and next month's report seems to confirm you were right, because it has the same blind spots.

Why the model had to match within 2%

Before any budget moved, I wanted a revenue model built on the store's orders that matched the store's own records within about 2%. This one came in within 1.8% of recorded revenue. Tested against what then happened, its forecasts were off by 4.9% of actual revenue over 30 days and 2.7% over 90 days.

The threshold is arithmetic. If your base number sits 20% away from the store's revenue, a channel that grew its revenue by 10% disappears inside the error. At 2%, you can see it. It also ends arguments about which tool to believe.

Alongside the model, we rebuilt the tracking. The developers got a written spec for how GA4 and the tag manager should send page data, and all 50 live ads moved to one UTM and custom-dimension standard.

What happened after

I want to be careful here. The paid, email and SEO results belong to the people running those channels. My part was the measurement and the model they planned against.

Blended paid return on ad spend reached 4.5x in Q2, up from 2.2x a year earlier. Google Ads went from 1.73x in 2025 to 3.78x for 2026 so far. Q2 email revenue was up 285% on Q2 a year before. In August, revenue was up 25.7% and orders were up 48%, both against the prior August.

I can't tell you how much of that came from better measurement and how much from better execution. These are attributed numbers too, and attributed isn't the same as incremental.

Do this Monday

This takes an afternoon.

  1. Pull 90 days of order revenue from your store and GA4 purchase revenue for the same dates, counted the same way. Divide GA4 by the store. That's your capture rate.
  2. Split store revenue by order source and take out what never touches the site, such as phone, manual and wholesale orders. What's left is the most GA4 could ever see. The gap between that ceiling and your capture rate is tracking you can fix.
  3. Look up a sample of store order numbers in GA4. Note which are missing and look for a pattern: a device, a payment method, a checkout step, a channel. Then check that neither GA4 nor your ad platforms record more purchases than the store has orders.

In one line: find out what share of your store's revenue GA4 can see, and don't move budget on its numbers until they match the store within a couple of percent.

Yewgo. Every Monday.

One assignment a week, in your inbox before Monday.

More from the Library