Sales - Menu Category Penetration

The Menu Category Penetration report shows what percentage of your store's orders contain at least one item from each menu category, for example how many orders include a drink, a side or a dessert. You can split it by cashier, date, day of week, hour of day, device type, month, sales channel, shift or transaction type. It's for store managers and franchisees who want to drive upselling, reward cashiers who sell the extras, or check how a promotion is doing during the hours it runs.


Updated Thu 22 Oct 2026

Running the report

1
Open Reports for your store and choose Menu Category Penetration under Sales.
2
Choose your start and end dates and how you want the results split up in Select your preferred grouping period (see Report options).
3
Run the report. You get one block for each value of your grouping (for example one block per cashier), and in each block one line per menu category, highest percentage first, with a gauge showing how close it is to 100%.
TipRun it on Cashier Name to see which cashiers add drinks or desserts to their orders, then on Hour Of Day to see whether your happy hour drinks promotion really lifts the share of orders with a drink during the hours it runs.

Report options

Select your start date / end date

The first and last trading day to include. Your store's close of trade time is used, so a sale after midnight but before close of trade counts towards the previous trading day. Both default to today.

Select your preferred grouping period

Cashier Name
No Grouping
Date
Day of Week
Device Type
Hour Of Day
Month
Sales Channel
Shift Number
Transaction Type

How the orders are split into blocks. The default is Cashier Name. Each block works out its own percentages from its own orders only.

No Grouping
One block, headed All Orders, for every order in the period.
Cashier Name
One block per cashier who rang up the orders, for example Alex Jones (AJ). The short name in brackets only shows when it's different from the full name. Orders the POS couldn't match to a person are under Unknown.
Date
One block per trading day, for example 12 Oct 2026.
Day of Week
One block per trading day of the week, for example Monday. Every Monday in the period is added together.
Device Type
One block per type of device the order was rung up on.
Hour Of Day
One block per hour, for example 12 to 13. This is the actual hour the order was rung up, not the trading day.
Month
One block per month name, for example October. The same month in different years is added together.
Sales Channel
One block per sales channel, for example eat-in, takeaway or delivery, as set up for your store.
Shift Number
One block per POS shift.
Transaction Type
One block per type of transaction, as named on the POS.

When your close of trade is later than midnight, the Date, Day of Week and Month headings get an asterisk, as a reminder that sales between midnight and close of trade count towards the previous day.

No sales figuresThis report counts orders, not money. There is no gross or net, inclusive or exclusive option, because no rand value is shown anywhere on it.

The report at a glance

Bob's Burgers Times Square
Menu category penetration report
From Mon 12 Oct 2026 00:00 until Sun 18 Oct 2026 23:59

The dates are trading days. If your store's close of trade is later than midnight (say 02:00), the line reads From Mon 12 Oct 2026 02:00 until Mon 19 Oct 2026 02:00 * and the asterisk is explained at the foot of each page: sales between midnight and close of trade are included in the previous day's sales.

  1. A short green note with an i icon explaining what the report shows. It prints once, at the top of the first page.
  2. Grouping headings: a grey heading for each value of your grouping, for example each cashier.
  3. Category penetration lines: under each heading, one line per menu category with its percentage, a sentence and a gauge.

The footer of every page shows when the report was run and by whom, the store name and code, the report version and the page number. If there were no orders in the period, the report shows Can't find any information for the selected date range instead.

Grouping headings

Each block starts with a grey heading showing the grouping value. The heading repeats at the top of the next page if a block runs over. The example uses Cashier Name.

Alex Jones (AJ) 1
Burgers - 100.0 %Every sale contains at least one item from the Burgers category.100.0
Drinks - 60.0 %100 out of every 167 sales contain at least one item from the Drinks category.60.0
Sides - 20.0 %100 out of every 500 sales contain at least one item from the Sides category.20.0
Sam Smith 2
(Sam's categories follow, see Category penetration lines)

1 The grouping value

The cashier, date, day, hour, device type, month, sales channel, shift or transaction type the block is for. With No Grouping there's a single block headed All Orders.

2 The order of the blocks

Names (cashiers, device types, sales channels) are in alphabetical order. Dates, days of the week, hours and months are in time order.

Category penetration lines

Under each heading there is one line for every menu category that appeared on at least one order in that block, highest percentage first. The example is the block for Sam Smith, who rang up 160 orders in the period.

Sam Smith
Burgers - 85.0 % 1100 out of every 118 sales contain at least one item from the Burgers category. 285.0 3πŸ‘‘ 4
Drinks - 57.5 %100 out of every 174 sales contain at least one item from the Drinks category.57.5
Unknown - 43.8 % 5100 out of every 229 sales contain at least one item from the Unknown category.43.8
Sides - 30.0 %100 out of every 333 sales contain at least one item from the Sides category.30.0
Desserts - 10.0 %100 out of every 1000 sales contain at least one item from the Desserts category.10.0

Here 136 of Sam's 160 orders had a burger (85.0%), 92 had a drink (57.5%), 70 had an item with no category (43.8%), 48 had a side (30.0%) and 16 had a dessert (10.0%).

1 Category and percentage

The menu category's name and the percentage of the block's orders that contain at least one item from it, to one decimal. An order with three burgers counts once for Burgers. An order with a burger and a drink counts once for Burgers and once for Drinks, so the percentages in a block add up to more than 100%.

2 The sentence

The same figure put another way: out of how many orders 100 contain the category. 85.0% is 100 out of every 118 orders. When every order in the block has the category, the sentence reads Every sale contains at least one item from the Burgers category.

3 The gauge

A bar from 0 to 100 shows the percentage in blue against three coloured zones:

0 to 33: low33 to 66: medium66 to 100: high

Use it to spot at a glance which categories are on most orders and which ones have room to grow.

4 The crown

A crown appears next to the gauge when the percentage is above 66.6%: the category is on two out of every three orders or more.

5 Unknown

Items on an order that have no menu category of their own. These are usually the options rung up under an item, such as Extra cheese or No onion under a burger. A high percentage here simply means many orders had an option added.

Sales, orders, invoices
On this report they all mean the same thing: one order rung up on the POS.

Watch the video

A walkthrough of the Menu Category Penetration report: choosing a grouping, reading the percentages and gauges, and using it to drive upselling.

Can't see the video? Watch it on YouTube.

Frequently asked questions

Why do the percentages in a block add up to more than 100%?

Each percentage is the share of orders that contain the category. One order with a burger, fries and a drink counts under Burgers, Sides and Drinks, so the categories overlap. They aren't shares of your sales value.

What is the Unknown category?

Items with no menu category of their own, usually the options rung up under an item (an extra topping, a sauce, a cooking preference). It's not an error. If a real menu item shows here, give it a category in your menu.

Why does a category appear twice with slightly different names?

The report uses the category name that was on the order when it was rung up. If you renamed a category during the period, orders before and after the change show under the old and the new name.

Does buying three of the same item count three times?

No. The report asks one question per order and category: is there at least one item from this category? Three burgers on one order count as one order with a burger.

Why does a sale at 01:00 show under the previous day?

If your store's close of trade is after midnight, everything before close of trade belongs to the previous trading day. That applies to the dates you choose and to the Date, Day of Week and Month groupings, which then show an asterisk. Hour Of Day still shows the actual hour, so that sale is under 01 to 02.

Why are two Octobers added together?

Month groups by the month's name only. If your dates cover more than a year, the same month from each year falls into one block. Run the report one year at a time to keep them apart.

Why is a cashier shown as Unknown?

The POS couldn't match the login on those orders to a person, for example because the login code was removed. The orders are still counted.

Can I see this in rands, or including or excluding VAT?

No. The report counts orders, not money, so it's the same whatever your brand's VAT setting. For sales values per category use the Category Grouping Sales or Best Sellers reports.

Glossary

Close of trade
The time your store's trading day ends. Sales before it count towards that day.
Crown
Shown next to a category that is on more than 66.6% of the block's orders.
Gauge
The bar from 0 to 100 next to each category, with red, yellow and green zones.
Grouping
How the orders are split into blocks, chosen in Select your preferred grouping period.
Menu category
The category an item belongs to in your menu, for example Burgers, Drinks or Desserts.
Order
One sale rung up on the POS. The report also calls it a sale or invoice.
Penetration
The percentage of orders that contain at least one item from a category.
Trading day
Close of trade to close of trade, in your store's local time.
Unknown
As a category: items with no category of their own, usually options. As a cashier: orders the POS couldn't match to a person.