The Dashboard
What every tile on the dashboard actually counts, which figures are free, and the two tiles most often misread.
10 min read · Updated 10 Sep 2026
On this page
The dashboard is the first screen you see after signing in on the web. It answers one question — how is today going — and it is the only reporting surface that is free in full.
Owners and Managers only. A Cashier who reaches this URL gets a permission error. See Users and roles.
Today's figures are free. History is not. Every tile below is computed from live data at no charge. The moment you ask for a date range that isn't today — a chart over last week, a comparison against last month — you are into the Business Reports add-on (₱400 per branch each month). This split runs through the whole of Reports too.
Two views
Top right of the page is a toggle with two options.
| View | Shows | Default for |
|---|---|---|
| Overview | Profit tiles, branch and terminal comparison, business-type metrics, three charts over a date range you pick | Owner |
| Operations | Today only — the operational tiles, voids, and a single full-width hourly chart | Manager |
Your choice is remembered in that browser, so it survives a reload but does not follow you to another device.
What "today" means
Every "today" figure honours your business-day cutover, not midnight. If your cutover is set to 2am, a sale rung up at 1:30am counts toward the day that opened the previous morning — the same way your Z-reading does. With the cutover left at 00:00 this is simply the calendar day.
All of it is calculated in Philippine time, whatever timezone the device is in.
Figures are cached for 60 seconds. Ringing up a sale and immediately reloading the dashboard may show the old number. Wait a minute. This is deliberate — the dashboard runs heavy queries, and it is also rate-limited to 60 refreshes a minute per user, after which you'll see "Dashboard is refreshing too quickly. Please wait a moment."
The profit tiles
Overview only. These four sit at the top for Owners and Managers, and on the free plan they are visible but blurred — clicking one opens the upgrade dialog.
| Tile | How it is derived |
|---|---|
| Net Profit (MTD) | Net sales − cost of goods sold − approved expenses, month to date |
| Gross Margin | Gross profit ÷ net sales, as a percentage. Sub-line shows the peso gross profit |
| Sales (MTD) | Sum of total on completed sales this month. Sub-line shows a rolling 7-day average |
| Avg. Order Value (MTD) | Sales this month ÷ number of sales this month. Paid plans also get a 7-day sparkline |
Two things about that profit calculation are worth knowing, because they are the reason your margin looks lower here than a rough mental estimate:
- Net sales excludes output VAT. VAT you collect is money you owe the BIR, not revenue, so it is stripped out before margin is computed. Non-VAT stores have nothing to strip.
- Net sales also excludes the service charge. Under RA 11360 a service charge belongs to staff, so it is treated as a pass-through, never profit.
Cost of goods sold uses the cost recorded on each line at the moment of sale, not today's cost price. Expenses count only approved ones that are not already attached to a purchase order, so nothing is double-counted against COGS. Profit reports goes through this in full.
The operational tiles
These appear in both views.
| Tile | Counts |
|---|---|
| Today's Sales | Total of today's completed sales. Tapping it opens the sales report |
| Orders Today | Number of today's completed sales |
| Unique Customers | Distinct named customers who bought today. Sub-line shows the repeat percentage for the month |
| Cash on Hand | See the warning below |
| Low Stock | Products at or below their reorder point that still have stock left. Only shown for business types that track stock |
| Pending POs | Purchase orders that are draft, submitted or partly received. Needs the Inventory Pro add-on |
Three of these deserve a note.
Unique Customers only counts named customers. A walk-in sale with no customer attached contributes nothing to this tile, so a busy sari-sari store can sell all day and see zero here. That is not a fault — it means nobody was tagged to a customer record.
"Cash on Hand" is not cash, and it is not in your drawer. It is the total of every payment taken today except charges to account — so cash, card, GCash, Maya, bank transfer and cheque all land in this one number. In Operations view, tap the tile to see the split by tender. It ignores your opening float and every cash-in and cash-out you recorded, so it is not what should be in the till. For that, use the X-reading during the shift or the Z-reading at the end. See X and Z readings and Cash over and short.
Low Stock excludes anything already at zero. A product that has run out completely drops off this count. Look at Stock levels for out-of-stock.
Needs Attention
This card is free on every plan, deliberately — voids are a fraud signal and you should see them whatever you pay.
| Section | What lands here |
|---|---|
| Voids | Sales voided today, listed newest first, with the time and who voided them |
| Large discounts | Today's completed sales carrying an unusually large discount |
"Large" has a fixed definition: the discount must be at least 10% of the subtotal or at least ₱500, whichever of the two is larger. So a ₱200 ticket needs ₱500 off to appear (it never will), and a ₱20,000 ticket needs ₱2,000 off. Each section lists at most five sales, with a "+N more" line under them.
Voids are dated by when they were voided, not when the sale happened — void yesterday's receipt this morning and it shows under today. Large discounts are dated by when the sale completed. Statutory senior-citizen and PWD discounts appear here like any other discount, so a pharmacy or clinic will see them routinely; that is normal, not a red flag.
When there is nothing to flag the card reads "Nothing needs your attention today".
Large discounts only appear in Overview. In Operations you get voids alone.
Sales Target
If you have set a target, this card shows a progress bar for the active period — daily, weekly or monthly, whichever is set. Progress is your actual sales for that period against the target, capped at 100% on the bar.
The progress bar is free. The pacing footer — projected finish, days remaining, and the comparison against the same period last year — is part of Business Reports.
When a target is active and pacing is available, the Today's Sales tile's arrow switches from "vs same day last week" to reading behind target pace, on target pace or ahead of target pace.
Branch and Terminal Performance
Both are Overview only, and both disappear entirely unless you are looking at All Branches — comparing one branch against itself is meaningless.
- Branch Performance hides itself when you have fewer than two active branches. Deactivated branches are left out.
- Terminal Performance hides itself when you have fewer than two terminals. Deactivated terminals stay in, so retired tills keep their history.
Each shows month-to-date sales, order count, average order value, margin, a 30-day sparkline and a weekday heatmap.
The terminal widget can under-count, and it needs the add-on. Unlike the branch widget, this one requires Business Reports even for today. And a sale only carries a terminal if the device that rang it up supplied one — which is optional and not enforced. Sales that carry no terminal roll up into a single Unattributed row. Sales reports explains why.
Business-type metrics
Kassly shows a different metrics card depending on the business type set on your store. If your type isn't one of the three below — or isn't set at all — the card doesn't render.
| Business type | Card title | Metrics |
|---|---|---|
| Food & beverage | Restaurant Performance | Avg Orders / Table Today, Active Tables Today, and a peak-hours heatmap over the last four weeks |
| Retail | Retail Metrics | Inventory Turnover, GMROI, Avg Basket Size, Returns Rate, Dead Stock (count and value), Sell-Through |
| Services | Service Operations | Utilization, No-Show Rate, Repeat Clients, top five providers, Next 7 Days bookings |
The definitions that surprise people:
- Avg Orders / Table Today counts only sales that have a table number. Takeout and delivery are excluded, so the average isn't dragged down.
- Avg Basket Size is the number of lines per sale, not pesos.
- Dead Stock is anything with stock on hand that has had no sale in the last 60 days.
- Inventory Turnover uses your stock value right now as a stand-in for average inventory over the month, because Kassly does not snapshot inventory historically. Read it as a rough indicator, not an accounting figure.
- Sell-Through is units sold this month ÷ units received this month, so it swings wildly in a month where you took a big delivery.
- Utilization is booked appointment hours against your staff's scheduled availability, scaled by the number of weeks elapsed this month. If nobody has a schedule set, it shows a dash.
Today's Appointments and Kitchen Queue
Two side-by-side operational cards, each shown only when you have the matching add-on.
Today's Appointments breaks today's bookings into Upcoming, In Progress, Completed, No-show and Cancelled. Needs Appointments & Bookings, and only appears for service and F&B business types — not retail. See Appointment calendar.
Kitchen Queue shows In Queue, Avg Wait and Avg Prep for today's kitchen items. Needs Kitchen Orders & Tables. Avg Wait is the time from an item being rung up to the kitchen starting it; Avg Prep is from start to ready. See Kitchen display.
Stock Alerts and Goods Consumed
Stock Alerts lists items near or past their reorder point and expiring batches. Needs Inventory Pro.
Goods Consumed is the stock-depletion summary — how much stock actually left your shelves over a period, in units and at cost. On the free plan you get today only; other periods need Business Reports. It is covered fully in Inventory reports.
The charts
In Overview you get a date-range picker and three charts.
| Chart | Shows |
|---|---|
| Sales by Hour / Sales by Day | Automatically hourly for a one-day range, daily for anything longer |
| Top products | Best sellers by revenue for the range. Tap a bar to open the product |
| Orders by Type | Count of sales per order type — dine-in, takeout, delivery, and so on |
On the free plan the date picker's Yesterday, This week, This month, Last month and Custom presets are locked; clicking one opens the upgrade dialog. Today stays available, and the charts show today's data.
The card titles adapt to your business type, so a salon sees "Top Services" rather than "Top Products".
In Operations the picker and the three cards are replaced by one full-width Today's Sales by Hour chart, which always shows today regardless of any range you picked in Overview.
Quick Actions
Four shortcuts at the bottom: Open POS, Add Product, Inventory, Reports. Nothing more to them than a link.
Drilling down
Most tiles and charts are clickable and carry your current branch and date range into the destination, so the report opens on the same slice you were looking at. From the dashboard you land on the deep report pages described in Sales reports.