How to calculate food cost — the honest formula
Most food cost conversations in India start wrong because operators quote "plate cost" — a single dish's ingredient cost divided by its menu price. That's a menu engineering number, not food cost. Real food cost is a period measurement:
Opening inventory is the rupee value of ingredients on shelf at period start. Purchases is what you bought. Closing inventory is what's left. Divide by food revenue — not total revenue, separate beverages.
A real weekly example — 40-cover Indian restaurant, ₹6L/month food revenue
Take a casual-dining North Indian restaurant in Koramangala, Bengaluru. 40 covers, does about ₹6,00,000 in food revenue per month, or roughly ₹1,50,000 per week. Here's a real weekly food cost calculation:
| Line item | Amount (₹) | Notes |
|---|---|---|
| Opening inventory (Monday 8am) | 1,20,000 | Physical stocktake of dry stores + cold store + freezer at rupee cost |
| + Purchases during the week | 90,000 | Vegetables (35k) + dairy (18k) + meat (22k) + groceries (10k) + spices (5k) |
| − Closing inventory (Sunday 11pm) | 1,05,000 | Physical stocktake again, same method as opening |
| = Cost of Goods Sold (COGS) | 1,05,000 | What actually left your storeroom this week |
| Food Revenue this week | 3,50,000 | Weekly total including dine-in + Swiggy + Zomato + direct |
| Food Cost % | 30.0% | 1,05,000 ÷ 3,50,000 × 100 |
That's a healthy number for a casual-dining North Indian restaurant. If the same calculation comes back at ₹1,40,000 COGS on the same ₹3,50,000 revenue, you're at 40% — and you've quietly lost ₹35,000 that week. Over 52 weeks that's ₹18.2 lakh gone. This is why weekly matters and monthly doesn't.
The 30% target — is it right for your segment?
The "30% food cost" rule is a casual-dining benchmark that got repeated so often it became gospel for every restaurant. In reality, the target varies dramatically by segment because ingredient mix, ticket size, labour ratio, and rent burden all pull the number in different directions:
| Segment | Ideal food cost % | Reasoning |
|---|---|---|
| QSR / Fast food | 28-30% | High volume, standardised recipes, tight portion control, limited menu — food cost is the primary lever because labour and rent per ticket are already thin |
| Casual dining | 30-32% | The classic benchmark. Menu depth adds complexity and yield loss; you're paying for variety and dine-in service |
| Fine dining | 32-35% | Premium proteins (mutton, prawns, imported cheese) carry higher raw cost, but the ticket size covers it; guests pay for the ingredient, not just the labour |
| Cafe / Chai-and-snacks | 22-26% | Coffee, tea, packaged snacks and baked goods carry very high gross margin; food cost should be your lowest number |
| Bar (food side) | 18-22% | Bars sell food as a legal requirement and a soaker; food is a means to the alcohol margin, not the primary profit driver |
| Cloud kitchen | 26-30% | No dine-in service means no free chutneys or bread refills; delivery packaging adds a cost line that must be tracked separately |
Set your target before you measure. A biryani specialist with premium mutton will sit at 34-35% profitably; a South Indian tiffin house on bulk rice-and-dal is broken at 34%. Segment target is the reference line; your actual should stay within ±1.5 points of it week over week.
The 6 places food cost leaks in an Indian kitchen
Nobody decides to lose 8 percentage points. It leaks in six specific places, in the same order, in every restaurant we've audited from Chennai to Chandigarh:
(a) Receiving — weigh everything, verify against invoice
The delivery note says 25 kg tomatoes. The kitchen scale reads 22.6 kg. Nobody weighed it because it was 6:30am and prep was starting. You just paid for 2.4 kg of ghost tomatoes. Twice a week for a year, that's ₹15,000 vanished on tomatoes alone. Multiply across paneer, mutton, chicken and receiving leaks 1-3% of food cost annually. Every delivery gets weighed, signed off against invoice, short deliveries flagged same-day.
(b) Storage — FIFO discipline and temperature logs
Monday's paneer goes behind Wednesday's because nobody rotated. Friday the Monday paneer is thrown out — that's process failure, not spoilage. FIFO means older stock always gets used first. Add a temperature log for cold store and freezer twice daily. In Indian summer, a walk-in drifting to 8°C instead of 4°C shortens dairy shelf life by 40% and quietly kills 3-5% of cold inventory a month.
(c) Prep — yield loss on trim and bone
You bought 10 kg paneer at ₹340/kg. After trim and moisture loss you plated 8.9 kg — 11% yield loss, expected. If nobody measured it, your recipe cost card assumed 10 kg usable at ₹340/kg while reality was ₹382/kg effective. That understatement compounds across every dish. Typical yield loss numbers for Indian kitchens:
- Paneer: 8-12% (trim, moisture)
- Mutton with bone: 15-22% (bone, fat, sinew)
- Chicken: 25-30% whole deboned; 5-8% boneless breast
- Leafy vegetables (palak, methi, coriander): 20-30%
- Onions: 8-15%; tomatoes 5-10%
Measure yield on your top 10 ingredients once, update recipe cost cards, and theoretical food cost moves 2-4 points closer to reality — the point is to manage what you measure honestly.
(d) Portion — trained standards, weighed audits
Standard is 180g paneer per plate. The line cook uses a serving spoon that sometimes carries 160g, sometimes 220g. Over 40 plates a day at +20g drift, you serve 800g extra paneer daily — ₹272/day, ₹99,280 a year on one dish. Fix: kitchen scale at every station, portion training in week 1 of onboarding, weekly weighed audit where the manager pulls three plates and weighs the protein. Post target weights on a laminated card at each station.
(e) Plating — no over-plating, no free side dishes
The "just add a little more" instinct feels like hospitality; it's a leak. Free extras — second papad, three chutneys instead of one, complimentary salad half the tables leave — add up to 1-2% of food cost with zero measurable impact on repeat visits. Kill one free extra for two weeks and measure complaints. If they don't move, kill it permanently.
(f) Waste — end-of-day tracking and staff meal accounting
Two waste categories go unmeasured in 90% of Indian restaurants: (1) end-of-day prep waste — unsold dal, dried naan dough, turned vegetables. (2) Staff meals — 8 to 15 people, two meals a day, unlogged. A shared sheet where the closing chef logs "waste: 2 kg dal, 400g paneer, 15 rotis" and "staff meal: 12 covers, chicken curry + rice" costs zero and clarifies 3-5% of your mystery. Waste under 2% of purchases is healthy; over 4% is a red flag.
Menu engineering intersection — Stars, Ploughhorses, Puzzles, Dogs
Food cost is not profitability. A 25% food cost dish nobody orders makes no money; a 38% food cost dish selling 60 plates a day pays rent. Menu engineering plots every dish on popularity vs contribution margin:
- Stars — high popularity, high margin (paneer tikka masala at 28% FC, 40 plates/day). Protect, feature, don't discount.
- Ploughhorses — high popularity, low margin (dal makhani at 42% FC, 55 plates/day). Pay rent through volume; engineer recipe or portion without cutting perceived value.
- Puzzles — low popularity, high margin (premium mutton rogan josh at 32% FC, 8 plates/day). Reposition on menu, train staff to recommend.
- Dogs — low popularity, low margin (mushroom stroganoff nobody orders at 44% FC). Cut them. Every menu has 6-10.
Your Stars and Puzzles at 25-30% FC subsidise Ploughhorses at 38-42%. Without that quadrant view you can't have the subsidy conversation. Menu engineering plus food cost control is what moves a restaurant from surviving to compounding.
Weekly food cost variance report — what to run
Every Monday morning, the head chef and owner run a variance report on last week. Four columns:
| SKU | Theoretical | Actual | Variance & action |
|---|---|---|---|
| Paneer | 18.5 kg | 22.1 kg | +3.6 kg (₹1,224) — audit portions |
| Basmati rice | 42 kg | 44 kg | +2 kg (₹220) — within tolerance |
| Chicken (boneless) | 28 kg | 31.5 kg | +3.5 kg (₹980) — check yield |
| Onions | 55 kg | 54 kg | −1 kg — on track |
| Cream | 8 L | 11 L | +3 L (₹510) — garnish over-portion |
Theoretical is what recipes say you should have used based on dishes sold. Actual comes from stocktake. Total weekly variance under 2% of purchases is healthy; above 4% means at least one leak is active; above 6% means a serious problem. Build it in Google Sheets (90 minutes weekly) or automate via POS recipe mapping.
Automating with your POS — recipe-level deduction
Manual variance dies quietly the third month when the chef gets busy. A POS with recipe-level ingredient mapping does theoretical usage in real time, on every sale.
Setup: for the top 30 dishes (which cover 80% of orders), build a recipe card — paneer butter masala = 180g paneer + 120g tomato + 30ml cream + 15g butter + 8g spice mix. Every time it's billed, the POS subtracts those ingredients from theoretical stock. End of week you compare against physical count, variance by SKU without a spreadsheet.
Both Online eMenu products support recipe mapping — Ordering Suite (₹199/month) via cloud dashboard, Desktop POS (₹4,999/year) locally on Windows so it works during internet outages. Full pricing on our India pricing page. What was a 90-minute weekly ritual becomes a 10-minute Monday exception review.
See recipe-level food cost tracking in action
Real screenshots of the POS deducting ingredients on every sale, weekly variance reports, and the exception list your head chef opens on Monday morning.
Take the product tourThe 30-day food cost reset playbook
If your food cost is somewhere between 35% and 42% today and you want to bring it to 30-32% without changing recipes or suppliers, here is the exact 30-day sequence. It's boring, and it works.
Week 1 — Measure
- Day 1: physical stocktake at cost — dry store, cold store, freezer. Opening Inventory baseline.
- Days 2-7: weigh every incoming delivery against invoice. Flag shortfalls. Change nothing else — just measure.
- Mid-week: yield tests on top 5 ingredients by rupee value (paneer, mutton, chicken, cheese, prawns).
- Day 7: stocktake again. Calculate week 1 food cost.
Week 2 — Identify
- Day 8: first variance report. Rank top 10 SKUs by rupee variance.
- Days 9-14: portion audits three times daily — pull one plate of your top 5 dishes, weigh the protein.
- Waste log: shared end-of-day waste + staff meal log. Chef fills before closing. Measurement only, no punishment.
Week 3 — Fix
- Portion retraining: laminated portion cards + kitchen scale at every station; whole-team training session.
- Kill 2-3 free extras: least-noticed plating additions; measure complaints over 14 days.
- FIFO enforcement: reorganise cold store and dry store; date-tag every batch.
- Supplier check: review shortfall flags with top 3 suppliers; renegotiate or replace repeaters.
Week 4 — Lock in
- Monday variance ritual: chef + owner, 15 minutes, non-negotiable.
- POS recipe mapping: build cards for top 30 dishes. From week 5, variance report generates itself.
- Ownership: one person owns the number month over month — usually the head chef, owner reviews.
- Day 30 stocktake: calculate month-1 food cost. Expect 3-6 percentage points down. On a ₹6L/month restaurant that's ₹18-36k/month, ₹2-4.3 lakh a year.
What this ladders into
Food cost is the single biggest controllable cost line in a restaurant P&L — 28-35% of revenue. Labour is next at 22-28%, rent at 8-12%, aggregator commissions 8-15% of delivery revenue. Get food cost right and the margin unlocks investment in the other three. See our Indian restaurant P&L template and seven ways to reduce Swiggy and Zomato commission.
Frequently Asked Questions
What is the ideal food cost percentage for a restaurant in India?
QSR 28-30%, casual dining 30-32%, fine dining 32-35%, cafes 22-26%, bars 18-22% on food. Match your target to your segment, then hold it ±1.5 points week over week.
How do I calculate food cost percentage for my restaurant?
(Opening Inventory + Purchases − Closing Inventory) ÷ Food Revenue × 100. Weekly, not monthly — weekly gives you five reaction points a month instead of one.
Why is my restaurant food cost 40% instead of 30%?
Six leaks usually active at once: receiving without weighing, storage without FIFO, unmeasured yield loss, portion drift, free plating extras, unlogged waste plus staff meals. Fix five of six in 30 days and you're back to 32-33%.
What is COGS for an Indian restaurant?
Cost of Goods Sold = Opening Inventory + Purchases − Closing Inventory. Food and beverage tracked separately. Add labour to get prime cost, which should sit at 55-60%.
Should I measure food cost weekly or monthly?
Weekly. A stocktake takes 60-90 minutes for a 40-cover restaurant and pays for itself the first time you catch a portion drift in week 2 instead of month 5.
How do I reduce food cost without cutting quality?
Attack the six leaks. Weigh deliveries, enforce FIFO, measure top-10 yields, standardise portions, kill unnecessary plating extras, log waste and staff meals. Expect 3-6 points down in 30 days.
What is a good food cost variance report?
Four columns: SKU, theoretical usage, actual usage, rupee variance with action. Total weekly variance under 2% of purchases is healthy; above 4% means an active leak.
How can a POS help with food cost control?
Recipe-level ingredient mapping deducts inventory on every sale, so theoretical stock is current. Compare to physical count weekly for variance by SKU. Online eMenu's Ordering Suite (₹199/month) and Desktop POS (₹4,999/year) both support this.
What is yield loss in a restaurant kitchen?
The difference between raw and usable weight after prep. Paneer 8-12%, mutton 15-22%, chicken breast 5-8%, leafy greens 20-30%. Ignoring yield understates theoretical cost by 3-5 points.
How long does it take to fix restaurant food cost?
Thirty days for a first pass: week 1 measure, week 2 identify, week 3 fix, week 4 lock in. Expect 3-6 points down — ₹18-36k/month saved on a ₹6L revenue restaurant.