Done well, costing is a ten minute weekly habit. It is not a spreadsheet built once, the night before opening. Once your overheads, suppliers, and labour minutes are set up in one place, every menu change runs through the model automatically. The maths is simple. What matters is running it against your real numbers.
The 28 to 35% food cost target you will read on every hospitality blog is a sensible starting point, but it is built on industry averages. Your rent, your suburb, your menu mix all shift the number.
Cost from the supplier invoice, not the supermarket shelf
Wholesale prices and supermarket prices are different numbers, and the gap matters more than first time founders realise. A litre of Coles home brand milk is around $1.75 in a 2 litre bottle. The same litre delivered by a hospitality supplier in commercial volumes sits closer to $1.80 to $2.20 once delivery is loaded in. Build your costing off the wholesale invoice you will be paying.
Cost the yielded weight, not the purchased weight
One kilogram of avocado in the box does not give you one kilogram of plated avocado. Trim, browning, and seed loss take roughly 25 to 35% off. Cost the yield. The same applies to meat (cooking loss matters), leafy greens (trim loss), and anything fresh that gets prepped before plating.
Food prices move constantly. Eggs rose 18.6% in the year to April 2025, according to the ABS Monthly CPI Indicator. A weekly re-cost catches these shifts early. More on that in Step 06.
Allocate every overhead to a number per dish
Ingredient cost is a fraction of the true cost of a dish. The rest is rent, wages, electricity, gas, water, insurance, accounting, software, EFTPOS fees, waste collection, and depreciation on the equipment that produced it. Every dish has to carry its share before any margin exists.
The maths is simple. Add your monthly overheads. Divide by realistic monthly transactions. That is the overhead each transaction must carry.
| Rent | $8,500 |
| Wages (incl. super, on-costs) | $12,000 |
| Power, gas, water | $1,400 |
| EFTPOS fees, accounting | $1,800 |
| Software, insurance, waste | $1,300 |
| Monthly overheads | $25,000 |
| Realistic monthly transactions | 8,000 |
| Overhead per transaction | $3.13 |
Take a Flat White with $1.46 of coffee, milk and cup. That is its COGS. Add the $3.13 of overhead and the cup has to clear $4.59 before it makes a cent. Knowing that number changes how you price the cup.
True cost: COGS plus overheads, labour counted once
True cost is COGS plus the dish's share of overheads, worked dish by dish. The $25,000 overhead pool in Step 02 already includes $12,000 of wages, so labour is in the $3.13. Adding cook minutes on top would count it twice.
So a Poached Egg Breakfast looks like this:
| COGS (ingredients, yielded) | $2.40 |
| Overhead per transaction, wages included | $3.13 |
| True cost per dish | $5.53 |
At a $9 menu price, $8.18 ex GST, the dish makes a 71% GP on COGS. Take away the overheads and labour and the net margin is 32%. GP tells you how the dish is priced against what goes into it. Net margin tells you what it leaves after running the cafe.
Set your food cost target against your overheads
The 28 to 35% food cost rule is a COGS rule, and it is the same target as a 65 to 75% GP. Set your GP% by category against COGS, then use true cost to test whether that margin is enough to pay for your overheads.
The rule is a useful starting point, and Australian cafes typically land somewhere inside it. The exact number that works for your cafe depends on your overheads. A main street cafe paying premium rent runs a tighter food cost than a back street cafe with lower fixed costs, same industry, different maths.
This is where generic targets stop being precise. Your real numbers, the ones from Step 02, tell you what your target should be, dish by dish.
HospoSure loads your overheads in once: rent, wages, utilities, insurance, the lot. It then costs every dish on your menu against your actual numbers, not an industry benchmark. Update a supplier price and every dish that uses it recalculates. The full costed menu pushes into Square POS in one click.
Try the free demoPrice from COGS, then test against true cost
Pick the GP% your dish category needs to hit. For coffee, that is usually 70 to 75%. For food, 65 to 72%. For batched cold drinks, 75 to 80%. Take your COGS and divide by (1 minus target GP%). That is the sell price before GST. Add 10% GST for the menu price.
| COGS | $2.40 |
| Sell price ex GST at 65% GP ($2.40 ÷ 0.35) | $6.86 |
| Menu price inc. GST | $7.54, rounded to $7.50 |
| True cost | $5.53 |
| Net margin after overheads and labour | $1.33, or 19% |
A 65% GP leaves 19% after overheads and labour. If that is too thin for your cafe, raise the price or cut the COGS. If the price then feels too high for your suburb, look upstream: the overheads, the transaction count or the menu mix. You choose which one to change.
Competitor prices are tempting to copy, but their overheads are not yours, their suppliers are not yours, and their wage bill is not yours. Use them as a sense check, not a source of truth.
Re-cost weekly, not yearly
Australian wholesale food prices move continuously. Coffee, oil, dairy, seasonal produce all shift week to week. A menu that was profitable in autumn can drift below margin by spring without a single line on it changing. That is why ten minutes of re-costing is some of the best spent time in a cafe owner's week.
The cafes that thrive past year one build re-costing into a weekly rhythm. Once your system is set up properly, ten minutes on a Sunday is enough. Check volatile ingredients (eggs, dairy, oil, seasonal produce) weekly and the rest monthly.
What a properly costed cafe menu looks like
A menu has been properly costed when:
- Every ingredient is priced from real supplier invoices, including yield and trim loss.
- Real monthly overheads are allocated to a number per transaction.
- Labour is counted once, either in the overhead pool or as cook minutes per dish, never both.
- True cost equals COGS plus overheads and labour, calculated dish by dish.
- The food cost target reflects your overheads, not the industry average.
- Prices are worked from COGS and a GP% target, then checked against true cost, not copied from competitors.
- Costing updates whenever supplier prices move, weekly not yearly.
Get all seven right and the menu does what it is supposed to do: pay the rent, pay the staff, and pay you.