Restaurant Inventory Management: Stop Tying Up Cash and Throwing Out Expired Stock

Restaurant inventory management — stop tying up cash and throwing out expired stock

Every time you open the freezer there's a bag of pork nobody remembers buying. Out back sit three cases of cooking oil and two dozen bottles of oyster sauce you grabbed because they were on sale. Yet on payday, there isn't enough in the account to cover staff wages. That's what "stock nobody is managing" looks like — and almost every small restaurant has it.

Your ingredient stock is cash that has changed shape and moved into the freezer and onto the shelves. Too little, and your best-seller runs out in the middle of the rush and customers walk. Too much, and cash gets tied up, food expires and costs creep up without you noticing. This article walks you through a restaurant inventory system a small shop can actually keep up — no expensive software, just one sheet of paper and a few minutes a day.

Overstocking costs more than you think

Plenty of owners believe buying in bulk is safer and cheaper. But stock you don't need carries at least 4 hidden costs:

A common example: you stock up on sauces and dry goods during a promotion — ฿15,000 in total for a 5% discount, a saving of ฿750. But that batch takes 3 months to use up. If a bottle or two expires along the way, or you have to borrow to make payroll, the ฿750 saving is gone. A bulk discount only pays off when the stock gets used quickly and the shop still has enough cash left over.

Step 1: Know what your ingredients actually cost you

Most owners know how much they bought this month, but not how much they used. The two numbers aren't the same: some of this month's purchases are still sitting in the fridge, and some of what you used this month was bought last month. The standard formula is:

Ingredients actually used = opening stock + purchases during the month − closing stock

For example, your opening count is worth ฿12,000, you buy ฿65,000 during the month and your closing count is ฿18,000. What you actually used is 12,000 + 65,000 − 18,000 = ฿59,000. If you only look at the ฿65,000 you spent, you'll think your costs are ฿6,000 higher than they really are — and might raise prices for no reason. It works the other way too: in a month when stock runs down, purchases look low and you'll think you're doing better than you are.

This number is the foundation of an accurate food cost %. See how to take it further in How to calculate food cost — the formula.

Step 2: Split ingredients into 3 groups (ABC) and control them differently

A typical made-to-order (ahan tam sang) shop might carry 60–100 different ingredients. Nobody can keep counting all of them every day for long. What works is grouping them by how much you spend on each per month:

The easiest way to find your group A is to take last month's purchase receipts, total them by ingredient and sort from highest to lowest. Most shops find that a handful of items at the top are the ones to watch — and also the ones that hurt most when they're stolen, go missing or spoil.

Step 3: Decide how many days each item should last

Instead of asking "how many kilos of pork should I have?", ask "how many days of pork should I have?" and convert that into a quantity. Three things matter: shelf life, how long your supplier takes to deliver, and how much your sales swing.

Reorder point = daily usage × (lead-time days + safety days)

Here's an example for a made-to-order shop selling about 150 plates a day (made-up numbers for illustration):

IngredientUsed per dayLead time (days)Safety (days)Reorder pointMax stock
Minced pork8 kg0 (morning market)18 kg16 kg (2 days)
Chicken breast5 kg1110 kg15 kg (3 days)
Eggs4 trays118 trays16 trays (4 days)
Rice12 kg2248 kg90 kg (~1 week)
Cooking oil3 L2212 L24 L (~1 week)
Takeaway boxes60333601,000 (~2 weeks)

When a count drops below the reorder point, top up to the max stock level — and no further, however good the promotion. As a rule of thumb, fresh ingredients cover 1–3 days and dry goods and packaging 1–2 weeks; the right numbers for your shop come from adjusting after 2–3 weeks of real counts. It's the same idea as the par level explained in How to reduce kitchen waste.

Step 4: Set rules for receiving and storage

Whether you can control stock depends as much on how goods come in as on how they go out. Simple rules worth having:

  1. Weigh and count every delivery — especially group A. If you order 10 kg of pork and get 9.4 kg, the missing 0.6 kg at ฿150/kg is ฿90 each time. If that happens every day, it's thousands of baht a month.
  2. Check quality before you sign — send back anything that isn't fresh on the spot. Don't accept it and throw it out later.
  3. Write the delivery date on every bag or box — masking tape and a marker pen are enough.
  4. First in, first out (FIFO) — arrange shelves and freezers so older stock is always at the front.
  5. Give everything a fixed spot — items without a home are the ones that get forgotten and bought twice.
  6. Keep every receipt — receipts are your record of what you bought, how much and at what price, and they're the starting data for every step in this article.

Step 5: Make counting a habit, not a big job

A stock count you'll actually stick with takes no more than 10–15 minutes and happens at the same time every day — after closing, say, or before heading to the market in the morning. Make your count sheet a simple table listing items in the order they're physically stored (freezer → fridge → dry-goods shelf) so you can count everything in one walk-through.

The sheet needs these columns: ingredient, unit, reorder point, max stock, quantity counted, order? (yes/no). That's it — your count sheet doubles as tomorrow's shopping list, so no more guessing at the market.

At month end, count every item and multiply by the latest unit price to get your "closing stock value" for the formula in Step 1. It also becomes next month's opening stock.

Step 6: See how many days of cash are sitting in your stock

Once you have your stock value and the cost of ingredients actually used, you can work out how many days your current stock will last — which tells you right away whether too much cash is tied up:

Days of stock on hand = closing stock value ÷ (ingredients actually used ÷ days open)

Continuing the example: you used ฿59,000 over 26 trading days, about ฿2,270 a day on average. Closing stock of ฿18,000 means you're holding roughly 8 days of stock. For a shop that mostly uses fresh ingredients bought at the market every day, that's on the high side — there's probably surplus dry goods or stockpiled items. Trace which items that big chunk of value is sitting in.

There's no single right number for every restaurant. A shop using imported ingredients or ordering in bulk from another province needs to hold stock longer than one next door to a market. What matters is tracking this number every month and watching the trend. If it keeps creeping up while sales stay flat, more and more of your money is ending up in the freezer.

💡 If you can only do one thing, count group A every day and compare it with sales. Say you used 8 kg of pork today and sold 100 pork dishes. If the recipe calls for 70 g per plate, you should have used only 7 kg. That missing 1 kg is a sign of over-portioning, waste or stock going missing — the sooner you spot it, the less money you lose.

Common inventory management mistakes

Receipts are where controlled stock begins

Every step above needs the same data: what you bought, how much, the unit price and how it's changing. If your receipts are still piled in a drawer, finding your group A, knowing your monthly purchases or valuing your stock becomes a job nobody wants to do.

Bunchee isn't a full inventory system, but it handles the hardest part: capturing your purchase data. Snap a photo of a receipt and AI reads the items and prices and sorts them into categories. You can see the price history of each ingredient — how much pork or eggs have moved — check the monthly ingredient purchases you need for the cost formula, and ask the AI assistant "how much did I spend on pork this month?" without adding it up yourself.

Restaurant inventory management doesn't have to be complicated. Just know what's expensive (ABC), how much you should hold (reorder point to max stock) and count consistently. The cash that used to sit in your freezer turns back into money the shop can use, and expired food slowly disappears from the bin.

Keep every ingredient receipt in one place

Bunchee is a free restaurant accounting app — AI receipt scanning, automatic categories, ingredient price history charts and real-time daily/monthly summaries.