Ask a small producer what a jar costs to make and you usually get a number that was calculated once, from the recipe as written, using the prices in force when the product was launched. It is a real number. It is also, almost always, lower than what the last batch actually cost.
Four things move it, and they all move it the same way.
The batch
One batch of chili crisp oil, planned at 40 kg, packed into 190 ml jars.
| Ingredient | Bought as | Unit price | Used | Cost |
|---|---|---|---|---|
| Chili flake blend | 5 kg bag at $62.50 | $12.50/kg | 4.8 kg | $60.00 |
| Rapeseed oil | 20 L drum at $34.00 | $1.70/L | 28 L | $47.60 |
| Dried garlic | 1 kg tub at $9.80 | $9.80/kg | 1.2 kg | $11.76 |
| Salt | 25 kg sack at $18.00 | $0.72/kg | 0.4 kg | $0.29 |
| Total | $119.65 |
One: unit conversion
Nothing in that table is priced in the unit it is used in. The chili blend is bought by the bag and used by the kilo. The oil is bought by the drum, priced by the liter, and the batch is weighed in kilos.
That last one is a density conversion, not arithmetic: at roughly 0.92 kg/L, a 40 kg batch of oil-based product is about 43.5 L, which is 228 jars of 190 ml — not the 210 you get if you quietly treat a kilo as a liter. Getting this wrong is worth about 8 percent on the unit count, and it is invisible because both numbers look plausible.
Every conversion is a place where a hand-built spreadsheet holds a hardcoded factor that nobody re-checks when a supplier changes pack size.
Two: yield loss
The batch was planned at 40 kg. It came out at 38.4 kg — a 96 percent yield, which is a good day. After filling losses it packed 205 jars rather than the theoretical 228.
- Cost per jar at planned yield: $119.65 ÷ 228 = $0.525
- Cost per jar at actual yield: $119.65 ÷ 205 = $0.584
An 11 percent difference, on a batch that ran well. Costing against planned yield is the single most common reason a per-unit cost is too low, and the error scales with how lossy your process is.
Three: price rises
Six months later the chili blend goes from $12.50 to $15.75 per kilo. Nothing else changes.
- Chili blend: 4.8 kg × $15.75 = $75.60, up from $60.00
- Batch total: $135.25
- Cost per jar: $135.25 ÷ 205 = $0.660
One ingredient moved and the unit cost rose 13 percent. This is the number that never gets updated, because a single supplier increase always looks too small to justify recosting everything.
Four: what that does to the quote
Suppose you quoted $1.10 a jar against the original $0.525.
| Cost/jar | Margin on $1.10 | |
|---|---|---|
| Planned yield, old prices | $0.525 | 52% |
| Actual yield, old prices | $0.584 | 47% |
| Actual yield, new prices | $0.660 | 40% |
Then add packaging — jar, lid, label at, say, $0.34 — and the ingredient-plus- packaging cost is $1.00 against a $1.10 price. Nine percent, before any labor or overhead, on a product you believed carried better than half.
Nothing dramatic happened. One yield assumption and one price rise.
Sub-recipes make each of these compound
A base sauce used across four products has its own yield loss and its own ingredient prices. If the base is costed as a batch and its cost per kilo used as the price of an ingredient downstream, the loss carries through correctly. If the four products instead list the base's raw ingredients directly, the base's yield loss vanishes from all four, and every one of them looks cheaper to make than it is.
This is where hand-maintained costing usually gives up, because the correct calculation is recursive and a spreadsheet models it by copy-paste.
What to do about it
- Cost against actual yield, not planned. Record actual output on every batch so you have a real yield to cost against rather than an assumption.
- Keep unit conversions in one place, including densities, rather than inline in each recipe.
- Keep price history per supplier, so you can cost a past batch at what it really cost and a quote at what it would cost today. These are different questions and one number cannot answer both.
- Cost sub-recipes as batches and consume them as ingredients.
- Recost when an invoice arrives, not quarterly. The individual rises are always too small to act on; the sum is what ends a product line.
Keep ingredient cost separate from labor and overhead throughout. Ingredient cost per unit can be checked against a recipe and an invoice by anyone; a blended number cannot be reconciled against anything, which is why blended numbers stop being maintained.
The records this needs are the ones a recall needs anyway — actual quantities in, actual yield out, the lot and the price it was bought at. What goes on a batch record is that field list.