Skip to content

Selling the same dish in two sizes — one recipe or two?

Most dishes sell at one size. Some sell at two — a regular plate and a large plate of pappardelle, a small and a sharing portion of polpette, a glass and a bottle of Chianti. The question that comes up the first time you set the till to charge €19 for the regular and €28 for the large is whether the system needs a second recipe to track the cost of the bigger one. The answer is almost always no — and this page walks through when it is, when it isn’t, and how the till and the kitchen stay in step when one dish has two prices.

This page is for two readers. If you’re the owner, “Why this page exists” is for you — start there. If you’re the head chef, jump to “How sizes connect to the recipe” and skim down to the worked example.

Why this page exists

The first time you add a second size to a dish, the temptation is to copy the recipe — one called Pappardelle regolare and one called Pappardelle famiglia — because the till has two prices and the kitchen has two scoops. The system doesn’t need the copy, and copying it costs you the next time the veal supplier raises a price: now you have two recipes to update, you forget one, and the cost dashboard reads one number for the regular and a stale one for the large. One recipe, two portion sizes on the till is the shape that keeps the numbers honest. The chef writes the dish once; the cashier offers the customer a choice; the cost-per-portion of the bigger one is simply 1.6× the smaller one, computed live, never typed in.

The other reason this page exists is the rare case where copying is actually right. When the large portion isn’t just more of the same — when it comes with a side of focaccia, when the family-size pizza has a different dough, when the tasting glass of wine and the full glass come from different bottles — the linear-scaling shortcut lies, and you do need a second recipe. The trick is recognising which case you’re in before you commit to a structure, because un-doing it later is more work than getting it right the first time.

The rule

One recipe per ingredient list. One portion size per scoop the kitchen plates. Add a second recipe only when the larger portion contains something the smaller one doesn’t — not when it just contains more of the same things. If you find yourself thinking “the large has more sauce but the same pasta,” the linear shortcut already lies and the recipe wants to split.

How sizes connect to the recipe

A dish on the till never points at a recipe directly. It points at a produced item in the pantry — the pantry row a recipe creates when it runs. The recipe is what makes the produced item; the produced item is what the till sells. Between them sits one number — the cost per portion — that flows from the recipe through the pantry row to every till tier that links to it.

The rowWhat it isWhere the cost comes from
RecipeThe ingredient list, the yield, the methodRoll-up of every ingredient line × current cost
Produced itemThe pantry row the recipe creates (e.g. Pappardelle portion)Recipe’s total cost ÷ yield → cost per portion
Till itemThe button the cashier presses (Pappardelle al sugo)Per-tier link to the produced item, with a portion multiplier

A till item with two portion sizes carries two sized pricesRegolare and Famiglia — and both link to the same produced item. What changes between them is the portion multiplier: how many portions of the recipe each tier serves. Regolare multiplies by 1.0; Famiglia multiplies by 1.6. The system computes the cost of each tier on the fly — recipe cost-per-portion × the tier’s multiplier — and the margin lands on the cost dashboard without anyone typing a second cost.

For wine the same shape applies in a different unit. The produced item is the bottle; the Glass tier multiplies by 0.2 (150 ml of the 750 ml bottle); the Bottle tier multiplies by 1.0. One produced item, two till tiers, two correct costs.

When one recipe is right

Linear scaling — the larger portion is the smaller portion times a number — is the case the system handles for free. Pappardelle regolare is 200 g of pasta + 80 g of sugo + 10 g of pecorino; Pappardelle famiglia is 320 g of pasta + 128 g of sugo + 16 g of pecorino. Every ingredient scales by the same factor, so the cost scales by that factor too, and one portion multiplier captures it.

This is the case for the vast majority of size variants on a restaurant menu — pasta dishes, risottos, soups, salads, dips, scoops of gelato, glasses of wine, mugs of coffee, jugs of beer. The kitchen plates a bigger scoop; the cost moves in lockstep. Keep one recipe. Set the multiplier on the till tier.

When two recipes is right

Two recipes is the right shape when the larger portion contains something the smaller one doesn’t, or when the proportions actually change. A family-size pizza built on a different (larger, thicker) dough isn’t 1.6× the personal pizza — it’s a different recipe with a different ingredient list. A Bistecca served with a roasted-vegetable side isn’t 1.5× the Bistecca per uno — it has roasted vegetables in it. A tasting menu that includes the dessert isn’t 2× the à-la-carte — it has a dessert in it.

The signal is the question “what’s actually in the larger one?” If the answer is “the same things, in larger quantities,” one recipe is right. If the answer adds an ingredient, removes one, or changes the proportions in a way that doesn’t scale together, split the recipe — create a second one for the larger size, let it produce its own pantry row, and link the larger till tier to that pantry row instead.

The split costs you maintenance: a price rise on a shared ingredient now updates in two places, not one. The system handles that for you (every recipe that uses the ingredient re-rolls automatically), but the menu-design maintenance is real — when the chef tweaks the sugo ratio, both recipes need the same tweak. Prefer the single recipe when you can; reach for the split when the ingredient list genuinely diverges.

Worked example — pappardelle al sugo, regolare and famiglia

You’re adding a second size to Pappardelle al sugo di vitello. The kitchen plates 200 g of pasta + 80 g of sugo for the regular and 320 g of pasta + 128 g of sugo for the family size — same ingredients, both scaled 1.6×. The menu reads €19 for the regular and €28 for the family size.

You open the recipe — Pappardelle al sugo di vitello — and confirm its yield: 30 portions, total cost €93, cost-per-portion €3.10. The recipe produces a pantry row called Pappardelle portion.

You then open the till item — Pappardelle al sugo on the POS — and find the Sized prices section. There’s already one entry, Regolare, linked to Pappardelle portion with a portion multiplier of 1.0 and a price of €19. You tap Add size, name it Famiglia, leave the link pointed at Pappardelle portion, set the multiplier to 1.6, and type the price €28. Save.

The cost dashboard updates the next time you open it:

  • Regolare — €19 sell, €3.10 cost, margin 84%.
  • Famiglia — €28 sell, 1.6 × €3.10 = €4.96 cost, margin 82%.

Two weeks later the veal supplier raises the wholesale price by 8%. The recipe re-rolls automatically: cost-per-portion ticks from €3.10 to €3.25. The dashboard refreshes both tiers in the same load — Regolare margin drops to 83%, Famiglia drops to 81%. No edit, no typing, no double maintenance.

Six months later the chef decides the Famiglia should come with a basket of focaccia. The shape stops fitting. You open the recipe list and create Pappardelle famiglia — a second recipe that copies the pappardelle ingredient list at the 1.6× quantities and adds 200 g of focaccia per portion. It produces its own pantry row, Pappardelle famiglia portion. You re-open the till item, change the Famiglia tier’s link from Pappardelle portion to Pappardelle famiglia portion, and reset the multiplier to 1.0. From that day forward the two costs evolve on their own — pappardelle’s sugo price moves the Regolare margin without touching the Famiglia margin, and a focaccia price move shows up on the Famiglia margin without touching the Regolare one. The split was right because the ingredient list diverged. Until then, one recipe was right because the ingredients didn’t.