Skip to content
fleetable

What does a failed chilled delivery actually cost?

By Muhamed Selmani, Founder

Food waste from failed deliveries is five lines, not one: the stock written off at landed cost, the recovery run or emergency purchase, the sales lost while the shelf was empty, the hours your team spent absorbing it, and the customer outcome. The delivery charge is the smallest of them. No published percentage describes your operation, so the number worth having is your own, measured over a quarter from a rejection log.

The delivery charge is the smallest number in the calculation

A finance lead sees one number for a delivery — the carriage line — and a failure costs five. That asymmetry is the whole subject. The carriage line is contracted, known in advance and lands on a statement. The other four are larger, and they scatter across accounts nobody adds together: stock write-off, recovery, lost sales, and the hours somebody spent fixing it.

It is also how the cheapest delivery becomes the expensive one. The saving is visible every month and the exposure is invisible until the morning it happens, which is precisely the shape that survives a budget round and then costs a service.

The five lines to add up

None of these is hard to measure. They are hard to attribute, which is a different problem and a solvable one: attribution needs a field on a form, not a model.

What a failed delivery costs, and how to instrument each line

  • Stock, at landed cost. The ingredient, the labour and the packaging are already spent, so prepared food is written off at full value rather than at the price on the delivery note. Instrument: a write-off reason code that names the delivery.
  • Recovery. The second run, the emergency purchase at whatever the spot price is that morning, the overtime. Instrument: a purchase reason code, and a rule that recovery spend is booked against the failure rather than into general purchasing.
  • The service gap. Covers not sold, a line withdrawn from the menu, a shelf empty through the trading window, a site that opened short. Instrument: sales on the affected lines that day against a comparable day — the crude version beats not doing it.
  • Labour. The chef who re-planned, the goods-in person who waited, the manager on the phone, the account manager writing it up. Salaried hours feel free and are the largest recurring line here. Instrument: 15-minute increments, logged by role on the same form as the rejection.
  • The customer outcome. A credit, a cancelled cover, a delisting, a group that stops calling you first. Hard to attribute to one event, and attributable in aggregate. Instrument: record it rather than estimate it, and read the notes quarterly.

Spoilage, waste and shrinkage are three different words

They get used interchangeably and they measure different things, which is one reason published figures do not compare. Spoilage is product that went off. Waste is product thrown away for any reason, including over-production and trim. Shrinkage is the aggregate gap between what the system says you hold and what you actually hold — theft, mis-picks, short deliveries, unrecorded write-offs and spoilage all land inside it.

A delivery failure shows up in all three, and it cannot be pulled back out wherever the reason code stops at wastage. That is the finding worth having: the delivery-caused share of shrinkage is not a number you look up, it is a number you make visible by changing one field on a form.

Why nobody can give you a percentage, including this piece

The honest answer to how much stock is lost to cold chain failure is that no published figure describes your operation. Before using one, read what it pooled: retail alongside foodservice, categories and countries together, a chilled distribution centre averaged with a restaurant group whose failure mode is a missed window rather than a compressor. Quoting one at you would be quoting somebody else's business back as though it were yours.

Fleetable publishes no benchmark here for the plainest reason available: it has no audited one. The measurement below is yours to run. It takes a quarter, and at the end of it you hold a figure that is about your own sites.

The arithmetic, with every input assumed

Numbers help here, as long as nobody mistakes them for measurements. What follows is arithmetic on invented inputs, and the output worth keeping is the ratio rather than the total.

Worked example

One rejected chilled delivery

Assumptions

  • Assume the carriage line is £95 ex VAT — the from-price on this site's rate card, and the smallest number here by design.
  • Assume the load is worth £2,000 at landed cost. Chilled and prepared food is light and expensive, so a modest stack reaches that quickly.
  • Assume half of it is judged unsellable after the break.
  • Assume recovery costs £250: a second run, and a spot purchase to cover the gap.
  • Assume 4 hours of salaried time across the kitchen, goods-in and the office, at £25 an hour fully loaded.
  • Assume one site loses £400 of sales on the affected lines that day.
  • Every figure above is an assumption chosen to show the arithmetic. None is measured, and none is a benchmark.

Working

  1. Stock written off — £1,000
  2. Recovery — £250
  3. Sales lost — £400
  4. Labour — £100
  5. Carriage on the failed route — £95 ex VAT
  6. Exposure on one failure — £1,845
  7. The carriage line as a share of it — around 5%

So: Change every input and the shape holds: the carriage line is the smallest one, and the exposure is set by the value of the load and the sales behind it rather than by the price of the vehicle. Which is why a decision taken on the carriage line alone — a cheaper provider, fewer routes, a bigger drop each time — is being taken on the one number that barely moves the total. Put your own figures in; the ratio is the output, not the pounds.

Instrumenting it: the rejection log

One form, one field, one monthly review. That is the whole programme, and it works because it changes attribution rather than adding measurement.

Then read it for shape before you read it for a total. One annual total spread evenly across 40 routes, and the same total concentrated in 3 handovers, call for completely different action — and only the log tells you which you have.

One row per incident

  • Date, site, route and provider, so a pattern can be traced to a joint rather than to a season.
  • What happened, in one line, and which handover it happened at.
  • The temperature reading and the time it was taken, where there is one.
  • Stock written off, at landed cost.
  • Recovery spend, carrying the reason code that ties it back to this row.
  • Time spent, in 15-minute increments, by role.
  • Sales impact, where the site can see it.
  • The decision taken, and who took it.

What a contract can do about it, and what it cannot

Start with what it cannot. Where carriage runs on the Road Haulage Association's conditions of carriage, a carrier's liability for the goods is capped by weight rather than by value — a figure per tonne, set by the edition your contract names. Fleetable contracts on the RHA Conditions of Carriage 2026, which caps it at £1,300 per tonne, or £1.30 a kilo. Chilled and prepared food is light and expensive, so a load worth several thousand pounds can sit under a cap of a few hundred, and claims for indirect or consequential loss are capped at the carriage charges. The cap can be raised, by written notice before the goods move rather than after a loss. Read that against your own arithmetic before you assume the load is covered.

What a contract can do is reduce how often this happens, which is where the money actually is. The terms that move the number are operational: a named backup, so a driver off sick is not a missed service; one named contact, so a decision takes minutes rather than a morning; a fixed sequence, so the same site is not always last; and one measure — on-time-in-full, per route, with the drops behind the figure visible — so the review is about a record rather than an impression.

And the cheapest way to find out whether a provider changes the number is to run one route alongside the current one for a few weeks with the log running, and compare like for like. You get a measured baseline instead of an argument, and nothing has to switch while you collect it.

FAQ

Questions, answered.

How much stock does a food operation lose to cold chain failure?
No figure is quoted here, and treat anyone offering one with suspicion. Published waste and shrinkage numbers mix retail with foodservice and categories with each other, so none of them describes your sites. The measurable version is your own, from a rejection log, over a quarter — and it is the only one a supplier review cannot argue with.
Should a rejected delivery be charged for?
That is a commercial question set by the contract rather than by law, so agree it in advance: what happens to the carriage charge when a load is rejected, when a recovery run is chargeable, and what evidence triggers each. Worth remembering that the carriage charge is the smallest of the five lines, so winning that argument is a small win.
Can I claim the value of the load back from the carrier?
Only as far as the contract allows. The Road Haulage Association's conditions cap a carrier's liability by weight rather than by the value of the goods, at a figure per tonne set by the edition the contract names — £1,300 per tonne under the RHA Conditions of Carriage 2026, which is what Fleetable contracts on — and consequential loss at the carriage charges. Goods-in-transit cover is contractual rather than statutory, so the limit and the basis are yours to require. Ask who responds when the goods are on a subcontractor's vehicle.
Is spoilage the same as shrinkage?
No. Spoilage is product that went off; shrinkage is the whole gap between recorded and actual stock, which includes spoilage along with theft, mis-picks and short deliveries. Delivery-caused loss lands in both, which is exactly why the reason code on the write-off decides whether you can ever see it.

Start

Not a sales call. A diagnosis.

Book a capacity reviewCall