dohosGet started
PLATE Nº 158

What a menu needs to be heard, not just read.

A voice channel doesn't get to wave anything off the way a server can. It reads from whatever data source it's given, and confidently offers, prices, and accepts an order for anything that source says is available — accurately or not. This is the discipline that keeps that source trustworthy.

MOZZARELLA86'D · 7:12 PMCLASSIC CHEESE PIZZATHE BASE CHEESE — THE DISH IS BUILT AROUND ITHOLD, OR CONFIRM A SUBSTITUTETURKEY CLUBONE OPTIONAL ADD-ON AMONG SEVERALKEEP SELLING · DROP ONE ADD-ONGARDEN SALADONE OF FOUR TOPPING CHOICESKEEP SELLING · NARROW THE CHOICE
PLATE Nº 158 · MENU DATA FOR VOICE ORDERING

Every menu already lives in more than one place: the board over the counter, the point-of-sale item list, whatever a delivery app shows, the sheet taped by the line the kitchen actually cooks from. These rarely say exactly the same thing at the same moment. A server explains the difference out loud; a data-driven channel has no equivalent instinct — it only knows what it's told, which means the accuracy of the whole conversation is bounded by the accuracy of whichever list it's reading from, not by how well the software itself performs.

The practical fix isn't picking the “right” software — it's picking one place every other list defers to. A restaurant that adds a topping only to the printed menu, never to the system a voice channel actually reads from, hasn't really added it anywhere a caller can order it.

§ MODIFIER GROUPS, EXPLAINED CONCRETELY

Almost every real ordering problem traces back to how modifier groups are set up. Two properties matter most: whether a caller has to choose at all (required, or optional), and whether they can pick one option or several (single-select, or multi-select). The second distinction that trips up more menus than it should is included versus extra — a group can be all included, all extra, or a mix where the first choice is free and anything past it costs more.

Modifier groupSelection ruleIncluded vs. extraExample
SizeRequired, exactly onePrice changes by selection10", 12", 14"
CrustRequired, exactly oneBase included, one option costs moreThin, hand-tossed, stuffed
ToppingsOptional, any numberFirst two included, each extra costs morePepperoni, mushroom, onion
Add cheeseOptional, one on/offAlways an added chargeExtra mozzarella
DressingRequired, exactly oneIncluded regardless of choiceRanch, vinaigrette, on the side

Read that as a template, not a fixed answer — a taco counter's groups look nothing like a pizzeria's. What stays constant is the two questions worth asking of every group before it goes live: does the caller have to choose, and does choosing cost anything beyond the base price.

§ DECIDING WHAT HAPPENS WHEN SOMETHING RUNS OUT

Marking something unavailable — 86'ing, in restaurant-floor terms — usually forces a decision most restaurants have never written down: unavailable at what level? A missing ingredient rarely touches only one dish; it touches every item where it appears as a topping, a side, or an optional add-on. The honest range of responses is wider than a flat yes or no:

  • Stop offering the item entirely until the ingredient is back.
  • Keep offering it, but drop the one option that depends on the missing piece.
  • Offer a specific substitute and ask the caller to confirm it before it's added.
  • Take the request as written and flag it for a person to sort out before the kitchen sees it.

None is universally correct — a pizzeria out of one specialty topping might quietly drop it from a combo, while the same restaurant running out of its only gluten-free crust almost certainly needs a caller-facing confirmation, because silently substituting changes something the caller specifically chose for a reason. Whatever a restaurant decides, the version that damages trust fastest is a channel that keeps selling something that's actually gone, because nobody updated the one list it was reading from.

§ ONE INGREDIENT, SEVERAL MENU ITEMS

A restaurant runs out of fresh mozzarella midway through a shift — an ordinary kitchen event. Three items built with it need three different, correct outcomes:

Menu itemHow mozzarella is usedWhat should happen
Classic cheese pizzaThe base cheese — the dish is built around itStop offering, or confirm a substitute
Turkey club sandwichOne optional add-on among severalKeep selling; drop just that add-on
Garden saladOne of four topping choicesKeep selling; narrow that one choice

A system that only tracks availability at the level of whole menu items can't produce three different, correct answers from one shortage — it either takes down all three, turning a minor gap into an unnecessary loss of sales, or takes down none, letting the pizza keep selling as if nothing changed.

None of this depends on choosing any particular channel — see how Dohos reads a menu, or request access to see it against your own data.