The Economics Behind the 7%: Why the Price Gap Nobody Noticed Was the One That Worked
The 23% made the front page. The 7% kept the machine running for years, and the reason is that a small recurring overcharge is the only kind that survives detection.
There is a version of this story that everybody already knows. A grocery app quietly charged different people different prices. A journalist found out. The public got angry. The company stopped. Endings don’t get cleaner than that.
But something in the numbers doesn’t fit that story, and the misfit is the interesting part.
In December 2025, Consumer Reports ran a live test with 437 shoppers across four US cities. The finding that travelled was 23% — the widest gap between two shoppers looking at one identical item. That number is real, and it is also the least useful number in the study. The average difference between two otherwise identical grocery baskets was closer to 7%.
A 23% overcharge on a carton of milk gets noticed. A 7% gap on a $180 basket is $12.60. You will not notice $12.60. On a weekly shop, though, that’s $655 a year, and the researchers’ extrapolation for a family of four came to about $1,200.
So why did the smaller number produce the bigger outcome? Because of three properties that have almost nothing to do with pricing theory and everything to do with how attention works.
One: it hides inside variance that already exists
Grocery prices move constantly. Sales end, produce goes out of season, a store runs a promotion on one aisle and not another. Shoppers have learned to attribute price changes to the store, the item, the week — to anything except themselves.
A 7% gap slips into that noise perfectly. It doesn’t require a shopper to be inattentive. It requires only that the surrounding world be noisy, which it is. The manipulation isn’t hiding in a dark corner; it’s hiding in broad daylight, in a category where prices were always a little unpredictable.
This is a general principle, and it’s the one worth taking to your own pricing decisions. The safest place to hide a smaller number is inside a legitimate variation that people have already accepted. The 23% stood out because it exceeded the normal range. The 7% survived because it didn’t.
Two: it is undetectable without aggregation
Here’s a thought experiment that explains the whole incentive. Suppose your neighbour is paying 7% less than you for the same groceries. How would you ever find out?
You can’t see their receipt. You can’t compare carts across accounts. You’d need a controlled test with hundreds of recruited shoppers, a standardised basket, and four cities — which is exactly what it took. It required investigative journalists, two advocacy organisations, and months of work to establish something that was happening to millions of people at once.
That asymmetry is the business model. The person who can see the pattern is the seller. The person who bears the cost sees only their own cart. Any practice whose detection requires aggregation on the buyer’s side but not the seller’s is not a fair fight, regardless of what the terms of service say.
Three: the harm arrives in instalments
$12.60 is not a grievance. It is a rounding error, and the human mind files it accordingly — no complaint, no switch, no memory.
But the compounding is real, and it’s invisible in the same way. Fifty-two weeks of a rounding error is a holiday the family didn’t take. The reason nobody escalated isn’t that the sums were trivial. It’s that each individual sum was trivial, and the total never appeared in any single moment where someone could react.
This is what makes the practice so durable and, from a trust standpoint, so expensive. A visible overcharge produces a complaint, and a complaint produces a fix. An invisible one produces nothing — no feedback loop, no correction, no signal. The company keeps doing it because nothing in the system ever tells it to stop. It isn’t that they got away with it. It’s that there was never a mechanism by which they could have been caught by the customer.

What this means if you set prices for a living
The practical lesson isn’t “don’t personalise.” It’s narrower and more useful than that.
Ask of any pricing variation: would a customer detect this if they compared notes with one other person? If the answer is yes, you are in a negotiation, and you should expect the negotiation. If the answer is no, you are relying on an asymmetry — and asymmetries that depend on the customer’s blindness have a way of becoming public on somebody else’s schedule.
The second lesson is about which number you put in the deck. Nearly three in four grocery items in that study carried more than one price, and almost no shopper reported experiencing it. That gap between what was happening and what people perceived is the actual finding. Not the size of the overcharge — the size of the blind spot.
Every pricing model has one. The question is whether you know where yours is, or whether you’re going to find out from a journalist with 437 shoppers and a very patient spreadsheet.