Skip to content

Monthly Menu-Mix Engineering Analysis

Example prompt: "On the first of each month, take the POS line-item sales export for the previous month and our recipe-card cost sheet, work out how many of each dish we sold and the gross margin on each, group them into the classic menu-engineering quadrants — strong sellers with good margin, weak sellers with good margin, strong sellers with thin margin, weak sellers with thin margin — and email me and the head chef a short report so we've got something to talk about before we rewrite the menu."

The Problem

A restaurant menu rewrite is one of the few decisions an owner-operator makes every month or two that genuinely moves the P&L, and most independents make it on instinct because pulling the numbers takes the better part of an afternoon. The POS line-item export is a 200-row CSV by dish; the recipe-card cost sheet is a separate Google Sheet the head chef updates by hand; multiplying through to get sold-count × margin per dish, then comparing each dish against the period's average to classify it as a star, a puzzle, a plowhorse, or a dog is the standard menu-engineering exercise — and it is the exercise nobody runs because pivoting the CSV in Sheets, joining to the recipe-card costs, and writing the read takes ninety minutes that the head chef and the owner do not have between services. The menu gets rewritten on which dishes the kitchen is bored of and which the front-of-house remembers selling, and the dish that is busy on the pass but barely covers its cost stays on for another quarter because nobody has the numbers in front of them.

How GloriaMundo Solves It

We build a workflow that fires on the first of each month and assembles the menu-mix analysis from two sources. An integration step opens the most recent POS line-item sales export — the CSV the till supplier emails at month-end with one row per dish and columns for sold-count, gross sales, and category — and reads the rows for the previous month. A second integration step reads the 'Recipe Cards' tab of the kitchen Google Sheet, which has one row per dish with the food cost per portion that the head chef keeps current. A code step joins the two on dish name, computes sold-count, gross sales, food cost, and gross margin per dish, calculates the month's average sold-count and average margin across the menu, and classifies each dish into the four menu-engineering quadrants against those averages. An LLM step assembles a short report — the quadrant grid with the dishes in each, the three dishes that moved quadrant since last month, and a short read of what the numbers suggest for the next menu rewrite. The report goes by Gmail to the owner and the head chef, with the joined working in a 'Menu Mix' tab of the kitchen sheet for the head chef to dig into. Glass Box preview shows the joined working and the report before it sends so the first run can be sense-checked against a couple of dishes the head chef knows by heart.

Example Workflow Steps

  1. Trigger (scheduled): On the first of each month at 9am.
  2. Step 1 (integration): Open the most recent POS line-item sales export emailed by the till supplier between the 28th and the 1st, parse the CSV attachment, and pull rows for the previous calendar month with dish name, sold count, gross sales, and category.
  3. Step 2 (integration): Read the 'Recipe Cards' tab of the kitchen Google Sheet — one row per dish with the current food cost per portion as kept by the head chef.
  4. Step 3 (code): Join the two on dish name, compute gross margin per dish (gross sales minus food cost × sold count), calculate the period's average sold-count and average gross margin across the menu, and classify each dish into the four quadrants — high-volume high-margin, low-volume high-margin, high-volume low-margin, low-volume low-margin — against those averages.
  5. Step 4 (integration): Read last month's 'Menu Mix' tab from the kitchen sheet so quadrant moves can be detected — the dishes that moved from low-volume to high-volume, the dishes whose margin slipped under the average, and any newcomers since last month.
  6. Step 5 (llm): Assemble a short report — the quadrant grid with the dishes listed in each, the three dishes that moved quadrant since last month with a one-line read of why, and two or three sentences reading what stood out for the next menu rewrite.
  7. Step 6 (integration): Write the joined working to a new 'Menu Mix' tab of the kitchen sheet keyed by month so the head chef can dig into the per-dish numbers and so next month's run has the prior period to compare against.
  8. Step 7 (integration): Email the report to the owner and the head chef with the link to the 'Menu Mix' tab.

Integrations Used

  • Gmail — opens the POS line-item export the till supplier emails at month-end and sends the final report to the owner and the head chef
  • Google Sheets — the 'Recipe Cards' tab for current food costs per portion, and the 'Menu Mix' tab for the joined working and the period-on-period comparison

Who This Is For

Owner-operators and head chefs at independent restaurants, bistros, and gastropubs who rewrite the menu every six to twelve weeks, run the kitchen on recipe cards, and have a till that emails a monthly line-item sales CSV — anyone who has rewritten a menu on instinct because the ninety minutes to pull the numbers properly never came back.

Time & Cost Saved

A proper menu-mix analysis pivoting the POS export and joining the recipe-card costs is a sixty to ninety-minute job for the head chef or the owner if the spreadsheet hygiene is good, and longer if it is not — and the typical independent runs it twice a year instead of every month, which means most menus carry the dish whose margin slipped last quarter and nobody noticed. The workflow makes the analysis the same fifteen-minute read every month at the kitchen meeting; the operating value is not the hour of pivot-table work it saves, it is the menu rewrite that happens off real numbers instead of off the dishes the kitchen is bored of.