Menu engineering: find the dishes that make you money, and fix the rest
Menu engineering sorts every item on your menu by two numbers: how many you sell and how much each one leaves you after its food cost (its contribution margin). Items above your menu's line on both are Stars; popular but low-margin items are Plowhorses; high-margin items that don't sell are Puzzles; and the ones low on both are Dogs [1] [2]. Then you change the price, the recipe, the description or the place on the menu, one group at a time.
All you need is your item sales for a few weeks and each plate's food cost. Below: where the method comes from, the two cutoffs it uses, a full 8-item example worked out, a worksheet with formulas to copy, what to do with each group, how far a price rise can cut sales before it loses money, and what the matrix can't see.
Where menu engineering comes from
The method was set out by Michael Kasavana and Donald Smith in Menu Engineering: A Practical Guide to Menu Analysis (1982) [3]. Their idea was simple: food cost percentage alone is the wrong way to judge a dish, because a $32 steak with a 42% food cost can leave you more dollars than a $16 burger at 32%. What pays the rent is dollars of margin times how many plates you sell.
The four names (Stars, Plowhorses, Puzzles, Dogs) come from that work and are used by most guides since [1] [2]. The method is the same whether you run a food truck with eight items or a bistro with forty.
The two numbers you need for each item
- Units sold over the same period for every item, from your POS, your online orders, or tallied tickets. Four weeks is a sensible minimum; skip weeks with a big event or a holiday.
- Food cost per plate: what the ingredients on one plate cost you, including garnish, sauce and the side. How to calculate food cost percentage and how to price a menu item show how to cost a plate with yield.
From those you work out:
- Contribution margin (CM) = menu price − food cost per plate.
- Sales mix = this item's units ÷ all units sold in the category.
The two cutoffs: margin and popularity
Each item is compared with the rest of its own category (mains with mains, not with drinks):
- Margin line: the weighted average CM. Add up every item's CM × units sold, then divide by total units sold. An item whose CM is at or above this number is high-margin. Weighting by units matters: a plain average of eight CMs gives a rarely sold item the same say as your best seller.
- Popularity line: the 70% rule. If all items sold equally, each would have a share of 1 ÷ the number of items. Kasavana and Smith count an item as popular if it reaches 70% of that equal share [3]. With 8 mains, the equal share is 12.5%, so the line is 8.75% of main-course sales.
Some guides use the plain average for popularity instead of 70% of it [2]. That pushes more items into the low-popularity half. The 70% rule is more forgiving and is the original; pick one and use it every time so your results compare month to month.
A full example: 8 mains over 4 weeks
An example menu, not real sales, with every number checked so you can follow the method end to end.
| Item | Price | Food cost | Food cost % | CM | Sold | Mix | Total CM |
|---|---|---|---|---|---|---|---|
| Burger | $16 | $5.20 | 32.5% | $10.80 | 320 | 26.7% | $3,456 |
| Chicken sandwich | $15 | $4.10 | 27.3% | $10.90 | 210 | 17.5% | $2,289 |
| Steak frites | $32 | $13.50 | 42.2% | $18.50 | 90 | 7.5% | $1,665 |
| Salmon bowl | $24 | $8.40 | 35.0% | $15.60 | 150 | 12.5% | $2,340 |
| Pasta | $18 | $3.60 | 20.0% | $14.40 | 260 | 21.7% | $3,744 |
| Fish tacos | $17 | $6.30 | 37.1% | $10.70 | 60 | 5.0% | $642 |
| Veggie curry | $16 | $3.20 | 20.0% | $12.80 | 70 | 5.8% | $896 |
| Short rib | $29 | $11.60 | 40.0% | $17.40 | 40 | 3.3% | $696 |
| Total | 1,200 | 100% | $15,728 |
Margin line: $15,728 ÷ 1,200 = $13.11. Popularity line: 70% × (1 ÷ 8) = 8.75% of 1,200 = 105 plates.
| Item | Sold vs 105 | CM vs $13.11 | Group |
|---|---|---|---|
| Salmon bowl | High (150) | High ($15.60) | Star |
| Pasta | High (260) | High ($14.40) | Star |
| Burger | High (320) | Low ($10.80) | Plowhorse |
| Chicken sandwich | High (210) | Low ($10.90) | Plowhorse |
| Steak frites | Low (90) | High ($18.50) | Puzzle |
| Short rib | Low (40) | High ($17.40) | Puzzle |
| Veggie curry | Low (70) | Low ($12.80) | Dog, just under the line |
| Fish tacos | Low (60) | Low ($10.70) | Dog |
Two things this example shows. First, the steak has the worst food cost percentage on the menu (42.2%) and the best margin ($18.50). Judged on food cost % alone, you'd cut your most profitable plate. Second, the veggie curry is 31¢ under the margin line and has one of the lowest food costs. A dish that close to the line is a pricing question, not a removal: at $16.50 it would clear the line.
A menu engineering worksheet you can copy
Put one category per sheet in Google Sheets or Excel, items in rows 2 to 9 (extend for more):
| Column | What | Formula in row 2 |
|---|---|---|
| A | Item | (type it) |
| B | Units sold | (from your POS) |
| C | Price | (menu price) |
| D | Food cost per plate | (from your recipe costing) |
| E | CM | =C2-D2 |
| F | Total CM | =B2*E2 |
| G | Mix % | =B2/SUM(B$2:B$9) |
| H | Margin | =IF(E2>=SUM(F$2:F$9)/SUM(B$2:B$9),"High","Low") |
| I | Popularity | =IF(G2>=0.7/COUNTA(A$2:A$9),"High","Low") |
| J | Group | =IF(H2="High",IF(I2="High","Star","Puzzle"),IF(I2="High","Plowhorse","Dog")) |
Copy row 2's formulas down. If you plot it as a chart, put popularity on one axis and CM on the other, with lines at the two cutoffs; most guides draw popularity up the side [1].
What to do with each group
Stars: keep them exactly as they are
- Don't change the recipe or portion. Write down the spec so every cook plates it the same.
- Give them the best spots: the top of their section, a box, the first item on your online menu.
- A small price rise is usually safe on a Star, but test one at a time (see the math below).
Plowhorses: make each one leave more
- Lower the food cost without diners noticing: a cheaper bun that's just as good, a portion of fries trimmed by 10%, a sauce made in-house.
- Raise the price a little in steps of 50¢ to $1, watching weekly sales.
- Pair it with something high-margin: the burger with a drink and a side as a set, priced so the set's CM beats the burger alone.
- Don't move it to the best spot. It sells anyway; that spot is for a Star or a Puzzle.
Puzzles: get more people to order them
- Move it up to a more visible place, and on your online menu near the top of its section.
- Rewrite the description: what it is, how it's cooked, one detail that makes it yours. "Short rib, braised 6 hours in red wine, on mash" sells better than "Short rib".
- Ask your servers to mention it; a dish no one recommends stays a Puzzle.
- Check the price. If it's far above everything else, a lower price with a smaller portion might sell more and keep a high CM.
- Ask why. Three regulars' answers ("too heavy for lunch", "I didn't know what it was") often explain it.
Dogs: fix one thing, then cut
- Make one change (price, recipe or description) and give it four weeks. If it's still a Dog, take it off.
- Keep a Dog only for a reason you can name: the one vegan main, the dish a big table of regulars orders every week. Then price it to at least clear its food cost comfortably.
- Fewer items also means less prep, less waste and a faster kitchen. Cutting a Dog saves more than its margin.
How much a price rise can cost in sales before it loses money
When you raise a price, some diners may order something else. The rise still pays as long as sales drop less than this:
Most volume you can lose = 1 − (old CM ÷ new CM).
| Item | Old CM | Rise | New CM | Can lose up to |
|---|---|---|---|---|
| Burger | $10.80 | +$1.00 | $11.80 | 8.5% of sales (27 of 320) |
| Chicken sandwich | $10.90 | +$0.50 | $11.40 | 4.4% (9 of 210) |
| Pasta | $14.40 | +$1.00 | $15.40 | 6.5% (17 of 260) |
If the burger keeps all 320 sales at $17, that's +$320 every four weeks, about $4,160 a year. If it drops to 288, it loses $58 every four weeks. Watch the next four weeks and compare. Diners who skip the burger often order another main, so also check total main-course CM, not just the burger's.
For how diners read prices (dollar signs, endings, the decoy item), see menu pricing psychology.
Where items go on the page, and online
- Lead each section with a Star or a Puzzle, not a Plowhorse. Every reader sees the first items of a section; not every reader gets to the last.
- Don't list prices in a column down the right edge, which invites reading prices first; put each price after its description. The evidence for this and other layout claims is mixed; see menu pricing psychology for which ones hold up.
- Online, order matters more. On a phone, diners see the first three or four items of a section, then scroll. Put Stars and Puzzles first, and give the Puzzle a photo if you have a good one.
- Keep the online menu in step with the printed one. A Dog you cut on paper but left online still gets ordered.
An online menu you can change in a minute makes testing cheap: move a Puzzle up on Monday, check orders on Friday. You can build one free from a photo of your menu, with pickup orders that ring your phone and item counts you can read.
How often to run it
- Every quarter for most independents, and whenever a big ingredient price moves (beef, eggs, avocado).
- Four weeks after any change, to judge it.
- After a seasonal menu change, starting fresh: a new item needs at least four weeks of sales before it has a fair group.
What menu engineering can't see
- Labor. CM counts food only. A dish that takes 12 minutes of hands-on time can look like a Star and still be a bad deal on a busy night.
- It's relative. The lines are your menu's own averages, so a menu of weak dishes still has Stars. Check your overall food cost too.
- Links between items. Cutting a Dog may lose the table that came for it. Removing a side can lower sales of the main it goes with.
- Promotions and specials. A week where the burger was on a deal will distort its popularity. Leave those weeks out.
- Guest love. Popularity is sales, not reviews. A dish that brings people back may be worth a low CM.
Common mistakes
- Judging dishes on food cost % alone. It hides your best-paying plates.
- Mixing categories. Drinks and desserts have different margins; analyze each on its own.
- Plain averages. Use the weighted average CM for the margin line.
- Changing five things at once. Then you can't tell which one worked.
- Old food costs. Re-cost plates from this month's invoices before you run it.
- Cutting a Dog without asking. One question to the regular who orders it can save a table.
Questions
What is menu engineering in simple words?
Sorting your dishes by how many you sell and how much each leaves you after food cost, then changing price, recipe, description or position to sell more of the ones that pay.
What are the four categories of the menu engineering matrix?
Stars (popular, high margin), Plowhorses (popular, low margin), Puzzles (unpopular, high margin) and Dogs (unpopular, low margin) [1] [2] [3].
What is the 70% rule in menu engineering?
An item counts as popular if its share of sales in its category is at least 70% of an equal share: 0.7 ÷ the number of items [3]. With 10 items, that's 7%.
How do you calculate contribution margin for a menu item?
Menu price minus the food cost of one plate. A $24 salmon bowl with $8.40 of food has a $15.60 CM.
How long a period should I analyze?
At least four weeks of normal trade, leaving out holiday weeks and weeks with a promotion on any item.
Do small restaurants need menu engineering?
A small menu is easier: eight mains take an hour in a spreadsheet. The fewer items you have, the more each one matters.
Ready to test a change? Put your menu online where you can move a dish in a minute: build your menu site free from a photo. More answers are in all our guides.
Sources
- Menu engineering matrix, Toast, read Nov 4, 2026 (as listed in search; the page blocks direct reading).
- The menu engineering matrix explained: Stars, Plowhorses, Puzzles and Dogs, Loaded, read Nov 4, 2026 (uses menu averages as the cutoffs).
- Michael L. Kasavana and Donald I. Smith, Menu Engineering: A Practical Guide to Menu Analysis, Hospitality Publications, 1982 (the method, the four groups and the 70% popularity rule).
- Restaurant menu engineering matrix, CrunchTime, read Nov 4, 2026 (contribution margin = price − ingredient cost; averages shift with the items chosen).