Menu Economics Review · USD 129
Marrow and Vine, 54 covers, Providence
Twelve months of sales mix and recipe cost, turned into the four menu decisions that move the most money.
You sent twelve months of item level sales and your current recipe costings. This review does one thing with them: it works out which dishes are paying for the restaurant, which ones are being subsidised by the rest of the menu, and what changes in the next ninety days without touching your food or your identity.
Your menu is not too expensive and it is not badly cooked. It is too wide. Five dishes produce 62 percent of covers, six produce almost nothing and consume disproportionate prep, and the pricing on your two most popular plates has not moved since 2024 while your protein cost has.
Position
What the twelve months show
Revenue is up 4 percent year on year. Contribution is down 6 percent. Nothing is wrong with your demand. Something is wrong with your menu's arithmetic.
Three things happened at once. Protein cost rose 11 percent across your two main suppliers, your two best selling dishes held their 2024 prices, and you added four dishes in eighteen months without removing any. Individually each was defensible. Together they moved roughly USD 2,300 a month from your margin to your plates.
Analysis
Menu engineering table
Every dish placed against two axes: how often it sells, and what it contributes after food cost. The label is not a judgement on the dish. It is a statement about what to do with it next.
| Dish | Covers / mo | Contribution | Class | Action |
|---|---|---|---|---|
| Bavette, anchovy butter | 311 | USD 13.40 | Star | Protect. Do not discount, do not move on the menu |
| Cacio e pepe | 402 | USD 6.20 | Plow horse | Raise USD 2. Highest volume, lowest resistance |
| Roast chicken for two | 188 | USD 15.80 | Star | Protect. Feature at the top of the section |
| Squash agnolotti | 96 | USD 11.90 | Puzzle | Sells poorly, earns well. Rename and reposition |
| Beet and hazelnut | 44 | USD 9.10 | Puzzle | Keep as the vegetarian anchor, describe it better |
| Fritto misto | 51 | USD 3.20 | Dog | Cut. Fryer station, low sales, lowest contribution |
| Lamb ragu | 63 | USD 4.40 | Dog | Cut. Overlaps the bavette and holds a separate braise |
| Tuna crudo | 38 | USD 5.60 | Dog | Cut. Waste risk on a 38 cover item |
| Burrata, peach | 142 | USD 8.70 | Plow horse | Seasonal, keep, raise USD 1 |
| Chocolate budino | 204 | USD 7.30 | Star | Protect. Your only dessert that sells |
Twelve further dishes sit below 40 covers a month. They are listed in full in the appendix of your workspace copy. Contribution is menu price minus recipe cost at your current supplier prices, excluding labour.
Prep
What the low sellers actually cost
Food cost is only half the price of a dish. The other half is the prep it holds, the station it occupies on a Friday and the stock it ties up. Three dishes are expensive on all three counts and cheap on none.
Pricing
Where the money is, and where it is not
Four price moves, modelled at your observed volumes. Elasticity assumptions are conservative: a 5 percent volume loss on every raised item, which is heavier than the published norm for neighbourhood bistros at this price point.
| Move | From | To | Monthly effect | Risk |
|---|---|---|---|---|
| Cacio e pepe | USD 19 | USD 21 | +USD 764 | Low |
| Burrata, peach | USD 16 | USD 17 | +USD 135 | Low |
| Roast chicken for two | USD 58 | USD 62 | +USD 714 | Medium |
| Cut three dogs | n/a | n/a | +USD 727 | Low |
| Combined | +USD 2,340 |
The chicken carries the medium flag because it is your signature table order, not because the price is wrong. Move it last, after the others have landed.
Reviews
What customers are already telling you
Four hundred and six reviews across three platforms over twelve months, coded by theme. Two themes support the cuts recommended above and one warns against the obvious response to them.
The pasta comment is about price relative to portion, not about price. Raising cacio e pepe by two dollars while adding fifteen grams of pasta costs you eleven cents and removes the objection entirely.
Carried into the implementation calendar
Execution
Ninety days, in order
- Week 1
Cut three dishes, change nothing else
Remove fritto misto, lamb ragu and tuna crudo. Do not announce it, do not replace them. Watch covers for two weeks to confirm the volume moves to neighbouring dishes rather than out of the door.
- Week 3
Reprint with the two low risk rises
Cacio e pepe to USD 21 with a slightly larger portion, burrata to USD 17. Same reprint, so the menu only changes once.
- Week 5
Rebuild the agnolotti description
It earns USD 11.90 and sells 96. The problem is the name and the position, not the dish. Move it under the bavette and describe the filling, not the shape.
- Week 8
Move the chicken
Only if weeks 1 to 5 held. USD 58 to USD 62, and feature it at the head of the section rather than the foot.
- Week 12
Re-measure and decide about the second prep shift
If the 17 recovered prep hours have held, the Tuesday prep shift is no longer required, which is a further USD 640 a month that this review has not counted.
- Contribution per cover, weekly
- Covers on the five core dishes as a share of total
- Waste by station, weekly
- Prep hours actually worked after week 4
- Review mentions of menu confusion
- Average spend per cover, excluding drinks