GUIDE 04 / 09
Restaurant stock management: from requirement to order
Restaurant stock management means having, at every service, what you need to last until the next delivery, no more and no less. The method starts from forecast sales, goes through the recipe cards, arrives at the quantity to order, then comes back to the stocktake variance.
Set the coverage period
Well-managed stock is neither full nor empty: it covers needs until the next delivery. So the first question is not ‘how much is left?’ but ‘how long does it have to last?’
This coverage period is set supplier by supplier: the fresh produce wholesaler sometimes delivers every day, the frozen food supplier once a week. Ordering ‘for the week’ when you get deliveries every other day ties up cash, clutters the cold room and brings products closer to their expiry date. Also note the order cut-off time: miss it and the delivery slips, and the period gets longer.
The example followed through this guide: a burger restaurant cuts its own chips on site. Its potatoes are delivered on Saturday morning, then on Monday, and it is closed on Sunday. So the order placed on Friday has to cover Saturday lunch and Saturday dinner, not the following week.
Example: figures made up for the calculation, carried over from section to section.
From forecast sales to ingredients
The requirement starts from forecast sales, dish by dish and service by service: the method for restaurant sales forecasting has its own guide. Each dish is then broken down into ingredients using its recipe card, which sets the weight of each component.
Requirement = sum of (forecast portions × quantity per portion)
Add up in a common unit: an ingredient used in three dishes, counted in grams here and in units there, is converted before it is summed. The weight on a recipe card is often a prepared weight, peeled, trimmed or cut; the supplier, on the other hand, sells it raw. Yield links the two.
Yield = usable weight ÷ purchased weight
Raw requirement = prepared requirement ÷ yield
Measure the yield by weighing before and after, over several preparations, and correct only once: if the recipe card already gives a raw weight, dividing again inflates the order.
In the example, the forecast shows 160 portions of chips for Saturday lunch and 120 for dinner, so 280 portions of 150 g of cut potatoes: 42 kg. With a measured yield of 80% after peeling and cutting, the raw requirement comes to 42 ÷ 0.80 = 52.5 kg.
Allow a margin: safety stock
A forecast is always slightly wrong, and a supplier can deliver late. Safety stock covers these two risks, and nothing more.
Safety stock (demand) = usual forecast error (portions) × quantity per portion ÷ yield
Safety stock (delivery) = average daily usage × possible days of delay
The usual error can be measured: it is the average gap between forecast and sold over the last comparable services. Without this history, start with a modest margin and review it after a few weeks of stocktakes.
On fresh produce, the margin has a limit: it has to be used before the use-by date, otherwise safety turns into waste. On dry or frozen goods it can be wider, as long as you keep track of how it rotates.
In the example, Saturday’s forecast is off by 20 portions on average: 20 × 150 g ÷ 0.80 = 3.75 kg, rounded to 4 kg of raw potatoes.
Calculate the quantity to order
From the requirement, subtract what is already there and what will arrive in time. The result never goes below zero: enough stock means ordering nothing.
To order = max(0, raw requirement + safety stock − usable stock − confirmed deliveries arriving in time)
Usable stock is not counted stock: a product that is damaged, opened and kept past its time limit, or whose use-by date falls before it will be used, is not part of it. A delivery only counts if it is confirmed and arrives before the service concerned.
Then round to the supplier’s pack size: bag, case, parcel. The surplus from a case is not a rise in demand; track it separately, as it will reduce the next order. If the supplier sets a minimum order for free delivery, top up with long-life dry goods rather than fresh produce.
| Step | Calculation | Result |
|---|---|---|
| Forecast portions | 160 (lunch) + 120 (dinner) | 280 portions |
| Prepared requirement | 280 × 150 g | 42 kg |
| Raw requirement | 42 kg ÷ 0.80 | 52.5 kg |
| Safety stock | 20 portions × 150 g ÷ 0.80, rounded | 4 kg |
| Usable stock | 14 kg counted − 2 kg damaged, set aside | 12 kg |
| To order | 52.5 + 4 − 12 − 0 | 44.5 kg |
| Ordered | 2 × 25 kg bags | 50 kg |
| Surplus to track | 50 − 44.5 | 5.5 kg |
Rotate the stock: FIFO, use-by and best-before dates
On delivery, check quantities, temperatures and dates, then put stock away on the FIFO principle, first in, first out: the new delivery goes behind or underneath the old one. When a newer product has a shorter date, the date decides. These checks also feed HACCP traceability.
The two dates are not read the same way. The use-by date (DLC in France), marked ‘use by’, is mandatory: from the following day the product can no longer be offered for sale, and eating it is a health risk. It comes out of usable stock. The best-before date (DDM), marked ‘best before’, is indicative: the product may lose flavour, but selling it is not an offence; the business remains responsible for its safety.
Days of cover = stock ÷ average daily usage
Stock turnover = usage over the period ÷ average stock over the period
A product whose cover exceeds its shelf life will end up in the bin. A dry product that covers several weeks does not go to waste, but it ties up cash and space: it is slow-moving stock, to be ordered less often or in a smaller pack size.
Do the stocktake and read the variance
The stocktake compares what should have been used with what actually was. Always count at the same time, before service or after closing, and in a single unit per product. There is no need to count everything every week: a rolling stocktake covers expensive or fast-moving products (meat, cheese, chips) every week, and the rest every month.
Actual usage = opening stock + purchases − closing stock
Theoretical usage = sum of (portions sold × quantity per portion ÷ yield)
Variance value = (actual usage − theoretical usage) × unit purchase price
In the example, 268 portions were sold on Saturday. Theoretical usage: 268 × 150 g ÷ 0.80 = 50.25 kg. Actual usage: 14 kg counted on Friday + 50 kg delivered − 8 kg counted on Monday = 56 kg. The 5.75 kg variance includes the 2 kg of damaged potatoes set aside on Friday; the 12 portions cut in advance and thrown away at closing account for 2.25 kg. That leaves 1.5 kg, to be looked for in the portions served or in the yield.
| Product | Theoretical | Actual | Variance | Purchase price | Variance value |
|---|---|---|---|---|---|
| Potatoes | 50.25 kg | 56 kg | 5.75 kg | €0.80/kg | €4.60 |
| Burger patties | 250 units | 258 units | 8 units | €1.50/unit | €12.00 |
| Bacon | 3 kg | 3.5 kg | 0.5 kg | €14/kg | €7.00 |
| Cheddar | 5 kg | 5.4 kg | 0.4 kg | €12/kg | €4.80 |
Rank variances in euros, not in kilos: the potatoes weigh the most, the patties cost the most. Then name the cause: a forecasting error, a portioning error, a stock error (unrecorded waste, delivery entered incorrectly) or a recipe card error.
Common mistakes
Ordering out of habit, ‘like last week’, without looking at the forecast or the date of the next delivery.
Forgetting the yield, or applying it twice: the order falls short or overflows, and nobody knows why.
Counting as usable a product that has been opened, is damaged or whose use-by date falls before it will be used.
Reading the surplus from a case as a rise in demand, or a stock-out as a fall: when a dish ran out, sales show what was left, not what would have sold.
Reaching the free-delivery minimum with fresh produce that will not be used before its date.
Mixing up units: a case of six bottles counted as one bottle skews both usable stock and the stocktake.
Counting without costing, or costing without looking for the cause: a variance that goes unexplained comes back the following week.
Frequently asked questions
How do you calculate the quantity to order? Add up the requirements for the period (forecast portions × portion weight ÷ yield), add the safety stock, subtract usable stock and confirmed deliveries, then round to the supplier’s pack size.
How often should you do a stocktake? In France, a commercial company, like a sole trader, must check its assets and liabilities with an inventory at least every twelve months. For managing purchasing, that is not often enough: count expensive or fast-moving products every week, and the rest every month.
What is the difference between PEPS and FIFO? None: PEPS is simply the French for FIFO (first in, first out). In the kitchen, the expiry date takes precedence over the arrival date: the product that expires first goes out first.
How much food does a restaurant waste? In 2024, ADEME (French environment agency) published the sector’s first averages: 180 g of food waste per cover in traditional restaurants, 110 g in themed restaurants and 80 g in bars and brasseries, counted from preparation to plate leftovers. It notes that data are still scarce.
Do you need software? To get started, a spreadsheet, up-to-date recipe cards and a regular stocktake are enough. Software earns its place when POS sales have to be turned into requirements every day, or when several sites place orders: that is the role of Enskel’s Stock module.
Sources
- Service-Public, ‘Use-by date (DLC), best-before date (DDM), freezing date’ www.service-public.gouv.fr
- Entreprendre Service-Public, ‘Accounting obligations of a commercial company’ entreprendre.service-public.gouv.fr
- Entreprendre Service-Public, ‘Accounting obligations of a trader (sole trader)’ entreprendre.service-public.gouv.fr
- ADEME, ‘Food waste in commercial food service’, key figures 2024 librairie.ademe.fr