Step 1: Cost every ingredient on the plate
Take one portion and price each part of it. Use your latest supplier invoices, not last year's. If you buy beef by the pound and use 6 ounces per burger, divide the price per pound by 16, then multiply by 6.
Here's an example burger with fries. The numbers are made up, so use your own.
| Ingredient | Cost per portion |
|---|---|
| Brioche bun | $0.45 |
| Beef patty (6 oz) | $1.80 |
| Cheese slice | $0.30 |
| Lettuce, tomato, onion | $0.25 |
| Pickles and sauce | $0.20 |
| Fries | $0.55 |
| Total | $3.55 |
Weigh the portions your kitchen actually serves. If the recipe says 6 ounces of fries but the cook fills the basket by eye, cost what goes on the plate.
Step 2: Add the costs that are easy to forget
The ingredient list isn't the whole cost. Add these too:
- Waste. Trimmings, burnt patties, food that goes off before you use it. If you don't know the figure, start with 5% and adjust once you've tracked it for a few weeks.
- Small things. Frying oil, salt, the ketchup on the table.
- Packaging for takeaway and delivery: the box, the napkins, the sauce cups.
For our burger, adding 5% for waste brings the plate cost to $3.73. A takeaway box and napkins add another $0.45, so a takeaway burger costs $4.18.
Step 3: Pick a target food cost
Food cost percentage is the share of the menu price that goes on food. A burger that costs $3.73 and sells for $12.50 has a food cost of about 30%.
A common rule of thumb is that most restaurants aim for 28% to 35%. Treat it as a starting point, not a rule. A coffee shop may run much lower. A steakhouse may run higher because beef is expensive and guests expect to pay for it.
To turn a target into a price, divide the plate cost by the target:
Price = plate cost ÷ target food cost
| Target food cost | Burger price |
|---|---|
| 35% | $3.73 ÷ 0.35 = $10.66 |
| 32% | $3.73 ÷ 0.32 = $11.66 |
| 30% | $3.73 ÷ 0.30 = $12.43 |
Then round to a price that reads well on a menu, such as $12.50 or $13.
Step 4: Check what each sale leaves you
Percentages help, but you pay rent with dollars. So for each dish, also work out what's left after the food: the price minus the plate cost.
| Dish | Price | Plate cost | Food cost | What's left |
|---|---|---|---|---|
| Burger | $13.00 | $3.73 | 29% | $9.27 |
| Garden salad | $11.00 | $2.20 | 20% | $8.80 |
| Steak frites | $32.00 | $12.00 | 38% | $20.00 |
The steak has the worst food cost percentage, but it leaves over twice as much money per plate as the salad. Cutting the steak because "38% is too high" could cost you money. Look at both numbers before you decide. Our guide to menu engineering shows how to add sales numbers to this, so you can see which dishes do the most for you.
Also think about time. A dish that takes ten minutes of a cook's attention costs more in wages than one you plate in thirty seconds, even if the food costs the same.
Step 5: Check the price against your guests
The math tells you the lowest price that works for you. Your guests decide the highest price they'll pay.
Look at what nearby places charge for something similar. If your price comes out far above theirs, there are options other than charging less. You can change the recipe, use a cheaper cut, serve a smaller portion of the expensive part, or swap the side. If your price is well below theirs, you may have room to charge more.
Check again when costs change
Your price is only right while your costs stay the same. Recheck your best-selling dishes whenever a supplier raises prices, and every few months anyway. If you do need to charge more, our article on raising menu prices covers how to do it without upsetting regulars.
For bars and bakeries, our free calculators do some of this for you. The bar profitability calculator shows what one drink leaves after ingredients, labor and other costs per sale. The bakery profitability calculator checks a product's break-even price, including waste, packaging and overhead.
When your prices are set, you can put them on a Menupresso menu and change them later in the editor. The menu link and QR code stay the same, so guests always see the current price.
