Profit Reports
The Profit & Loss statement and Product Margins — what cost Kassly uses, what it strips out of revenue, and why two margin figures on two pages can disagree.
7 min read · Updated 10 Sep 2026
On this page
Profit is the number owners check and the number they most often dispute. This page sets out exactly what Kassly subtracts from what, so a margin that looks too low can be traced instead of guessed at.
Owners and Managers only. Cost, margin and profit are hidden from Cashiers and from custom roles everywhere they appear — on reports, on the dashboard, and inside insight panels.
Needs the Business Reports add-on (₱400 per branch each month), or any bundle that includes it, for Profit & Loss and Product Margins. Food Cost Analysis needs Inventory Pro (₱400 per branch each month) instead. The profit tiles on the Dashboard are visible but blurred on the Free plan.
The cost basis
Every profit figure in Kassly uses the cost recorded on the line at the moment of sale. Not today's cost price, not an average.
That single choice has consequences worth stating plainly:
- Changing a product's cost does not rewrite history. Put your supplier price up today and last month's margin does not move. This is the correct behaviour and it is what lets you compare months.
- A product sold before a cost was ever entered counts as costing nothing, so it shows a 100% margin and inflates your profit. This is the single most common cause of "my margin looks impossible". Fix it by setting cost prices — see Product pricing — and the figures will be right from that point forward, not retrospectively.
- Recipe-costed items carry the cost of their ingredients as at the sale. See Ingredients and recipes.
Stock valuation uses a different basis again. Inventory reports has the comparison table.
What is taken out of revenue
Kassly never treats these two as your money, so they are removed before any margin is computed:
- Output VAT. VAT you collect is owed to the BIR. Margining against a VAT-inclusive total would overstate profit by the whole 12%. A non-VAT store has nothing to remove, and its VAT line reads ₱0 throughout. See Tax configuration.
- Service charge. Under RA 11360 a service charge belongs to your staff. It is shown on the statement for information and it is never counted as revenue.
Senior-citizen and PWD sales already store a VAT-free, pre-discount figure, so the same arithmetic holds for them without a special case. See Discounts.
Profit & Loss
Reports → Profit & Loss. It defaults to month-to-date. Every line is clickable and opens the items behind it.
Revenue
| Line | What it is |
|---|---|
| Gross revenue | Sales before discounts, with VAT stripped out |
| Discounts | Everything given away, including statutory discounts |
| Voids | Total of sales voided during the period. Information only |
| Cross-period void reversal | Voids of sales that completed before this period. This one is subtracted |
| Returns | Refunds during the period, net of the VAT reversed with them |
| Service charge | Shown, never counted |
| Net revenue | Gross revenue − discounts − returns − cross-period void reversals |
The two void lines catch everyone out, so here is the reasoning. A sale voided in the same period it was made is already absent from Gross revenue, because voided sales are never counted as sales. Subtracting it again would double-count the loss. But a sale made in June and voided in July was in June's revenue and has to come out of July's — that is the cross-period line. If the two void figures on your statement differ, that difference is voids of older receipts.
Cost and gross profit
Cost of goods sold is the per-line cost at sale, summed. It is then reduced by two reversals so it matches your ledger: cross-period voids give back the cost of the sale they undid, and returns that were restocked give back the cost of the units that came back on the shelf.
Gross profit is Net revenue − Cost of goods sold. Gross margin is that as a percentage of net revenue.
Below gross profit
| Line | What it is |
|---|---|
| Service commission | Staff commissions accrued in the period, with void reversals netted off |
| Tips | Tips recorded to staff |
| Operating expenses | Approved expenses, with a breakdown by category and an itemised list |
| Net profit | Gross profit − operating expenses − commissions and tips |
| Net margin | Net profit as a percentage of net revenue |
Two rules on expenses:
- Only approved expenses count. An expense sitting in the approvals queue is invisible here. See Approvals and promotions.
- Expenses attached to a purchase order are excluded, because the cost of those goods already reaches you through cost of goods sold. Counting them again would charge you twice for the same stock. See Receiving purchase orders.
Expenses are windowed on the expense date you entered, not on the moment the record was created. Backdating an expense moves it into the right period.
Because margins divide by net revenue, heavy discounting shrinks the denominator as well as the numerator. A store giving 20% away sees its margin percentage fall by more than the peso profit does.
This statement is built to tie to your books. If it does not reconcile against Financial statements, the difference is almost always an unapproved expense or a stock movement with no cost on it.
Product Margins
Reports → Product Margins. One row per product: units, revenue, cost, profit and margin percentage, with a comparison against the prior period and a Profit movers card.
Two limits to know before you rely on it:
It lists the top 50 products by revenue, and nothing else. There is no "show all". A long tail of low-revenue products with terrible margins will not appear here at all. For a complete picture over a period, export the Sales Summary category breakdown or the Food Cost Analysis instead.
Its revenue is the line total as rung up, VAT included. Unlike Profit & Loss, this page does not strip output VAT out of a product's revenue before computing its margin. For a VAT-registered store that makes every margin on this page read higher — by roughly eleven points on a fully vatable item — than the same product's real contribution to Profit & Loss. Use this page to rank products against each other, which it does correctly, and use Profit & Loss for the actual margin. A non-VAT store is unaffected and the two agree.
A product with no recorded cost shows 100% margin here, for the reason given under the cost basis above.
The dashboard profit tiles
The four tiles at the top of the Dashboard are month-to-date and are computed the same way as Profit & Loss, with one difference: they are simpler. Net Profit there is net sales less cost of goods sold less approved expenses — it does not carry the void, return and commission refinements the full statement does.
So the dashboard is the quick read and Profit & Loss is the answer. Where they differ, the statement is right.
Category and food-cost profit
Two more places profit appears:
- The category breakdown on Sales reports shows cost and gross profit per category for the period, using the same cost-at-sale basis.
- Food Cost Analysis works the other way round — it starts from a recipe and asks what percentage of the selling price the ingredients cost. It needs Inventory Pro and is covered in Inventory reports.
Getting a copy
Profit & Loss has an Export as PDF button. Product Margins has no export at all. See Exporting reports for the full matrix.