Multi-branch reporting without spreadsheets
Every restaurant group hits the same wall between branch five and branch ten. Up to five, the owner can call each manager, glance at the till, and have a working mental model. Past five, they can't. That's when the 30-tab spreadsheet appears: a file one accountant maintains, exports from each branch's POS pasted in nightly, joined with VLOOKUPs that break every other month.
Why the spreadsheet gets worse, not better
- POS exports are inconsistent between vendors, even when they "support" the same fields.
- Time zones and DST change which date an order sits on.
- Voids, refunds and tips are usually one extra tab, joined to the wrong key.
- The person maintaining the file becomes a single point of failure — they go on holiday and the owner is blind for a week.
What "good" looks like for a 5–20 branch group
The reporting you actually need falls into three layers:
- Today's snapshot, per branch. Revenue, covers, avg ticket, top items, top issues. Refreshed every few minutes, glanceable on a phone.
- Weekly group roll-up. The same numbers, all branches, side by side. Variances vs last week, vs same week last year. Best-seller and worst-seller per branch.
- Monthly close. CSV / PDF export per branch, reconciled, with a P&L-friendly format the accountant can use without touching a formula.
The test: if your accountant can answer "what was branch 7's truffle-pasta sell-through last Friday, vs branch 4?" in under 30 seconds, the reporting is good enough. If the answer requires opening a file and waiting for a recalc, it's not.
Why this needs to be one platform, not three
The most common attempt to "fix" the spreadsheet is to bolt a reporting tool (Looker, Metabase, Power BI) on top of each branch's POS. The data eventually lands in a warehouse, but the joins are fragile and the time-to-insight is still 24 hours. Worse, every time a POS vendor changes an export format, the warehouse breaks.
When the POS, KDS, payments and inventory are the same platform, the data model is one model. There is no "join". The dashboard reads the same source of truth that the cashier is ringing into. Branch isolation is a query, not a permission, and the owner can drill from group → branch → item → order in three clicks.
What to ask any vendor
- Can the owner switch branches in one click without logging out?
- Are the per-branch and group-wide numbers the same numbers, or are they computed differently?
- Does the export match what the accountant needs, or are you reformatting it for them?
- If a new branch goes live tomorrow, does the reporting include it automatically?
The last question is the one that separates a real platform from a single-restaurant tool with a "multi" badge.