Financial - Contribution Margin
Updated Fri 23 Oct 2026
Running the report
Report options
Select your start date
The first trading day to include. The default is today. Change it to look at an earlier day or the start of a week or month.
end date
The last trading day to include. The default is today. The whole of this day is included, up to your close-of-trade time.
There are no other options. The sections and columns are always the same.
The report at a glance
The dates are the first and last trading day you picked. If your trading day ends at a time other than midnight, an asterisk follows the dates and the note at the bottom of each page explains your trading times.
- Sales channel commissions: the commission rate of each channel that charges one
- Sales channels: walk-in and delivery channels
- Transaction types: counter, table, delivery and so on
- Payment methods: how customers paid
- Sit down / Take away: eat in against take away
- Day of week: Monday to Sunday
- Hour of day: busy and quiet hours
- Grand totals: everything added together once
Every section uses the same columns: Net sales incl, Net sales excl, Cost of sales excl, Gross profit excl, Sales channel commis excl, Contribution margin excl, FC%, GP% and CM%. The examples below also show a total row so you can see each section adds up to the grand total. The report itself shows the total once, in the grand totals.
Sales channel commissions
At the very top, the report lists every sales channel that charges you a commission, with its rate. Channels with no commission are left out. These rates are set up for your brand, not per store.
| Sales channel name | Sales channel commission percentage |
|---|---|
| Delivery app | 30% of net sales (incl) |
The commission is worked out on net sales including taxes, because that is how delivery platforms charge their fee.
Sales channels
Where each sale came from: your own counter and tables (here called Walk-in) or a delivery app. This is the first section to look at, because commission is only charged on sales channels that have a rate, so this is where contribution margin and gross profit start to differ.
| Sales channels | Net sales incl | Net sales excl | -Cost of sales excl | =Gross profit excl | -Sales channel commis excl | =Contribution margin excl | FC% | GP% | CM% |
|---|---|---|---|---|---|---|---|---|---|
| Delivery app 1 | 11 500.00 | 10 000.00 | 3 500.00 | 6 500.00 | 3 450.00 | 3 050.00 | 35.0% | 65.0% | 30.5% |
| Walk-in 2 | 34 500.00 | 30 000.00 | 9 300.00 | 20 700.00 | 0.00 | 20 700.00 | 31.0% | 69.0% | 69.0% |
| Total: | 46 000.00 | 40 000.00 | 12 800.00 | 27 200.00 | 3 450.00 | 23 750.00 | 32.0% | 68.0% | 59.4% |
1 A channel with commission
Delivery app has net sales of R 11 500.00 including taxes. At the rate shown in the list above, the commission is R 3 450.00. It comes off the gross profit of R 6 500.00 and leaves a contribution margin of R 3 050.00, which is why CM% is lower than GP% on this row.
2 A channel with no commission
Walk-in sales carry no commission, so the commission is 0.00 and CM% equals GP%.
- Net sales incl / excl
- What was sold after discounts and without delivery charges, with taxes included or taken out.
- The blue - and = signs
- The blue signs above the headings show the sum: net sales excl minus cost of sales equals gross profit excl, minus commission equals contribution margin excl.
Transaction types
The same figures split by how the order was rung up: Counter, Table, Delivery and so on. Use it to see which kind of order earns the most after food cost.
| Transaction types | Net sales incl | Net sales excl | -Cost of sales excl | =Gross profit excl | -Sales channel commis excl | =Contribution margin excl | FC% | GP% | CM% |
|---|---|---|---|---|---|---|---|---|---|
| Counter | 13 800.00 | 12 000.00 | 3 900.00 | 8 100.00 | 0.00 | 8 100.00 | 32.5% | 67.5% | 67.5% |
| Delivery | 11 500.00 | 10 000.00 | 3 500.00 | 6 500.00 | 3 450.00 | 3 050.00 | 35.0% | 65.0% | 30.5% |
| Table | 20 700.00 | 18 000.00 | 5 400.00 | 12 600.00 | 0.00 | 12 600.00 | 30.0% | 70.0% | 70.0% |
| Total: | 46 000.00 | 40 000.00 | 12 800.00 | 27 200.00 | 3 450.00 | 23 750.00 | 32.0% | 68.0% | 59.4% |
Commission only shows against types sold through a channel with a rate (here Delivery). The total row is not printed on the report; it is shown here so you can see the section adds up to the grand total.
Payment methods
The same figures split by how the customer paid. When one sale is paid with more than one method (part cash, part card), the sale is shared between the methods in proportion to what each one paid, so nothing is counted twice and this section still adds up to the grand total.
| Payment methods | Net sales incl | Net sales excl | -Cost of sales excl | =Gross profit excl | -Sales channel commis excl | =Contribution margin excl | FC% | GP% | CM% |
|---|---|---|---|---|---|---|---|---|---|
| Card | 27 600.00 | 24 000.00 | 7 680.00 | 16 320.00 | 2 070.00 | 14 250.00 | 32.0% | 68.0% | 59.4% |
| Cash | 13 800.00 | 12 000.00 | 3 840.00 | 8 160.00 | 0.00 | 8 160.00 | 32.0% | 68.0% | 68.0% |
| Post-paid account 1 | 4 600.00 | 4 000.00 | 1 280.00 | 2 720.00 | 1 380.00 | 1 340.00 | 32.0% | 68.0% | 33.5% |
| Total: | 46 000.00 | 40 000.00 | 12 800.00 | 27 200.00 | 3 450.00 | 23 750.00 | 32.0% | 68.0% | 59.4% |
1 Account sales
Sales put on an account (for example a delivery app that pays you later) show under the account payment method. Two more lines can appear: Unpaid for sales with an amount still outstanding, and No payment due for sales with nothing to pay, such as a fully discounted order.
Sit down / Take away
Splits sales into food eaten in (Sit Down) and food taken away (Take Away, which includes delivery and collection). The recipe used for cost can differ between the two, because a recipe can have separate sit down and take away parts.
| Sit down / Take away | Net sales incl | Net sales excl | -Cost of sales excl | =Gross profit excl | -Sales channel commis excl | =Contribution margin excl | FC% | GP% | CM% |
|---|---|---|---|---|---|---|---|---|---|
| Sit Down | 20 700.00 | 18 000.00 | 5 400.00 | 12 600.00 | 0.00 | 12 600.00 | 30.0% | 70.0% | 70.0% |
| Take Away | 25 300.00 | 22 000.00 | 7 400.00 | 14 600.00 | 3 450.00 | 11 150.00 | 33.6% | 66.4% | 50.7% |
| Total: | 46 000.00 | 40 000.00 | 12 800.00 | 27 200.00 | 3 450.00 | 23 750.00 | 32.0% | 68.0% | 59.4% |
Day of week
One row per day of the week, always Monday to Sunday, adding up every matching day in your date range. A longer range gives each day more weight, so compare days within the same report.
| Day of week | Net sales incl | Net sales excl | -Cost of sales excl | =Gross profit excl | -Sales channel commis excl | =Contribution margin excl | FC% | GP% | CM% |
|---|---|---|---|---|---|---|---|---|---|
| Monday | 5 060.00 | 4 400.00 | 1 408.00 | 2 992.00 | 330.00 | 2 662.00 | 32.0% | 68.0% | 60.5% |
| Tuesday | 5 290.00 | 4 600.00 | 1 472.00 | 3 128.00 | 345.00 | 2 783.00 | 32.0% | 68.0% | 60.5% |
| Wednesday | 5 750.00 | 5 000.00 | 1 600.00 | 3 400.00 | 375.00 | 3 025.00 | 32.0% | 68.0% | 60.5% |
| Thursday | 5 980.00 | 5 200.00 | 1 664.00 | 3 536.00 | 390.00 | 3 146.00 | 32.0% | 68.0% | 60.5% |
| Friday | 8 280.00 | 7 200.00 | 2 304.00 | 4 896.00 | 690.00 | 4 206.00 | 32.0% | 68.0% | 58.4% |
| Saturday | 10 120.00 | 8 800.00 | 2 816.00 | 5 984.00 | 960.00 | 5 024.00 | 32.0% | 68.0% | 57.1% |
| Sunday | 5 520.00 | 4 800.00 | 1 536.00 | 3 264.00 | 360.00 | 2 904.00 | 32.0% | 68.0% | 60.5% |
| Total: | 46 000.00 | 40 000.00 | 12 800.00 | 27 200.00 | 3 450.00 | 23 750.00 | 32.0% | 68.0% | 59.4% |
Hour of day
One row per hour the store sold something, shown as the hour it starts and the hour it ends, for example 18-19. The hour is the store's local time. Hours without sales do not appear.
| Hour of day | Net sales incl | Net sales excl | -Cost of sales excl | =Gross profit excl | -Sales channel commis excl | =Contribution margin excl | FC% | GP% | CM% |
|---|---|---|---|---|---|---|---|---|---|
| 11-12 | 2 300.00 | 2 000.00 | 640.00 | 1 360.00 | 0.00 | 1 360.00 | 32.0% | 68.0% | 68.0% |
| 12-13 | 6 900.00 | 6 000.00 | 1 920.00 | 4 080.00 | 450.00 | 3 630.00 | 32.0% | 68.0% | 60.5% |
| 13-14 | 5 750.00 | 5 000.00 | 1 600.00 | 3 400.00 | 300.00 | 3 100.00 | 32.0% | 68.0% | 62.0% |
| 14-15 | 2 300.00 | 2 000.00 | 640.00 | 1 360.00 | 0.00 | 1 360.00 | 32.0% | 68.0% | 68.0% |
| 17-18 | 4 600.00 | 4 000.00 | 1 280.00 | 2 720.00 | 400.00 | 2 320.00 | 32.0% | 68.0% | 58.0% |
| 18-19 | 9 200.00 | 8 000.00 | 2 560.00 | 5 440.00 | 900.00 | 4 540.00 | 32.0% | 68.0% | 56.8% |
| 19-20 | 10 350.00 | 9 000.00 | 2 880.00 | 6 120.00 | 1 000.00 | 5 120.00 | 32.0% | 68.0% | 56.9% |
| 20-21 | 4 600.00 | 4 000.00 | 1 280.00 | 2 720.00 | 400.00 | 2 320.00 | 32.0% | 68.0% | 58.0% |
| Total: | 46 000.00 | 40 000.00 | 12 800.00 | 27 200.00 | 3 450.00 | 23 750.00 | 32.0% | 68.0% | 59.4% |
The hour comes from the time the sale was created. It follows the clock, not the trading day, so late-night sales show under their real hour.
Grand totals
The last block adds everything together once. It is the figure every section above adds up to.
| Gross sales | -Discounts | =Net sales | -Cost of sales | =Gross profit | -Sales channel commis | =Contribution margin | FC% | GP% | CM% | |
|---|---|---|---|---|---|---|---|---|---|---|
| Excl: 1 | 41 500.00 | 1 500.00 | 40 000.00 | 12 800.00 | 27 200.00 | 3 450.00 | 23 750.00 | 32.0% | 68.0% | 59.4% |
| Taxes: 2 | 6 225.00 | 225.00 | 6 000.00 | |||||||
| Incl: | 47 725.00 | 1 725.00 | 46 000.00 | |||||||
| + Delivery charges (incl): 3 | 300.00 | |||||||||
| = Turnover (incl): | 46 300.00 |
1 Excl row
Gross sales less discounts equals net sales. Net sales less cost of sales equals gross profit, and gross profit less commission equals contribution margin. FC% is cost of sales as a share of net sales excl, GP% is gross profit as a share of net sales excl and CM% is contribution margin as a share of net sales excl.
2 Taxes row
The difference between the incl and excl figures.
3 Delivery charges and turnover
Delivery charges are not part of net sales. They are added underneath: net sales incl plus delivery charges incl equals turnover incl.
Frequently asked questions
Why does nothing show, only an orange message about cashups?
For security the report is held back while any cashup for today or yesterday in your date range has not been posted, so figures cannot be used to adjust a cashup count. Post the cashups, or run the report for earlier days. Days with no cashups at all are never blocked.
Why do FC% and GP% not add up to 100%?
They add up to 100% only when every item sold has a recipe. Sales of items with no recipe still count in net sales, but their cost, gross profit and contribution margin are left out (they are unknown, not zero). Add a recipe for those items and the figures fill in on the next run.
Why is my cost of sales different from the Gross Profit report?
This report uses model costs multiplied by the recipe revision that was in use at the time of each sale. Other reports can use your stock costing method. Both are right for what they measure, so expect small differences.
Why is contribution margin lower than gross profit?
Contribution margin is gross profit less the commission your sales channels charge. Channels with no commission leave the two the same.
Why does a sale show under more than one payment method?
A sale paid with two methods is shared between them in proportion to the amount each one paid. The shares add back to the whole sale, so totals are never inflated.
Why does a sale at midnight count towards the previous day?
Trading days run from your close-of-trade time to the same time the next day. If your trading day does not end at midnight, the date line carries an asterisk and the note at the bottom of the page tells you the times. Sales before close of trade belong to the previous trading day.
Do voided or parked sales count?
No. Only valid sales are included, the same as the Sales Summary and Royalty reports, so the sales figures agree with those reports.
Why are delivery charges not in net sales?
Net sales are what you sold after discounts. Delivery charges are shown separately under the grand totals and added to give turnover.
Why do the totals differ by a few cents?
Every line is rounded to two decimals before it is added up, so a total can differ by a cent or two from the sum you work out by hand.
Glossary
- Account sale
- A sale put on a customer or platform account and paid later, for example by a delivery app.
- CM% (contribution margin percentage)
- Contribution margin as a share of net sales excl.
- Commission
- The fee a sales channel charges, worked out on net sales including taxes.
- Contribution margin (CM)
- Gross profit less sales channel commission: what a sale really contributes.
- Cost of sales
- What the items sold cost to make, from your model costs and the recipe in use at the time of the sale.
- Excl / Incl
- Excl means taxes are taken out. Incl means taxes are included. Taxes means value-added tax or your country's equivalent sales tax.
- FC% (food cost percentage)
- Cost of sales as a share of net sales excl.
- GP% (gross profit percentage)
- Gross profit as a share of net sales excl.
- Gross profit (GP)
- Net sales excl less cost of sales.
- Gross sales
- Everything sold before discounts, without delivery charges.
- Model cost
- The standard cost set for each stock item, used instead of what you actually paid on the day.
- Net sales
- Gross sales less discounts, without delivery charges.
- Recipe revision
- A dated version of an item's recipe. The version live when the sale was made is the one used.
- Sales channel
- Where an order came from, such as walk-in or a delivery app.
- Trading day
- The business day, running from your close-of-trade time to the same time the next day.
- Turnover
- Net sales plus delivery charges, including taxes.