Your POS says you had a good week. Your P&L says you didn't.
Both are right. That's the problem.
Full-service restaurants typically net 3 to 5 cents on every dollar. In that business, a 4% gap between what your point-of-sale system records and what your accounting system books isn't a rounding error. It can be the entire profit.
Most multi-unit operators have that gap. Very few can tell you where it lives.
I direct technology and growth for a multi-unit restaurant group. The leak almost never shows up as one dramatic failure. It shows up as a dozen small disconnects between systems that were never designed to talk to each other, and each one looks too small to chase.
Here's where it hides.
Two systems, two versions of the truth
Every order now comes in through several doors: the in-house POS, your own online ordering, two or three marketplace tablets, catering, gift cards. Each channel has its own item IDs, its own pricing, its own fee logic and its own payout schedule.
Then, once a day, a summary journal entry pushes a handful of totals into accounting.
Everything between the guest's order and that journal entry is where margin disappears.
Five places the 4% goes
1. Item master drift. Location A calls it "LG MARG." Location B calls it "Margherita 16in." The delivery menu has a third version a manager added two years ago. Your recipe costing can map only one of them. The other two sell at zero theoretical cost, so your actual-versus-theoretical food cost variance is meaningless. You can't fix a variance you can't measure.
2. Marketplace payouts reconciled at the deposit, not the order. DoorDash's Marketplace plans take 15%, 25% or 30% on delivery orders, before refunds, error charges, promotions and adjustments. All of it lands as one net deposit. If your books record the deposit and stop there, nobody is checking whether every "missing item" refund, disputed order and promo charge was legitimate.
3. Discounts, comps and voids landing in the wrong place. A new discount key goes live without a general ledger mapping and rolls into a catch-all, or vanishes into net sales. Comps that should show up as a cost read as lower revenue. Voids after a ticket prints go unreviewed. The P&L looks fine. The behavior behind it is invisible.
4. Prices and modifiers that never propagated. A price increase goes to the in-store POS but not the online menu. A paid add-on is configured at $0.00 at one location. Each is pennies per ticket. Across thousands of tickets and multiple locations, it's real money.
5. Cutoffs that never line up. The POS business day closes at 3 a.m. The processor batches at midnight. The marketplace week ends on a different day entirely. Every reconciliation becomes an exercise in "close enough," and close enough is exactly where a leak hides.
None of these trips an alarm. They show up as a food cost that runs two points high and a team that has stopped asking why.
Why more software won't fix it
The reflex is to buy another platform: a new inventory tool, another reporting dashboard.
But a dashboard on top of disconnected data just shows you the wrong number faster.
This isn't a software problem. It's an architecture problem.
The fix: a single-ledger architecture
The standard is simple: every dollar that enters through any channel should be traceable, at the order level, from the guest check to the bank deposit to the general ledger.
Here's the five-layer framework I use to get there.
Layer 1: One canonical item master. One ID for every sellable item and modifier, owned centrally and pushed to every location, every channel and your recipe costing. Managers request new items; they don't create them.
Layer 2: Order-level ingestion from every channel. Middleware pulls every order from the POS, the payment processor and each marketplace into one normalized ledger: gross sale, tax, tip, discount, commission, fee and adjustment. Not summaries. Orders.
Layer 3: Automated three-way reconciliation. Every day, for every location: what the POS says was sold, what the processor and marketplaces say they paid, and what actually hit the bank. Matches clear automatically. Exceptions go to a person, with the order attached.
Layer 4: Governed GL mapping. Every tender, discount key, comp reason, tax, tip and gift card movement maps to a defined account. A new key can't go live unmapped, and every change is logged.
Layer 5: Daily variance, managed by exception. Actual-versus-theoretical by location and category, measured against thresholds you set. Leadership doesn't review everything. It reviews what broke the rule.
Build the layers in that order. Each one makes the next trustworthy.
Where to start Monday
You don't need a six-month project to find out how big your gap is.
Pick one location and one week. Pull POS gross sales by channel, the processor and marketplace payout reports, and the bank deposits. Tie them out, order by order.
If they match to the penny, you're in rarer company than you think.
If they don't, you've just found the first piece of your 4%.