How to Calculate the Cost of a Recipe, Line by Line
A recipe cost card is only as honest as its worst line. Get the unit conversions, the yield and the sub-recipes right and the cost per portion falls out on its own — the one number your menu price is actually built on.
Ask ten chefs what a dish costs and nine will tell you a number they half-remember from when they wrote the menu. The recipe cost calculation that actually holds up isn't a guess and it isn't an accountant's job — it's a line-by-line card you can rebuild from an invoice in five minutes. This is how to cost a recipe so the number survives contact with reality: real purchase units, real yield, and the preps you drop into other dishes.
The whole thing rests on one habit: never cost a line at the price on the box. Cost it at the price of the gram you actually put on the plate. Those are different numbers, and the gap between them is where margin quietly leaks.
The line: quantity × cost per unit
Every ingredient line on a cost card is the same tiny sum. Take the amount the recipe uses, multiply by what that amount costs. The catch is that the two halves are almost never in the same unit.
You buy butter in 5 kg blocks at $42. The recipe uses 80 g. You can't multiply 80 by 42 and call it done — that's $3,360 of butter in one sauce. First you convert the purchase price into a price per gram: $42 ÷ 5,000 g = $0.0084/g. Now the line is 80 g × $0.0084 = $0.67. That conversion step — purchase unit down to recipe unit — is the single most common thing people skip, and it throws the answer off by a factor of a thousand when it goes wrong and by a sneaky 10–15% when it goes half-wrong (buying in imperial, cooking in metric, eyeballing the conversion).
So the real per-line formula has a conversion baked in:
Do this for every line, in the same units your recipe is written in. Don't mix. If the recipe reads in grams and millilitres, get every ingredient down to a price per gram or per millilitre before you touch the quantities.
Then adjust for yield, because raw weight lies
Here's where a lot of otherwise careful cards fall apart. You buy 1 kg of whole carrots at $2.10. You peel and top them and you're left with maybe 800 g of usable carrot. You didn't pay $2.10 for a kilo of usable carrot — you paid it for a kilo of carrot-with-skin-and-tops. Your true cost per usable gram is higher than the shelf price says.
Carrots at 80% yield: $2.10/kg ÷ 0.80 = $2.63/kg of trimmed carrot. On a whole carrot that's minor. On a whole beef tenderloin at $58/kg trimming down to a 65% yield, your real cost is $89/kg — and if you costed the dish at $58 you've under-priced it by more than a third. Yield loss scales with how expensive and how heavily-trimmed the ingredient is, which is exactly the ingredients that dominate your cost. It is not a rounding error.
You don't need a lab. Weigh trimmed product against raw a few times, average it, and write the yield percentage on the ingredient once. Published tables give you a sane starting point — professional yield references and datasets like the USDA Economic Research Service Food Price Outlook anchor you to real market prices and typical spreads — but the only yield that's true for your kitchen is the one you measured with your knife and your supplier's product.
Sum the lines, divide by the yield
Add every adjusted line and you have the total recipe cost. That total belongs to the whole batch, not to a plate. To get the number that matters, divide by what the recipe actually yields — servings for a plated dish, or a weight/volume for a prep.
Say a braise costs $34.80 in ingredients and serves 8. Cost per portion is $4.35. That $4.35 is the figure your menu price hangs off — not the $34.80 batch cost, not the price of any single ingredient. Get it wrong and every downstream calculation, from food cost percentage to a catering quote, inherits the error.
Sub-recipes: cost the prep once, drop it in
Real menus aren't flat lists of raw ingredients. A plated main is built from preps: a sauce, a purée, a pickle, a spice blend. Each of those is a recipe in its own right — with its own lines, its own total, and its own yield. Cost it once as a sub-recipe and it becomes a single priced, yielded ingredient you can drop into any dish that uses it.
The mechanic is simple: a sub-recipe has a cost per unit of its yield. A pan sauce that costs $6.40 to make and yields 800 ml has a cost of $0.008/ml. When a plated dish uses 60 ml of it, that line is 60 × $0.008 = $0.48. The dish doesn't need to know the sauce has nine ingredients — it just needs the sauce's cost per millilitre.
Worked example — a red wine pan sauce (the prep)
| Ingredient | Pack price | Cost/unit | Used | Line cost |
|---|---|---|---|---|
| Beef stock (reduced) | $9.00 / 2 L | $0.0045/ml | 500 ml | $2.25 |
| Red wine | $11.00 / 750 ml | $0.0147/ml | 250 ml | $3.67 |
| Shallot (90% yield) | $4.20 / kg → $4.67 true | $0.00467/g | 60 g | $0.28 |
| Butter | $42.00 / 5 kg | $0.0084/g | 40 g | $0.34 |
| Thyme, bay, pepper | — | — | — | $0.15 |
| Total (yields ~800 ml after reduction) | $6.69 |
Total prep cost $6.69, yield 800 ml → $0.0084/ml. Note the reduction: you started with more liquid and boiled it down to 800 ml, so the yield is the finished volume, not the sum of what went in. Cost the yield you actually get.
Worked example — the plated main using it
| Component | Cost/unit | Used | Line cost |
|---|---|---|---|
| Beef striploin (65% yield → $89/kg) | $0.089/g | 180 g plated | $16.02 |
| Red wine pan sauce (sub-recipe) | $0.0084/ml | 60 ml | $0.50 |
| Potato purée (sub-recipe) | $0.0031/g | 150 g | $0.47 |
| Tenderstem broccoli (85% yield) | $0.0094/g | 90 g | $0.85 |
| Finishing oil, salt, garnish | — | — | $0.30 |
| Total — cost per portion | $18.14 |
The plate costs $18.14. Two of its five lines are sub-recipes carrying their own costed detail underneath. If the sauce feeds twelve other dishes, you costed it once and every one of them now reads correctly. That's the whole point of building preps as sub-recipes: the work compounds instead of repeating.
In ProChefDesk
Mark a prep as a sub-recipe and give it a yield (e.g. "800 ml sauce"). It becomes a costed, yielded item you drop into any dish like an ingredient — the cost cascades and stays in the right units. The recipe Cost Report then prints a full breakdown: every line with its unit price, quantity and line cost, the total, and the cost per portion at the bottom.
Cost per portion is the number that feeds pricing
Everything above exists to produce one clean figure per dish. Cost per portion is what your menu price is a function of — not batch cost, not ingredient price. The standard move is to set a target food cost percentage and back out the price:
The $18.14 striploin at a 32% food cost target wants a menu price of $18.14 ÷ 0.32 = $56.70, which you'd round to $56 or $58 depending on how the menu reads. Change the target to 30% and it's $60.50. The point isn't the exact number — it's that the price is anchored to a cost per portion you can defend, and that moves the moment the cost card moves.
Price drift silently rots the card
Here's the failure that catches everyone. You build a beautiful card in January. The wine goes from $11 to $13.50 in April. Butter creeps up. Your supplier quietly re-packs the stock at a higher price. Nobody updates the card, so it still reads $18.14 — but the plate now costs $19.60. You're running a 34.6% food cost on a dish you think is at 32%, and you'll keep running it until the month-end numbers don't add up and you go looking.
A cost card is not a document you write once. It's a living calculation whose inputs decay. The discipline that keeps it honest is boring and it works:
- Update your five most expensive ingredients every delivery. Not all 200. The five that move the plate.
- Re-cost your top sellers monthly. The dishes that sell most are where drift does the most damage.
- Store the cost against the recipe, not in your head. A card you can rebuild from an invoice beats a number you're fairly sure about.
The three mistakes that wreck a cost card
Almost every wrong recipe cost calculation traces back to one of these three. Learn to spot them and you'll fix most cards in one pass.
| Mistake | What happens | Fix |
|---|---|---|
| Costing at pack price, not used price | 80 g of butter costed as if you bought a 5 kg block per dish | Convert pack price to price per recipe-unit first, always |
| Ignoring yield | Trimmed proteins under-costed 20–40%; card looks fine, P&L doesn't | Weigh trim once, store a yield % on the ingredient |
| Stale prices | Card reads January, kitchen runs April; food cost drifts up 2–4 pts unseen | Update top-spend ingredients every delivery; re-cost sellers monthly |
None of these are hard. They're just easy to skip, and every one of them makes the dish look cheaper than it is — which is the dangerous direction to be wrong in. A card that over-states cost annoys you. A card that under-states it costs you money on every cover, quietly, for months.
Do this today
You don't need to cost the whole menu this afternoon. Take your three best-selling dishes and rebuild their cards from your most recent invoices — real pack prices, real yields on the proteins, sub-recipes for the preps. Divide each total by its servings. Compare the cost per portion you get to whatever you had before.
The gap will surprise you. It usually does, and it's almost always in the direction of "we're charging too little." That gap, found three dishes at a time, is the most reliable margin you'll ever recover — and it costs nothing but an hour with a calculator and an honest set of prices.
"The recipe hadn't changed in two years, so I assumed the cost hadn't either. The wine alone had gone up forty percent."
The recipe stays still. The prices never do. Build the card so it's cheap to rebuild, keep the inputs current, and let the cost per portion tell you the truth — before the accountant does.