Guide • 2026-08-06
The Liquor Inventory Spreadsheet Problem
Almost every bar starts with a spreadsheet, and for a while it’s the right call. Here’s exactly where it breaks, and what to do about it.
If you’re running liquor inventory in Excel or Google Sheets, you’re in good company. It’s free, you already know it, and for a single bar with a hundred SKUs it genuinely works. Anyone who tells you a spreadsheet is amateur hour has not run a small bar on a thin margin.
But spreadsheets fail in specific, predictable ways, and they fail quietly — you usually find out during a bad variance month when you can’t tell whether you have a theft problem or a math problem.
Where the spreadsheet actually breaks
Tenths.Most templates track full bottles, or bottles plus a rough fraction. Real pours don’t work that way. A tenth of a bottle of well vodka, missed across forty bottles every week, is a number that matters at the end of the year. If your sheet rounds, your variance is fiction.
The date window.This is the one that ruins more counts than anything else. Your POS export covers one range, the invoice you’re looking at covers another, and the count happened Tuesday. A spreadsheet will happily calculate usage from mismatched windows and give you a confident, wrong answer. Nothing in the sheet forces those dates to line up.
Two people counting.The moment a second person opens the file, you have version problems. “Inventory_FINAL_v3_KJ.xlsx” is a real file on someone’s desktop right now.
History. Most bars overwrite the same sheet every month. Six months later you want to know whether your tequila variance is trending or was one bad week, and the data is gone.
Formula rot.Someone inserts a row, a SUM range doesn’t extend, and the sheet keeps working — just wrong. This can go undetected for months because nothing errors out.
How to make a spreadsheet genuinely better
If you’re staying on sheets, these fixes are worth an afternoon:
- Count in tenths, always. One decimal place on every count column. No “about half.”
- Put the date range in a locked cell at the top, and enter it before you count anything. Then pull your POS export to match it exactly.
- Never overwrite. Duplicate the tab each period, dated. Storage is free; history isn’t recoverable.
- Order the sheet the way you walk the bar — station by station, left to right, exactly as you physically move. Not alphabetically. This alone cuts counting time and mistakes.
- Lock your formula cells. Only count cells should be editable.
- Reconcile one category first. If the numbers are wild, don’t debug all 180 SKUs — get vodka right, then expand.
That gets you a long way. Plenty of well-run bars never need more than this.
When it’s time to stop patching
The honest signal isn’t SKU count — it’s time and trust. Move on when the count takes longer than the insight is worth, when more than one person needs to touch it, when you can’t answer “is this getting better or worse” without digging through old files, or when you’ve stopped believing the variance number.
That last one is the real tell. A number nobody trusts is worse than no number, because it makes you feel covered when you aren’t.
What we built instead
Open Source Barware is a free, open-source program for exactly this handoff. It was built by someone who did the counts, and it takes the spreadsheet’s failure modes seriously:
- Tenths by default — every count and every variance calculation works in 0.1 increments.
- It forces the date window — you can’t calculate usage until the POS and invoice periods match. That single constraint eliminates most bad variance numbers.
- Permanent history — every count is kept, so trends are visible instead of overwritten.
- Your data stays yours — readable files on your own machine, exportable to CSV. No login, no subscription, nothing held hostage.
- Genuinely free — GPLv3 licensed, no paid tier hiding the variance report you actually need.
And if you want to keep your spreadsheet alongside it, that’s fine. Exports are plain CSV.