Skip to content
← Back to blog

Recipe costing template for Switzerland (XLSX + CSV, free)

By Trolevo · Published · 12 min read

A recipe costing spreadsheet has to get three things right: the price of an ingredient after trimming and cooking, base recipes that go into several dishes, and the way from food cost to the menu price with Swiss VAT. This template gets all three right and comes filled in with a worked example.

Two files, direct download, no login, no email address:

How do you cost a recipe in Excel?

With four sheets that refer to each other: “Ingredients” with the purchase price and the price after trimming and cooking, “Base recipes”, “Dishes”, and “Selling price” with VAT and a cross-check. The template has them set up, plus a guide and the “Limits” sheet. It works for a VAT-registered business that uses the effective method, and so with purchase prices excluding VAT; in the example they are example prices.

The example already in it is roast beef with red wine sauce:

LineQuantityCHF
Beef rump, ready to eat180 g8.08
Red wine sauce (base recipe)1 dl1.13
Carrots, trimmed120 g0.41
Food cost per portion9.62

How the food cost becomes a food cost percentage is covered in the article Food cost percentage.

The sheets come in the order a costing runs: from the ingredient via the recipe to the price. Why that order matters is explained in the complete guide to food costing for restaurants.

A single dish is enough to start. Its ingredients go into the “Ingredients” sheet with their purchase prices, its quantities and the number of portions into a block on the “Dishes” sheet, a target and the menu price into the “Selling price” sheet. Yield, base recipes and the take-away channel come after that. The quantity is always in the unit of the price: 180 g of beef rump is 0.180, because the price is per kilo. The template shows the unit next to every quantity.

What goes into the ingredients sheet?

For each ingredient, the purchase price excluding VAT and, where you know them, the trim yield and the cooking yield. From these the sheet works out the yield-adjusted price, and every recipe is costed at that price.

Price of the usable quantity = purchase price ÷ yield

The beef rump in the example comes from the article on yield and waste, with the same values: purchase price CHF 28.00 per kilo, trim yield 78%, cooking yield 80%. The sheet multiplies the two yields instead of adding them:

0.78 × 0.80 = 62.4% 28.00 ÷ 0.624 = CHF 44.87 per kilo 180 g ready to eat: CHF 8.08 instead of CHF 5.04 at the invoice price

Which yield belongs in the price depends on the quantity you enter in the recipe. The beef rump goes into the roast ready to eat, so trim and cooking yield both count. The carrots go in trimmed, so only the trim yield counts: 82%, giving CHF 3.41 per kilo. If you need the same ingredient once ready to eat and once raw, it gets two rows with different names, such as “Carrots” and “Carrots, ready to eat”, because with a duplicate name only the first entry counts. That way every loss counts exactly once.

Empty yield cells count as 100%, that is, with no adjustment. Measure the most expensive ingredient first, once, with the next delivery; on cheap vegetables a rough figure will do for now. Supplier and date measured go in the “Comment” column, so that someone later still knows what the figure applies to.

The sheet has no allowance for shrinkage, on purpose. Spoilage, overproduction and badly portioned plates belong in the business’s figures, not in the recipe’s. Put them into the yield and you can no longer tell the two apart.

How do you build one base recipe into several dishes?

You cost it once as a batch, divide by what the batch actually yields and only refer to it in each dish. The red wine sauce in the example:

IngredientQuantityCHF
Red wine2 l16.00
Roast stock (bought in)4 l24.00
Shallots400 g1.60
Butter250 g3.75
Batch, reduced to 4 l45.35

You divide by the 4 litres that are actually there after reducing, measured and not added up from the ingredients. One decilitre then costs CHF 1.13. The sauce’s cooking loss is in those 4 litres, which is why the red wine gets no cooking yield on the “Ingredients” sheet; otherwise the reduction would count twice.

In the example, the same sauce goes into two dishes. The roast beef takes one decilitre. The beef stew is the recipe card from the article on standardising recipes, without the side dish: a batch for 20 portions with 3.2 kg of beef shoulder and 800 g of carrots, both trimmed, and 4 litres of sauce. The batch costs CHF 128.08, a portion CHF 6.40.

For the beef shoulder only the trim yield counts (CHF 22.00 per kilo, 88%, adjusted CHF 25.00). The batch carries its cooking loss itself, because it is divided by the 20 portions it yields after braising.

If the red wine costs CHF 9.00 instead of CHF 8.00 a litre, you change one cell on the “Ingredients” sheet. The sauce then costs CHF 47.35, the roast beef CHF 9.67 instead of CHF 9.62 and a portion of beef stew CHF 6.50 instead of CHF 6.40. The calculation happens in one place, and every dish in the template that uses the sauce follows.

A base recipe may also contain another one, such as your own stock, if that one sits higher up on the sheet. If it sits further down, the template shows a note instead of a number.

How does the template get from food cost to the menu price?

A target leads to the net price, the VAT rate to the gross price; then you round and work back for the cross-check. For the roast beef:

Net price at a food cost percentage of 30%: 9.62 ÷ 0.30 = CHF 32.07 Gross price dine-in: 32.07 × 1.081 = CHF 34.67 On the menu: CHF 35.00 Cross-check: 35.00 ÷ 1.081 = CHF 32.38, food cost percentage 9.62 ÷ 32.38 = 29.7%, contribution margin CHF 22.76

The 30% is the example value from the article How to price a dish, not a guide value. The menu price is an input: you round by hand, and the cross-check shows what the rounding costs. For the beef stew the calculation gives CHF 23.06; at CHF 23.00 on the menu, the food cost percentage is 30.1%.

Which target suits your own business is a question of its own; it is covered in the article on a good food cost percentage.

On the “Selling price” sheet you choose “dine-in” or “take-away” for each row, and with it the rate. Food consumed on the premises is a restaurant supply and is subject to the standard rate of 8.1% (as of 2026). For take-away or delivery the reduced rate of 2.6% applies, but only if “suitable organisational measures are taken to differentiate these supplies from restaurant supplies; if this is not the case, the standard rate applies” (Art. 25 para. 3 VAT Act). Such a measure is, under Art. 56 of the VAT Ordinance, “in particular the issue of receipts that indicate whether a restaurant supply, a delivery of food or a supply of goods for takeaway was provided”. Alcoholic beverages are excluded from the reduced rate and are always taxed at the standard rate of 8.1%, whether consumed on the premises or taken away.

The beef stew appears in the example a second time, as take-away, for a business that separates the two with receipts. At the same target the calculation gives CHF 21.88 instead of CHF 23.06; at CHF 22.00 on the menu, the food cost percentage is 29.9%.

The template works for a business that uses the effective method. Anyone using the net tax rate method multiplies their takings, including tax, by the net tax rate the FTA has approved (Art. 37 para. 2 VAT Act); for them, ÷ 1.081 and ÷ 1.026 is not the calculation. Nor does the template fit them on the purchase side: it assumes purchase prices excluding VAT, and the net tax rates “take into account the input tax amounts usual in the relevant branch of the industry” (Art. 37 para. 3 VAT Act). For small snack bars the FTA also has a simplified method (VAT sector info 08, para. 1.3.4) under which the VAT does not depend on the channel; its conditions are set out in the article Pizza food cost.

This section explains costing and is not tax advice; what is authoritative is the VAT Act, the VAT Ordinance and guidance from the Federal Tax Administration (FTA). English is not an official Swiss language: the English texts of the Act and the Ordinance on fedlex are translations for information only and have no legal force; the German, French and Italian versions are binding.

Where does a costing spreadsheet reach its limit?

Not at the arithmetic, but at the second file. In the template every purchase price sits in one place, and that holds as long as this one file is the only one. It has room for 150 ingredients, 15 base recipes and 30 dishes; anyone who keeps more needs a second file.

In the article on standardising recipes, the red wine sauce goes into five dishes: the stew, the roast, the ravioli, the daily special and the catering menu. How many places you update by hand when the sauce changes depends on how the recipes are kept:

How the recipes are keptPlaces by hand
One file, the base recipe as a reference (this template)1
One file per dish, the sauce copied into each5
Plus a summer and a winter version for three of the five dishes, each as its own file8

The place you forget does not stand out: it looks correct and works with the old price. And no file knows which copy is the current one (the one on the kitchen computer, the printout on the wall or the one attached to an email) or who changed something last. The template’s “Limits” sheet sets out exactly this calculation.

What does Trolevo take over, and what stays in the spreadsheet?

Trolevo takes over where the file stops: a base recipe and an ingredient price living in one place, across many recipes. The calculation with yield, VAT and menu price stays in the spreadsheet.

In Trolevo a base recipe such as the red wine sauce can be a recipe of its own, which the dishes take in instead of copying it; its food cost runs into the food cost of every dish that uses it. Every recipe has an edit history: who changed it, when, and what.

The app has no field for the yield: you work out the yield-adjusted price yourself and store it as the ingredient’s price. The app keeps one selling price per recipe, with no VAT rate and no channel. It shows what share of the selling price the food cost and the labour cost take and what is left, worked out on the price as entered, without taking VAT off. It can suggest a selling price: the one that leaves, after production cost, a share of the price that you set for the workspace as a percentage. The template’s costing does not carry over into Trolevo: the recipe import does not take over prices.

So the menu price with a target, VAT and a cross-check is still worked out by the template. The free food cost calculator checks the food cost percentage and contribution margin of a dish, with either 8.1% or 2.6%.

When you save a new ingredient price in Trolevo, the app recalculates, as part of that save, the food cost of every recipe that uses the ingredient, directly or through a sub-recipe. This helps keep the costing current; the pricing decision stays with the business.

Trolevo is in development – get early access.


Sources

The figures in the examples are illustrative and not an industry statistic. The yield figures are example values we set ourselves and not guide values; every business measures its own. This article explains costing and is not tax advice.

Get early access to Trolevo

Be first in the kitchen when we launch.

Launch updates only. No spam, unsubscribe anytime. Privacy policy

Join before launch: Business at CHF 19.90 instead of 29.90, locked for 12 months.