Management· 8 min read· Dishment team
Restaurant theft prevention: 9 ways money leaks and how to stop them
Voids after payment, friendly discounts, stock that evaporates. Nine common leaks in a restaurant, the sign that gives each away, the control that stops it, and a 15-minute weekly routine.
Most restaurant losses do not look like theft. They look like a void at 23:40, a 10% discount for "a friend of the chef", a kilo of beef that is missing from the fridge on Monday. Each one is small, but over a month they can eat up the whole profit of a good Friday.
This guide approaches restaurant theft prevention as a set of rules rather than a hunt for thieves. The vast majority of waiters, cashiers and cooks are honest, and clear rules protect them first: when every void carries a name and a reason, nobody has to prove they did not take anything. Below are nine common leaks, the sign of each and the control that stops it.
Leaks come from open opportunities more often than from bad people
Losses grow where three things meet: an action that changes money or stock, no record of who did it, and nobody looking at the record. Remove any one of the three and most schemes stop working.
That gives you three tools:
- Rights. Only the people who need it may void a sent dish, reopen a closed check or give a custom discount.
- Names. Every action on the till belongs to a person: a personal PIN or staff card, never a shared password.
- Attention. Reports and the audit log help only if someone reads them. Fifteen minutes a week is enough.
Nine common leaks: the sign and the control
1. Voiding after the guest has paid
The guest pays 48 ₼ in cash and leaves. Later the dish is voided as "guest refused" and the cash goes into a pocket. The kitchen cooked the dish and used the stock, but the revenue never arrived.
Sign: voids of dishes already sent to the kitchen or after the precheck, voids clustering at the end of a shift or around one person.
Control: in the Dishment POS, voiding an unsent item, voiding a sent item and voiding a whole order are three separate permissions. Let waiters remove what has not reached the kitchen yet; a sent dish or a whole order needs a manager. Every void requires a reason, and the voids report shows who, when and why.
2. Reopened checks and reprints
A closed check is reopened, an item is removed, and the check is closed again for less. Or a guest check is reprinted for the next table with the same order.
Sign: reopened cash checks, a final amount that differs from the first printout, several reprints of the same check.
Control: keep reopening and reprinting for managers. The audit log stores every reopen with the employee's name and time; the Z report closes the day with final numbers.
3. "Friendly" discounts
A waiter gives friends 20% off, or applies a discount to a check the guest paid in full and pockets the difference.
Sign: many manual discounts by one person, odd percentages, discounts mostly on cash checks.
Control: separate preset discounts (staff meal, birthday, regular guest) from a custom amount. In Dishment, applying a discount and entering your own amount are different permissions. The day summary shows the discount total, and the Advanced reports module shows voids and discounts per waiter.
4. Orders that never reach the till
A cook plates a portion of lülə kabab without a ticket because "the waiter asked". The guest pays the waiter in cash; the order exists nowhere.
Sign: the kitchen works from spoken orders, dishes leave without a ticket, stock of popular items drops faster than sales grow.
Control: one rule for everyone: no ticket, no food, no drink. When the kitchen cooks only from till tickets, printed or on the kitchen screen, an unpunched dish has no way out. With tech cards, a stock count shows the gap anyway.
5. Cash without a check
A guest pays at the bar, the money goes into the drawer, but the sale is never rung up. After the shift the "extra" cash leaves.
Sign: the drawer opened without a sale, drawer cash that does not match cash sales in the X report, a guest without a printed check.
Control: cash shifts with X and Z reports; opening the drawer without a sale is a separate permission; cash-outs and expenses are recorded at the till with a reason. And one rule: every guest gets a printed check, every time.
DISHMENT
Want to see this in your restaurant?
We'll show you Dishment on your own menu in 30 minutes.
Free demo6. Under-portioning and over-portioning
Both are leaks. A smaller portion of plov "saves" rice and meat that can then leave through the back door. A bigger portion "by eye" or for friends quietly pushes food cost up.
Sign: portion complaints, food cost slowly rising on the same dishes, a constant gap on one or two ingredients.
Control: tech cards with gross, loss % and net, a scale at the station, a photo of the correct plating on the wall. A tech card turns "about a ladle" into grams that can be checked.
7. Stock that "evaporates"
Staff meals nobody writes off, a bag of rice that goes home, spoiled greens thrown away without a record. On Monday the numbers do not add up.
Sign: the same expensive items are short at every count: meat, butter, alcohol, saffron.
Control: weekly counts of key items, write-offs with a reason (spoilage, staff meal, tasting), a storeroom locked after closing, and warehouse rights only for those responsible. Counts and write-offs are done in the Warehouse and recipes module.
8. Supplier invoice games
The invoice says 20 kg of beef; a scale would say 18. Or prices creep up while quality drops, and the same person both orders and receives.
Sign: purchase prices rising faster than the market, deliveries always signed for by the same person, suspiciously round quantities on invoices.
Control: weigh deliveries on arrival; let one person order and another receive; record each receipt with supplier and invoice number. In Dishment a posted document never changes: a mistake is cancelled with a reversing document and the history stays.
9. Reasons nobody reads and a PIN everybody knows
The controls exist but do not work. Every void has the reason "Other". The manager's PIN is on a sticker under the till, so any waiter can void a sent dish "with manager approval".
Sign: most voids share one reason; manager actions at hours when the manager was not in the venue.
Control: keep a short list of real reasons (kitchen mistake, guest changed their mind, wrong table) and remove "Other" if nobody uses it honestly. Personal PINs or cards for everyone; when someone leaves, block their access. Hand tables over with the till's table handover, not someone else's login.
How to introduce the rules without offending the team
Start with a conversation, not a memo. Say it plainly: the rules apply to everyone, including managers and the owner. Explain that a personal PIN protects the waiter: if a void carries their name, nobody else can act in their name.
- Write the rules on one page: who may void, who may discount and how much, how staff meals are recorded.
- Give everyone a personal PIN or card on the same day.
- Set permissions by role in Back Office, then adjust per person.
- Agree on void reasons together with the team. They know the real ones.
- For the first two weeks, look at the reports daily and ask questions calmly. Most "suspicious" voids have an honest explanation.
A 15-minute weekly routine for the owner
Pick a fixed time, say Monday at 11:00. Open Back Office and go through this list.
| Minutes | What to check | Where | What to look for |
|---|---|---|---|
| 0–3 | Voids and refunds | Reports: voids, refunds | voided sent dishes, repeats by person or hour |
| 3–6 | Discounts | Day summary, waiters (Advanced reports) | total vs last week, who gives the most |
| 6–9 | Cash | Shifts, X/Z reports | drawer vs cash sales, unexplained cash-outs |
| 9–12 | Audit log | Audit log | reopened checks, manager actions at odd hours |
| 12–15 | Stock | This week's count of key items | the same items short again |
Then, for the week ahead:
- Pick one or two cases worth asking about. Ask, do not accuse.
- If a rule did not work, change the rule: rights, reasons, the discount list.
- Write down what you saw. After a month you will start to see which problems keep coming back.
All of this data is already in the Dishment reports and the audit log. With the Notifications module switched on, a Telegram message arrives when the day closes and when there is a big refund.
If you would rather not watch all this by hand, the Theft and loss control module finds suspicious voids, discounts, reopened checks and cash shortages on its own and sends serious cases straight to Telegram. Permissions, void reasons, the audit log, reports and cash shifts work in the base system.
DISHMENT
Try it free for 30 days
We open the account and move your menu over together. No card needed.
30 days free