ProChefDesk
← Blog
Inventory & Stock Control

Restaurant Inventory Management: A System, Not a Spreadsheet

Most kitchens treat stock as a monthly chore — a spreadsheet someone fills in the day the accountant asks. That's not inventory management. It's bookkeeping after the money's already gone. The system is a loop, and it only pays you back when it runs on a cadence.

Ask ten chefs how they "do inventory" and nine will describe a spreadsheet. A tab with ingredient names down the left, a column for count, a column for cost, a total at the bottom. Once a month, someone spends a miserable Sunday walking the walk-in with a clipboard and typing numbers in. The total gets emailed to the office. Nothing changes.

That is not a food inventory system. It is a snapshot of a corpse. Real restaurant inventory management is a loop — six steps that feed each other, run on a fixed cadence, owned by a named person. Set par, order to par, receive and check, store FIFO, count, compute variance, then act on what the variance tells you and reset the pars. Skip any step and the loop breaks silently. Skip the last one — acting — and you've just built a very expensive habit that produces a number nobody uses.

The loop, not the list

Here's the whole thing in one line, because the shape matters more than any single step:

ParOrderReceiveStore (FIFO)CountVariance → back to Par

A spreadsheet lives at the "Count" step and pretends that's the job. It isn't. Counting is the cheapest, least valuable part — it only earns its keep because it feeds variance, and variance is the only step that hands you money. Everything before the count exists to make the count trustworthy. Everything after it exists to make the count useful. Let's walk it.

1. Par — the target you order back to

Par is the quantity of an item you want on hand at the start of each order cycle. Not the maximum, not the minimum — the sensible working level that carries you to the next delivery with a small buffer. If you order dairy on Tuesdays and Fridays and you burn through nine litres of cream between deliveries, your cream par is around eleven litres: enough to cover usage plus a cushion for a busy night.

Par is not a number you invent. It's calculated from usage, delivery frequency, and a safety buffer, and it drifts as your menu and covers change. Sizing par properly is its own discipline — I've written the full method separately — but the headline is that a par set once at opening and never revisited is worse than no par at all, because it looks authoritative while being wrong.

2. Order — to par, not to gut feel

With pars set, ordering stops being a guess. The order quantity is simply:

Order Qty = ParCurrent on-hand (rounded to the pack/case size)

You count what's there, subtract from par, order the gap. This is the single biggest reason to count more often than monthly: a count that only happens once a month means ordering is pure intuition for the other 29 days, and intuition over-orders. Every chef over-orders the things they're scared of running out of and under-orders the boring staples that quietly 86 mid-service.

3. Receive — the door is a control point

The delivery door is where inventory accuracy is won or lost, and it's the step kitchens rush the hardest. A driver's in a hurry, service is in two hours, someone signs the docket without checking. Now your system believes you received 10 kg of salmon when the box held 8.6 kg, and every downstream number is poisoned.

Check three things at the door, every time: quantity against the invoice, quality (temperature on chilled goods, condition, dates), and price against what you agreed. Reject what fails. Note substitutions. The count you do next week is only as honest as the receiving you did all week.

4. Store — FIFO or the count lies

First in, first out. New stock goes behind the old, dated, so the oldest gets used first. This isn't a poster on the wall — it's a shelving habit that decides whether your stock value is real or full of product that's about to hit the bin. If FIFO slips, you count a full shelf of yoghurt and record its full value, but a third of it expires Thursday. Your inventory says $X of usable stock; reality says $0.7X. Spoilage is variance you created at the shelf.

5. Count — same time, same units, same order

The count is worthless unless it's consistent. Three rules make it trustworthy:

Two people, one calling and one recording, beats one person doing both — not for speed, but because it kills the "I'll remember that one" errors. A stocktake done well is an hour; done badly it's an hour you have to throw away.

6. Variance — the step that pays

This is the whole point of the exercise, and it's the step spreadsheets almost never reach. Variance compares what you should have used against what you actually used:

Actual usage = Opening stock + PurchasesClosing stock

Theoretical usage is what your recipes say you should have used, given the dishes you actually sold: every sold plate multiplied by its recipe, summed per ingredient. The gap between the two — per ingredient, in weight and in dollars — is where your margin is leaking.

A worked example makes it concrete. Say for chicken breast over one week:

LineValue
Opening stock12.0 kg
Purchases (received)40.0 kg
Closing stock (counted)6.5 kg
Actual usage45.5 kg
Theoretical usage (from sold dishes)41.0 kg
Variance4.5 kg over

Four and a half kilos of chicken you paid for and can't account for in what you sold. At $9/kg that's about $40 in one week on one ingredient — call it $2,000 a year if it's chronic. Now the number does something: it points you at over-portioning, trim waste, a mis-scaled prep batch, staff meal that isn't logged, or the uncomfortable one, walking out the back door. Run variance across your top twenty ingredients by spend and you'll find the two or three that are quietly funding somebody's else's habit.

In ProChefDesk

The Inventory tool holds your item list, par levels and on-hand counts, and flags anything below par so ordering becomes subtraction, not guesswork. When you enter a count, the Variance view does the opening + purchases − closing math for you and lays theoretical usage (from sold dishes and their recipes) next to actual, per ingredient — so the leak has a name and a dollar figure instead of being buried in one blended food-cost number.

Who owns it, and how often

A loop with no owner doesn't run. Inventory needs one named person accountable for the count and the order — usually the head chef or a sous, not "whoever's free." Rotating the job guarantees inconsistency, and inconsistency is the one thing the count can't survive.

On cadence, the honest answer depends on volume and shelf life, but the defaults I'd argue for:

WhatHow oftenWhy
High-value / fast-moving (proteins, seafood, dairy)WeeklyMost of your money and most of your variance lives here
Full count (everything)Monthly, minimumTies to the P&L period; catches slow drift
Par reviewMonthly, or on menu changeUsage moves with covers and season
Dry / ambient staplesMonthlySlow to move, low spoilage risk

Weekly on the expensive dozen, monthly on the whole store. A full count every single week is a discipline most kitchens can't sustain, and a burned-out team counts badly — so don't over-engineer the cadence into something that collapses in month two.

The trap: counting on an irregular schedule is worse than counting less often on a fixed one. If you count Sunday, then the following Thursday, then three weeks later, your usage figures span different lengths of time and can't be compared — so variance is meaningless and you've done the work for nothing. Pick a cadence you can actually hold and hold it.

The three numbers the loop hands you

Run this properly and you get three outputs no spreadsheet-once-a-month kitchen ever sees clearly.

Stock value

The dollar figure sitting on your shelves right now. This is working capital tied up in the walk-in — money you've spent that isn't earning until it's sold. A kitchen carrying $18,000 of stock that turns over in ten days is healthier than one carrying $12,000 that turns in thirty. Watch it trend, not just its level.

Usage rate

How fast each item moves. Usage rate is what makes par calculable and what tells you which items are dead money. If you count a jar of harissa this month and it's the same jar you counted last month, that's not stock — that's a decision you made once and forgot to unmake.

Theoretical-vs-actual variance, per ingredient

The one that pays the rent, covered above. The per-ingredient breakdown is the difference between "our food cost is running a bit high" (useless) and "we're losing 4.5 kg of chicken a week and it started when we changed the portion scoop" (actionable). Industry bodies like the National Restaurant Association track food and labour as the two costs that decide whether an operation survives — and variance is the lever that moves food cost without touching your recipes or your prices.

Where kitchens actually fail

Not from ignorance of the loop — from breaking it in two predictable places.

Counting inconsistently. Different day, different units, different person, different level of care. The count becomes noise, variance becomes garbage, and after a few months of garbage everyone quietly stops trusting the number and reverts to gut. The fix isn't more counting — it's the same count, same way, every time. Boring consistency beats heroic effort here every single time.

Never closing the loop. This is the big one. Plenty of kitchens count diligently and even calculate variance — and then file it. The number gets looked at, someone says "hmm, that's high," and nothing happens. No portion gets re-checked, no par gets reset, no conversation gets had with the section that's bleeding. A loop you don't close is just accounting. The step that pays is the step after the number: change one thing, then watch next week's variance to see if it worked.

A blunt test: if last month's variance report didn't cause a single change in the kitchen — a portion adjusted, a par reset, a supplier queried, a conversation had — then you don't have an inventory system. You have a filing system. The two look identical right up until the P&L arrives.

What to actually do this month

If your current setup is a spreadsheet you dread, don't try to build the whole loop at once. Start where the money is:

  1. List your top fifteen items by spend. Proteins, seafood, dairy, oils, premium produce. Ignore salt and toothpicks for now.
  2. Set a rough par for each from a week of real usage and your delivery days.
  3. Count those fifteen weekly, same night, same units, same count sheet in shelf order.
  4. Compute variance on them against what you sold. Even by hand it's fifteen rows of subtraction.
  5. Act on the worst one. One change a week — a scoop, a scale, a par, a supplier line. Then check next week's number.

Fifteen items, weekly, closed loop, beats two hundred items counted once a quarter and filed. Every time. The scope grows itself once the habit's in and the team sees the leaks getting plugged.

The point

A spreadsheet is a photograph of your stock at one moment. A system is the loop that keeps the photograph honest and does something with it. The math in any single step is trivial — subtraction, mostly. The value is entirely in the cadence and the closing: counting the same way every week, and letting the variance change what happens on the line the following week.

Do that and food cost stops being a number the accountant reports to you three weeks too late, and becomes a dial you turn yourself, in real time, in your own kitchen. That's the difference between managing inventory and merely recording it.

"We counted every month for two years. The day we started acting on the variance was the day it started saving us money."