Why your till never balances, and how to find out
- operations
- reports
Almost every shop has a till that is slightly wrong. Two short on Tuesday, three over on Thursday, seven short on the Saturday you were busy. Small enough to write off, regular enough to nag.
Most owners land on one of two explanations, and both are usually wrong. The first is that somebody is stealing, which is corrosive to assume and statistically not the most likely answer. The second is that it does not matter because the amounts are small, which ignores that a shop losing five a day is losing well over a thousand a year, and that a drawer with permanent noise in it cannot detect the day something serious happens.
The useful approach is to treat it as a diagnosis. There are about eight causes, they have distinguishable fingerprints, and they are not equally likely. Here they are roughly in order.
1. Change given wrong
The most common cause of a small discrepancy, by a wide margin, and the most boring.
Fingerprint: small amounts, both directions, correlated with how busy you were. A drawer that is short on your two busiest days and fine on Monday is telling you about arithmetic under pressure, not about dishonesty. Errors in both directions is the giveaway; theft is one-directional.
Fix: have the till calculate the change and have the cashier read it, rather than working it out. Every POS does this and a surprising number of staff still do the sum in their head out of pride. Also, count change back to the customer out loud. It feels old-fashioned and it works.
2. The float is wrong or undocumented
Fingerprint: the same discrepancy every day, or a discrepancy that appears the day somebody new opens up.
If the opening float is meant to be 100 and it is actually 95 because yesterday’s closer took a five for the window cleaner, every count after that is out by five and everyone is hunting a phantom. Similarly if nobody has written down what the float is supposed to be.
Fix: a fixed, written float. Count it into the drawer at open and count it out at close, separately from the takings. Two minutes, and it eliminates an entire category.
3. Cash taken out of the drawer for something legitimate
Fingerprint: a discrepancy that matches a real purchase, usually a round number, usually on the day the milk or the bin bags ran out.
This is not theft and it is very common. Somebody needed petty cash, took it from the only cash in the building, and either forgot to write a note or wrote it on something that got thrown away.
Fix: an envelope in the drawer. Cash out, receipt in, and the count adds the envelope to the cash. Never allow a withdrawal that leaves no paper.
4. A sale that was never rung up
Fingerprint: drawer over on cash, and stock short at the next count. This pair is the signature and it is worth learning, because it is how you tell this apart from everything else on the list.
Causes are usually innocent: the system was slow, the queue was long, a customer wanted exact change for one item, somebody meant to enter it afterwards. Occasionally not innocent. But the fingerprint is the same either way, which is why you need cause number 8 below to tell them apart.
Fix: the till has to be quicker than the shortcut. If ringing something up is genuinely slow, staff will route around it, and that is a software problem before it is a discipline problem. A no-barcode item should take two taps.
5. Card and cash mixed up
Fingerprint: cash short by roughly the same amount that card is over, or the reverse. Your cash count and your card total are both wrong and they are wrong in opposite directions by the same figure.
Somebody rang a sale up as cash and the customer paid by card, or a split payment got recorded as one tender. Very common, entirely innocent, and invisible unless you reconcile card separately from cash.
Fix: reconcile both. Every day, compare the POS card total against the card terminal’s own total, as a separate step from counting the cash. It takes two minutes and it catches this whole category instantly. Most shops that only count cash never find this cause and quietly attribute it to something else.
6. Refunds and voids handled loosely
Fingerprint: short by a clean amount matching a product price, often with no record, often on a day with an awkward customer.
A refund given from the drawer without being entered, a sale voided after the cash went in, an exchange settled by handing over the difference. All of it leaves the drawer light and the system unaware.
Fix: refunds go through the system before the money leaves the drawer, in that order, always. And a written returns policy so the answer does not depend on who is behind the counter. Worth restricting refund permissions to people who need them, too, which is standard practice in retail for good reason.
7. Discounts applied verbally
Fingerprint: short by odd amounts, on the days a particular person worked, with a plausible story attached.
Staff discount, a regular who always gets a bit off, a damaged item sold cheap. Every one of those may be perfectly authorised. If they are not entered as discounts, they read as cash shortages forever, and your margin reports are quietly wrong as well.
Fix: discounts get entered as discounts. Then they show up in a report as discounts, which is the point, because you can see how much you are giving away and to whom.
8. Actual theft
It happens, and it deserves to be last, both because it is less common than the seven above and because working through those seven is exactly what lets you identify it.
Fingerprint: one-directional, persistent, and correlated with one person. Real errors scatter in both directions. Theft only goes one way. That asymmetry is the single most useful signal you have.
And here is the thing that makes it findable at all: you cannot see that pattern without per-person data. On a shared login, every discrepancy is anonymous and the best you can do is a bad feeling. With one login per person, you can look at discrepancies by who was on the till, and either the pattern is there or it is not.
Which is worth saying clearly, because it is the opposite of how it feels: separate logins mostly protect honest staff. A good employee under vague suspicion has no way to clear themselves. Data does that for them.
The routine that makes all of this work
None of the above is findable without a habit, and the habit is small.
Daily, at close, in this order. Count the float out and set it aside. Count the takings. Compare against what the system says for cash. Then compare the card terminal’s total against the system’s card total, separately. Write both differences down, even when they are zero. Especially when they are zero.
Weekly, look at the list of differences. Not each day in isolation. The pattern is the diagnosis, and a single day tells you nothing. Both directions and small means change errors. Same figure daily means the float. Cash down and card up means mixed tenders. One direction only, one person, means look harder.
Writing down the zeroes is the part people skip and it is the part that makes the list mean anything. Fourteen days of small scatter with one 40 short in the middle is a specific event you can investigate. Without the zeroes you have no baseline and it is just noise.
Set a threshold and stick to it. Under a small figure, log it and move on. Over it, investigate the same day, while the receipts and the memories are fresh. Investigating a week later almost never works.
Where StoreWave sits
The relevant part of StoreWave here is that everything has a name on it. Every user is their own login with their own permissions, and the middleware re-checks the user’s role from the database on every request, so revoking access takes effect immediately rather than at the next login. Sales, returns, refunds, voids and discounts all record who did them.
Refund authority is deliberately a separate permission from selling, and it is not given to the cashier role by default. A shop can let a new starter sell and view returns without letting them issue or void a refund, which addresses cause six directly. Returns are written as their own documents rather than as edits to the original sale, so the audit trail cannot be quietly rewritten after the fact.
Payments record their tender, so cash and card are separate figures you can reconcile independently, which is what finds cause five. Reports export to a file on the free plan as well as the paid one, so the weekly pattern above can live in a spreadsheet where it is easiest to look at.
Two things it does not do: there is no cash-drawer session or blind-count feature, so counting the float and logging the difference is your own routine on paper or in a spreadsheet, and petty cash is not tracked. The envelope in the drawer is still the answer for cause three.