Operations

Menu Engineering for Cafés: Stars, Plowhorses and Dogs

By The Tany Team 10 min read

Most café menus are archaeology. Items get added because a former barista loved them, prices get set by looking at the shop down the street, and nothing ever comes off because nobody wants to disappoint the four regulars who order it. The result is a menu that quietly subsidizes its own worst items with its best ones.

Menu engineering is the correction. It is a forty-year-old framework — deliberately simple — that sorts every item on your menu into one of four boxes using two numbers you already have or can get in an afternoon. This guide covers what the boxes mean, how to build the matrix from Square data, and what to actually do with each quadrant when the analysis is done.

What is menu engineering?

The framework comes from Michael L. Kasavana and Donald I. Smith, who published Menu Engineering: A Practical Guide to Menu Analysis in 1982 while at the Michigan State University School of Hospitality Business. It predates every POS you have ever used, which is part of why it has aged so well — it needs only two inputs.

Axis 1: popularity. How many units of this item sold, relative to the other items in its category, over a set period.

Axis 2: contribution margin. The menu price minus the cost of the ingredients that go into it. In dollars, not percent.

Plot every item against both axes, split each axis at the average, and you get four quadrants:

High contribution marginLow contribution margin
High popularityStar — sells well, earns wellPlowhorse — sells well, earns little
Low popularityPuzzle — earns well, rarely sellsDog — neither

The names are Kasavana and Smith’s, and the reason they stuck is that each one implies an obvious action.

Why contribution margin, not food cost percentage

This is the single most common mistake, so it is worth dwelling on.

Food cost percentage is the ratio of ingredient cost to menu price. It is a useful control number — the National Restaurant Association’s 2025 Restaurant Operations Data Abstract, drawing on more than 900 operators, put 2024 food and non-alcohol beverage costs at a median of 32.4% of sales for limited-service restaurants and 32.0% for full-service. If your café is wildly off that, something is wrong.

But food cost percentage is a terrible ranking tool, because it systematically flatters cheap items. Consider two items, using illustrative numbers:

ItemPriceIngredient costFood cost %Contribution margin
Drip coffee, 12oz$2.75$0.4215%$2.33
Turkey sandwich$12.50$4.4035%$8.10

By food cost percentage, the coffee looks more than twice as good. By dollars in the till, the sandwich is worth three and a half coffees. You pay rent in dollars. Rank by contribution margin, and use food cost percentage only as a sanity check on individual items.

One honest caveat: contribution margin ignores labour and equipment time. A pour-over that ties up a barista for four minutes during peak has a real cost the ingredient math misses. We handle that below, in the Plowhorse section.

Building the matrix from Square

Here is the practical workflow for a café on Square.

Step 1 — pull item sales. In the Square Dashboard, go to Reports → Custom → Item sales. The report gives you item name, quantity sold, gross sales, and net sales, and exports to CSV or Excel. Pull a clean, representative period — a full quarter is ideal; avoid windows containing a holiday closure or a one-off catering spike.

Step 2 — accept that Square probably won’t give you margin. This surprises people. The Item Sales report contains no cost or margin data. Square does have a cost of goods sold report that shows COGS, revenue, profit and profit margin — but it requires unit costs on your catalog and is available only to Square for Retail Plus/Premium subscribers, or Square Plus/Premium subscribers with advanced inventory added. If you are on the free plan, the margin column is yours to build.

Step 3 — cost your recipes. In a spreadsheet, list each menu item and the ingredient cost per unit sold. For a café this is more tractable than it sounds: most drinks are espresso + milk + cup + lid + sleeve + syrup pumps. Weigh your dose, price your milk per litre, and price the packaging per unit. An afternoon gets you 90% of the way.

Step 4 — compute the two axes. Add a contribution margin column (price − cost) and a units sold column from your export. Calculate the average of each within a category — compare espresso drinks to espresso drinks, food to food. Comparing a latte to a sandwich produces a matrix that just tells you food costs more than coffee.

Step 5 — assign quadrants. Above-average on both is a Star. Above on units, below on margin is a Plowhorse. And so on.

If you only do one thing from this article: add a contribution-margin column to your item sales export. Half the value shows up before you have drawn a single quadrant.

What to do with each quadrant

Stars — protect and feature them

High margin, high volume. These items are the business. The actions are:

  • Give them the best real estate on the menu. Top of a section, or visually set apart.
  • Do not touch the price casually. Stars are often price-sensitive precisely because everyone orders them; test increases in small increments and watch unit counts.
  • Protect the quality obsessively. A degraded Star does more damage than a discontinued Dog.
  • Feature them in your ordering channels — the default suggestion in your app, the item on the counter card.

Plowhorses — reprice, resize, or re-cost

Popular but thin. This is where most café drip coffee and basic drinks live, and it is the most interesting quadrant because you have three levers instead of one.

  • Raise the price slightly. A 25¢ increase on a high-volume item is the highest-leverage change available to a café. If an item sells 200 units a week, that is $2,600 a year from one line on a chalkboard.
  • Reduce the cost without reducing the experience. Cheaper packaging, better yield on your dose, a supplier renegotiation on the highest-volume input.
  • Attach something. A Plowhorse’s real job is often to carry a Star with it. Pairing prompts at the point of order are more effective than repricing when demand is genuinely price-elastic — see our guide on increasing average order value at a coffee shop.
  • Check the labour cost. This is the quadrant where a slow-to-make item hides. If a Plowhorse also takes three minutes of barista time in peak, it is worse than the ingredient math says.

Puzzles — promote it or lose it

Profitable but nobody orders it. Something is blocking demand, and it is usually one of four things: the item is invisible on the menu, the name is unappealing, the price signals wrong, or nobody knows what it is.

Try, in order: move it to a better position on the menu, rename and describe it properly, have staff recommend it for two weeks, and only then consider the price. There is real evidence that presentation moves spend — a Cornell study of 201 diners at the Culinary Institute of America found that people spent about $5.55 more, roughly 8%, when menus omitted dollar signs, which the researchers attributed to reducing the “pain of paying.” Removing dollar signs will not save a bad item, but it is a reminder that how a price is presented is a variable, not a constant.

If a Puzzle stays a Puzzle after a genuine promotion attempt, it becomes a Dog. Accept that.

Dogs — remove them, with two exceptions

Unpopular and unprofitable. The default action is deletion, and the benefit is not just the item — it is the menu space, the inventory line, the training burden, and the fridge shelf.

Two legitimate exceptions:

  1. Strategic items. A decaf option, a plant-milk option, or a gluten-free pastry may lose money per unit while making a whole group of customers possible. That is not a Dog; it is an access item. Cost it honestly and keep it.
  2. Shared-ingredient items. If the item uses an ingredient you already carry for a Star, removing it saves less than it appears and may reduce that ingredient’s turnover.

Everything else goes. A café menu that is one column shorter is faster to train on, faster to execute, and produces less waste — and shorter menus tend to read better on a phone, which matters more every year. If you are simplifying your digital menu at the same time, how to write menu photos and descriptions for online ordering is the companion piece.

A worked example

All numbers below are illustrative — they are here to show the mechanics, not to describe a real café.

A café pulls one quarter of Square item sales for its espresso category:

ItemUnitsPriceCostContribution marginQuadrant
Latte, 12oz3,100$5.25$1.05$4.20Star
Drip coffee, 12oz4,400$2.75$0.42$2.33Plowhorse
Cortado620$4.75$0.78$3.97Puzzle
Flavoured mocha410$5.75$2.60$3.15Dog-ish

Category averages: 2,133 units and $3.41 contribution margin.

The read: the latte is carrying the category and should be defended. Drip is the volume driver at a below-average margin — a 25¢ increase would add roughly $1,100 a quarter on the same unit count, and it is the item to test first. The cortado earns well and barely sells, which is a marketing problem, not a menu problem: move it up the board and have staff suggest it. The flavoured mocha is below average on both axes and carries a syrup SKU nothing else uses — that is the item to cut.

Notice that none of these conclusions required new software. They required one export and one spreadsheet column.

Where your ordering channel comes in

One practical note. The matrix depends on clean item-level data, and item-level data gets messy when the same drink is sold under different names across channels — a “Large Latte” on your POS, a “Latte (16oz)” on a delivery marketplace, and a modifier stack on your website. If your sales are fragmented across platforms with different catalogs, your menu engineering will be too.

Cafés running order-ahead on a channel that reads directly from their Square catalog avoid this entirely, because there is one item list and one set of counts. That is one of the quieter arguments for owning your ordering channel rather than renting several: Tany builds a branded iOS and Android ordering app on top of your existing Square POS for $99 CAD/month per location, so the item data you analyze is the same item data customers order from.

The takeaway

Menu engineering is not a software product. It is two columns and a quarterly hour. Pull item sales from Square, add contribution margin in dollars, split each category at its averages, and act: feature the Stars, reprice or re-cost the Plowhorses, promote the Puzzles once and honestly, and cut the Dogs that are not access items.

Do it once and you will find at least one item you have been subsidizing for years — and at least one you should be selling twice as hard.

Sources

Frequently asked questions

What is menu engineering?
Menu engineering is a method for analyzing a menu by plotting each item against two variables: its popularity (how many units sell relative to other items) and its contribution margin (menu price minus the cost of the ingredients). Items fall into four quadrants — Stars, Plowhorses, Puzzles and Dogs — and each quadrant calls for a different action such as promoting, repricing, reworking, or removing the item.
Who invented the Stars, Plowhorses, Puzzles and Dogs matrix?
The four-quadrant matrix comes from Michael L. Kasavana and Donald I. Smith, who published Menu Engineering: A Practical Guide to Menu Analysis in 1982. Both were at the Michigan State University School of Hospitality Business. The framework predates modern POS reporting but maps cleanly onto the item sales data any POS can export today.
Should I use food cost percentage or contribution margin?
Use contribution margin — menu price minus ingredient cost, in dollars — as the profit axis. Food cost percentage flatters cheap items and punishes expensive ones. A drip coffee at 15% food cost may contribute less than a dollar, while a lunch sandwich at 35% food cost contributes four. You bank dollars, not percentages, so rank by dollars and use food cost percentage only as a sanity check.
Can Square calculate menu engineering for me?
Partly. Square's Item Sales report in the Dashboard gives you the popularity side — item name, quantity sold, gross and net sales, exportable to CSV or Excel — but it does not include cost or margin. Square's cost of goods sold report does show COGS and profit margin, but it requires unit costs on your catalog and is only available to Square for Retail Plus/Premium subscribers or Square Plus/Premium subscribers with advanced inventory. On the free plan, expect to compute the margin column yourself in a spreadsheet.
How often should a café redo this analysis?
Quarterly is a sensible cadence for most independent cafés, plus once after any significant ingredient price change and once before a seasonal menu change. Doing it monthly tends to produce noise rather than signal, because a single busy week can move an item between quadrants without anything real having changed.