The Restaurant Inventory Spreadsheet That Survived Our Walk-In (And Three Line Cooks Who Can't Count)
A working restaurant inventory template for Google Sheets — track food costs, attach invoices, and stop losing count between the walk-in and the spreadsheet.
Last Tuesday at 6:14 AM, I opened the walk-in cooler and found three cases of salmon sitting on top of the case of salmon I'd already ordered. That's roughly $380 worth of fish we didn't need, because the closing manager counted wrong on Sunday, I didn't catch it on Monday's order, and our "inventory system" — a clipboard hanging on a nail next to the hand-washing sign — had a number on it that nobody could read. This is the kind of thing that kills your food cost percentage one Tuesday at a time.
I've been managing kitchens for eleven years. I've used Restaurant365, MarketMan, BlueCart, a spiral notebook, and at one point a Google Doc that was literally just a bulleted list. Every system either cost too much for what we actually needed, required the whole staff to learn software they'd never open, or fell apart the second someone got slammed on a Friday night. What finally stuck was a Google Sheets setup that lives on the office laptop and the bar iPad, takes about 20 minutes to count through, and — critically — keeps the vendor invoices attached to the same rows as the inventory counts. That last part is what changed everything.
Why Most Restaurant Inventory Sheets Fail by Week Three
The problem isn't that people don't have a spreadsheet. Almost every restaurant I've worked in has some version of an inventory sheet floating around — a template someone downloaded in 2019, a tab inherited from the last GM, something the owner's nephew built. The problem is that the spreadsheet doesn't connect to anything. You count the walk-in, you type numbers into cells, and then when you need to figure out why your food cost jumped 3% last week, you're digging through a Gmail folder for Sysco invoices and trying to match delivery dates to count dates by memory.
The other killer? Complexity. I've seen inventory templates with 400 line items, sub-categories three levels deep, and formula chains that break the moment someone accidentally deletes a row. Your prep cook who's doing the dry-storage count at 5:45 AM before the breakfast rush is not going to navigate that. They're going to write numbers on a sticky note and shove it in the office door handle. Ask me how I know.
The sheet that actually works has three qualities: it's short enough to count through in under 25 minutes, it connects counts to costs without requiring a finance degree, and it keeps the receipts — literally — next to the numbers.
Building a Restaurant Food Inventory Template That People Actually Use
Here's the structure I landed on after about six iterations. The workbook has four tabs: Walk-In & Freezer, Dry Storage, Bar, and a Summary/Dashboard tab that pulls everything together. Each tab is organized by storage location, not by vendor or food group, because that's how you physically count. You walk through the walk-in left to right, top shelf to bottom. Your spreadsheet should mirror the same path.
Each row is one item. The columns are:
- Item Name (standardized — "chicken breast 6oz IQF" not "chicken")
- Unit (case, each, lb, bag — whatever you order in)
- Par Level (the number you want on hand before the next delivery)
- Last Count (previous inventory count, auto-populated from last week)
- Current Count (what you're entering today)
- Unit Cost (pulled from your most recent invoice)
- Extended Cost (=Current Count × Unit Cost)
- Variance (=Current Count − Last Count, flagged red if it's off by more than 15%)
- Vendor
- Invoice/Receipt (this is where the file goes)
That last column is the one most inventory sheets skip, and it's the one that saves you during the inevitable "why did we spend $2,400 more on produce this month?" conversation with the owner. When the invoice PDF is right there in the row, you don't have to go hunting.
The Formulas That Actually Matter (Skip the Rest)
I'm not building a POS integration here. This is a working tool for a restaurant that does $1.2M–$4M a year and doesn't have a full-time bookkeeper. You need four formulas, and they all live on the Summary tab.
First: total inventory value per category. This is just a SUMIF that pulls the Extended Cost column from each tab.
Second: food cost percentage. This one needs your revenue number, which you're pulling from your POS report (Toast, Square, Clover — whatever you use). I just type it in manually each week in a designated cell.
Third: variance flags. I use conditional formatting to turn any cell in the Variance column red when the absolute value exceeds 15% of the par level. That immediately tells me which items are off — either we're over-ordering, under-counting, or something is walking out the back door.
Fourth: a simple DAYS function that tells me how old my last count is, so I can see at a glance if someone skipped a week.
Attaching Invoices, Health Docs, and Spec Sheets to Inventory Rows
This is the part that turned my spreadsheet from a counting tool into an actual inventory management system. Every week, when Sysco and US Foods deliver, someone scans the invoice (or screenshots the email PDF) and drops it into the row for that delivery. When the health inspector shows up and asks to see our receiving logs, I don't dig through a filing cabinet — I open the sheet, filter by date, and every invoice is right there.
I also attach product spec sheets to items where it matters — allergen info for our nut-free menu items, MSDS sheets for cleaning chemicals on the bar tab, and the signed temperature logs for our HACCP compliance. Before this, those lived in a binder that was always in the wrong office.
Getting files into Google Sheets cells isn't native functionality — Google doesn't let you drag a PDF into a cell. I use FileFox for this. You install the add-on, and then you can literally drag an invoice PDF or a photo of a delivery into the cell next to the item. It stays attached to that row. When someone asks "what did we pay for short ribs three weeks ago?" I click the cell, the invoice opens, and I have the answer in four seconds. That alone probably saves me 30 minutes a week of email archaeology.
The Vendor Management Tab Nobody Builds (But Everyone Needs)
While we're in the spreadsheet, there's a fifth tab I added about six months in that I now consider non-negotiable: a Vendor Directory. It's dead simple — one row per vendor with columns for company name, rep name, rep cell phone, email, account number, delivery days, order cutoff time, and a column for the current price list or contract PDF.
I cannot overstate how many times this has saved me. When your produce company shorts you on a delivery and you need to call before the truck leaves the parking lot, you don't have time to search your email for your rep's number. When you're onboarding a new KM and they need to know that the seafood order has to be in by 2 PM Wednesday or it doesn't arrive until Monday, it's right there.
I attach two things to each vendor row: their current price list (which I update whenever they send a new one — usually quarterly) and our signed credit application or contract. When we had a billing dispute with our linen company last year, I pulled up the signed contract in about ten seconds. The argument was over in one email.
Making It Stick: The 20-Minute Weekly Count Protocol
A spreadsheet is only as good as the data going into it, and in a restaurant, the data comes from humans who are tired, rushed, and thinking about the 47 other things they need to do before service. So I built a protocol around the sheet, not just the sheet itself.
- Counts happen every Sunday night after close (bar manager does bar, closing KM does food). Non-negotiable.
- Before counting, duplicate the 'Current Count' column values into 'Last Count' using paste-values-only. This takes 30 seconds and preserves your week-over-week comparison.
- Count by location, not by category. Walk the walk-in left to right. Walk dry storage shelf by shelf. The sheet order matches the physical layout.
- Scan or photograph any invoices received that week and drop them into the invoice column for the corresponding items. This takes about 3 minutes with a phone camera and FileFox.
- Check the Summary tab. If food cost is above 32% (our target) or any variance is flagged red, we talk about it in Monday's pre-shift manager meeting.
- Lock the previous week's data by protecting the 'Last Count' column (Data → Protected sheets and ranges). This prevents accidental overwrites.
Total time: about 20 minutes for the count, 5 minutes for the invoices, 2 minutes to review the summary. That's 27 minutes a week to know exactly where your food cost stands. Compare that to the monthly surprise of "we were at 38% last month" and the scramble to figure out what went wrong four weeks ago.
What This System Doesn't Do (And When to Upgrade)
I'm not going to pretend a Google Sheet replaces a full restaurant management platform. If you're running five locations and doing $15M in revenue, you probably need MarketMan or Restaurant365 and a bookkeeper who lives in those systems. This setup is for the single-location or two-location operator doing $1M–$5M who needs food cost visibility without a $300/month software subscription and two weeks of onboarding.
Specifically, this sheet doesn't: integrate with your POS for automatic sales data, generate purchase orders, or calculate recipe-level food costs. For recipe costing, I have a separate sheet (a story for another day) — but even that one pulls unit costs from this inventory sheet, so this is still the foundation.
What it does do, reliably, every single week: tells me what I have, what it's worth, what I've been spending, and gives me a paper trail of every invoice attached to every item. When my owner asks me why food cost was 31.2% this week vs. 29.8% last week, I can show him exactly which items moved and pull up the invoices that prove the prices changed. That conversation used to take an hour. Now it takes five minutes.
Start Here: The One Thing to Do This Week
Don't try to build the whole system in one sitting. Open a new Google Sheet, create one tab called "Walk-In & Freezer," and list your 20 highest-cost items — proteins first, then dairy, then produce. Add the columns I listed above. Do one count this Sunday. Just one. See how long it takes. See what the numbers tell you.
Then next week, add dry storage. The week after, add bar. By week four, you'll have a working restaurant inventory spreadsheet that tells you more about your food cost than any system you've tried before — because you'll actually be using it. The best inventory system isn't the most sophisticated one. It's the one that gets filled out every Sunday night, even when everyone's tired and just wants to go home.
Frequently Asked Questions
How do I create a restaurant inventory spreadsheet in Google Sheets?
Start with one tab per storage area (walk-in, dry storage, bar) and list items in the order you physically encounter them during a count. Include columns for item name, unit, par level, current count, unit cost, and extended cost. Add a Summary tab that calculates total inventory value and food cost percentage. Keep your item list under 80 rows per tab to make counting realistic.
How often should a restaurant do inventory counts?
Weekly counts on your top 60-80 items by dollar volume will catch cost problems while you can still fix them. Monthly counts are standard but too slow — a portioning issue or pricing change can cost you hundreds before you notice. Reserve full-SKU counts (every item in the building) for monthly or end-of-period, and do targeted weekly counts on the items that actually move your food cost.
What is a good food cost percentage for a restaurant?
Most full-service restaurants target 28-35% food cost, depending on concept. Fast casual typically runs 25-30%, fine dining can run 33-38% because of higher ingredient quality. The number itself matters less than the trend — if your food cost jumps 2-3 points in a single week, something changed and you need to find it. Weekly inventory tracking makes that possible.
How do I track vendor invoices for a restaurant in Google Sheets?
Add an invoice column to your inventory sheet and attach the PDF or photo of each invoice directly to the row for that delivery. If you use FileFox, you can drag invoices into cells so they stay linked to the specific items and dates. This creates a paper trail that's invaluable for price disputes, food cost analysis, and health department documentation.
Can Google Sheets replace restaurant inventory software like MarketMan or Restaurant365?
For single-location restaurants doing under $5M in revenue, a well-built Google Sheets system handles 80% of what you need — item tracking, food cost calculation, vendor management, and invoice storage. You won't get POS integration or automatic purchase orders, but you also won't pay $200-400/month. If you're multi-unit or need recipe-level costing at scale, dedicated software starts to make more sense.