Nadia MarinChief Information Officer · Essays & perspective
← All essays

Fresh forecasting5 min read

A forecast should be allowed to say it does not know

Machine-learning forecasts now place a growing share of fresh-food orders in European supermarkets. They should be judged on waste and late-day availability rather than headline accuracy, and they should order on their own only where they can show how uncertain they are.

Most grocery retailers in Europe are now buying or building machine-learning forecasts for fresh food, and most of the sales conversations sound alike. A vendor shows a chart in which its model's forecast tracks actual sales more closely than the store manager's order did, quotes an improvement in accuracy of some tens of per cent and proposes that orders be placed automatically. I have sat through that presentation several times and approved one of the projects that followed it. I think the technology is useful. I also think the usual way of buying and governing it is wrong in a specific and expensive way.

The flaw is that the forecasts are presented as single numbers. A model says that a store will sell forty-two trays of chicken thighs on Thursday, and the ordering system orders forty-two less what is on the shelf. What the number conceals is how confident the model is. Forty-two might mean somewhere between thirty-nine and forty-five, or it might mean somewhere between twenty and seventy. Those are very different statements, and in fresh food the difference is the difference between a full shelf and a skip.

Accuracy is the wrong headline

Vendors usually quote an accuracy measure averaged across products and stores. The average is dominated by high-volume, stable lines such as milk, yoghurt and packaged salad, where any competent method does reasonably well. It says little about the lines where a supermarket's fresh reputation is actually made or lost: the fish counter on a Friday, loose fruit in a coastal town in August, the delicatessen in the week before Christmas. A model can improve average accuracy considerably while getting worse in exactly the categories that matter most to shoppers.

At Ravessa we stopped using accuracy as the headline. The board now sees two measures for fresh food: shrink, meaning stock thrown away, marked down or written off as a share of fresh sales, and the availability of fresh lines at eight in the evening, when the after-work shopper arrives. The two pull against each other, which is the point. Any system can reduce waste by ordering less and emptying the shelves, or keep shelves full by ordering more and throwing food away. A forecast earns its place only if it improves both at once.

Measured that way, our results are good and less dramatic than the vendor's case. Shrink fell from 4.6 per cent of fresh sales in 2023 to 3.9 per cent in the twelve months to June 2026, about €11 million a year. Evening availability rose from 91 to 94.5 per cent. The business case had promised shrink of 3.2 per cent. I report both figures to the board, because the investment was approved on the first one and directors are entitled to see the gap.

Where the model is confident, and where it is guessing

The more important decision was where to let the model act alone. Our pilot in forty stores during the first half of 2024 showed that for packaged fresh lines, dairy and chilled ready meals, its errors were small and stable from week to week. For fish, butchery and delicatessen counters, and for loose fruit in coastal stores in summer, its errors were wide, and it gave no sign of knowing that. It ordered with the same apparent confidence whether the conditions resembled its training data or not.

So we required the model to produce a range as well as a number, and we gated automation on the range. Where the range for a category stayed narrow over several months, orders are placed automatically. Where it did not, the store manager receives a suggested order and approves or changes it. Today 58 per cent of fresh lines by volume are ordered automatically. That share rises as the model earns it, category by category, and it can fall again: when the range widens for a category, orders return to the manager without a meeting being needed.

Holy Week 2025 tested the arrangement. Spanish households buy fish in quantity in the days before Easter, and the coastal stores were busy with visitors as well. The model under-forecast fish in those stores by about 30 per cent. Because fish was not on automatic ordering, managers raised their orders, and most of the gap was covered. Had we followed the original plan and automated everything by Christmas 2024, that week would have produced empty counters on the most important fish days of the year.

An override is information, not insubordination

The common instinct, once a model is installed, is to treat store managers' overrides as resistance to be reduced. Override rates become a measure of adoption, and managers who change orders are asked to explain themselves. I think this has the logic upside down. A store manager who raises a fish order before a local fiesta knows something the model does not. If the override is recorded with a reason, it becomes data that can improve the next forecast. If it is merely counted and discouraged, the knowledge is lost and the manager stops offering it.

We made this mistake for the first three months: we recorded overrides without reasons, and learnt very little from them. Now every change carries a short reason code, such as local event, weather, supplier problem or display change, and the forecasting team reviews them every week. That review led directly to two improvements in September 2025: regional weather data, and the school holiday calendar of each region, since Spanish regions set their own term dates and a coastal store's August depends on the ones inland.

There is a workforce dimension to this, and it should be stated plainly. The original business case counted about €1.9 million a year of store managers' ordering time released. We have realised about half of it. Some of the time we kept is now spent on the decisions the model cannot make well, which I regard as a better use of an experienced manager than checking forty-two trays of chicken thighs. We discussed the change with the workers' representatives later than we should have, and I would start that conversation before the pilot next time.

For directors, the practical point is short. When management proposes automated forecasting, ask for the result in waste and availability rather than accuracy, ask which categories the model will order alone and how that list can shrink as well as grow, and ask what happens to the knowledge in an override. A forecast that can say when it does not know is worth more than one that is right on average.