Cost of Goods Sold in a Restaurant: How to Calculate it (and Why Yours is Probably Off)

Last updated

Written by

Annika Heinle

Annika Heinle is a global operations and general management leader with deep experience scaling restaurant technology operations worldwide. As Head of Global Operations at Otter, she leads large, cross-functional teams focused on improving operational efficiency, customer experience, and revenue performance at scale. Annika brings an operator-first mindset shaped by years at Uber and Otter, building systems and teams that help restaurants run more reliably, adapt faster, and grow with confidence.

Table of contents

Your COGS number is sitting on the income statement. You ran the formula. But the figure doesn't match what your gut, or your bank balance, is telling you. You're not imagining it. As of May 2026, the Producer Price Index for all foods stands 35% above its February 2020 reading, according to the National Restaurant Association. If your input costs have moved that much and your COGS formula has a structural flaw, you're not just off by a rounding error. You're making pricing, portioning, and sourcing decisions based on a number you can't trust.

The COGS formula has four variables and a subtraction sign. But you likely make at least one structural error that corrupts the inputs before any calculation happens. Fix the inputs, and the formula works. Leave them broken, and the damage compounds with every shift.

Key insights

  • Your COGS formula is only as accurate as your physical inventory counts. A number built on purchase records, estimated values, or incomplete location counts is a number you cannot trust or act on
  • The gap between theoretical COGS (what recipe costs say you should have spent) and actual COGS (what your count says you did spend) is where waste, over-portioning, untracked comps, and theft are hiding. You're probably not measuring it
  • COGS% benchmarks are concept-specific: QSR targets 28-32%, fast casual 28-35%, ghost kitchens 25-30% with engineered menus. Applying a single industry range to all three reliably misreads your own margins
  • Five structural errors can corrupt your COGS before you run a single calculation: skipping full physical counts, missing inventory locations, ignoring staff meals and comps, vendor credit timing gaps, and unrecorded inter-location transfers

What COGS means in a restaurant, and why it's not the same as food cost

COGS stands for cost of goods sold: the total direct costs of everything used to produce the food and beverages actually sold during a specific accounting period. It lives on the income statement as the first deduction from revenue: Revenue - COGS = Gross Profit.

Gross profit funds rent, labor, marketing, and your income. If COGS is inflated by even a few percentage points, everything downstream shrinks. A taco concept doing $50,000 in weekly net sales at 33% COGS has $33,500 in gross profit. At 37%, that drops to $31,500. That $2,000 weekly gap is $104,000 a year.

COGS is not the same as food cost percentage, even though operators use the terms interchangeably. Food cost % is informal daily shorthand. COGS is a formal accounting line that includes beverages, direct packaging, and production-related consumables. A ghost kitchen running two virtual brands needs to account for branded delivery bags, tamper-evident seals, and insulated pouches. Those are direct costs. They belong in COGS.

The other critical distinction: COGS captures costs tied only to items sold during the accounting period, not what you ordered, received, or still have in the walk-in. What's still on the shelf is inventory, not a cost yet.

The COGS formula, step by step

Beginning Inventory + Purchases - Ending Inventory = COGS

Each variable requires real numbers, not estimates.

  • Beginning inventory: the dollar value of every ingredient, beverage, and direct supply across every storage location at the start of the period, valued at purchase cost
  • Purchases: the sum of every distributor invoice during the period: broadline, specialty, beverage, produce, all of them
  • Ending inventory: a physical count of all inventory at period close, using the same valuation method as the opening count

The most common input error: one missing specialty distributor invoice understates COGS and inflates apparent gross profit. You look more profitable than you are and make decisions accordingly.

A fast-casual example: $8,000 beginning inventory + $14,000 purchases - $9,500 ending inventory = $12,500 COGS. At $40,000 in net sales, your COGS% is 31.25%. Weekly is more actionable than monthly. It gives you a signal in time to course-correct before a bad week compounds into a bad month.

To see how COGS fits into your full financial picture, read Restaurant accounting: a practical guide on the Otter blog. 

What counts as COGS in a restaurant, and what doesn't

In COGS:

  • Raw food ingredients: proteins, produce, dairy, dry goods
  • Alcoholic and non-alcoholic beverages
  • Direct packaging that is part of the product: to-go containers, cups, lids, tamper-evident bags for ghost kitchen and QSR operators

Not in COGS:

  • Rent and utilities
  • Credit card processing fees
  • Marketing and advertising spend
  • Most labor

These are operating expenses. They live below gross profit on the income statement. In most independent restaurant accounting, production labor is kept as a separate prime cost line (COGS + labor). Whether you include it or exclude it matters less than applying the same treatment every period.

Image of a restaurant order packing wraps into containers

What a healthy COGS% looks like by concept type

A vague 28-35% industry range is useless as an operating benchmark. Your concept type drives your target.

QSR / quick service: 28-32%. High transaction volume and standardized recipes compress input costs. A burger QSR running 34% COGS has a problem.

Fast casual: 28-35%. Fresher, less processed ingredients push costs above QSR. The offset is a higher average ticket. At 38%, the concept needs investigation.

Ghost kitchens and virtual brands: 25-30%. Cross-utilization (shared proteins, base sauces, and prep across multiple virtual concepts operating from the same kitchen) cuts waste and unit ingredient cost. This only works when the menu is built around it.

If you're running multiple locations, track COGS% by unit, not blended. A downtown unit and a suburban one may face different distributor pricing and waste profiles. Blending masks problems.

For a deeper look at how food cost fits into your broader cost structure, see How to calculate food cost for a restaurant

Theoretical vs. actual COGS: the gap that's costing you money

This is the diagnostic layer you're probably skipping, and it's the most direct answer to why your COGS is off.

Theoretical COGS is what you should have spent if every portion was prepared exactly to recipe. You calculate it by taking items sold from your POS data, multiplying each by the recipe cost per item, and summing across the period. Actual COGS is what your physical count says you spent. The variance formula: Actual COGS - Theoretical COGS = Variance.

A positive variance means money left the kitchen that can't be explained by recorded sales. What hides in that gap: over-portioning, untracked comps and voids, spoilage never logged, and theft. You'll likely find multiple causes running simultaneously.

The prerequisite is clean item-level sales data. Otter POS gives fast-casual and QSR operators that item-level sales visibility. Without it, theoretical COGS is a guess.

See how Otter POS gives you the item-level data to run this analysis

Five reasons your restaurant COGS calculation is probably wrong

1. Using purchase records instead of physical counts. Invoices tell you what you ordered, not what you have. Deliveries get short-shipped. Product spoils. There is no accounting shortcut that replaces an actual count.

2. Counting some inventory locations but not all. The walk-in, dry storage, freezer, bar par, and line station mise en place are all separate locations. Ghost kitchen operators may also have a commissary. Missing even one means your ending inventory is understated, which overstates COGS.

3. Staff meals, voids, and comps are invisible. Every staff meal and kitchen error consumed real ingredients. If you don't track these, your cost-to-sales relationship is misrepresented. Your POS void and comp records are the source of truth.

4. Vendor credits post after the period closes. A credit memo for a damaged pallet may arrive days after your period end. Close the books before applying it, and your purchases figure is overstated. Build a credit cutoff procedure into your period-close checklist.

5. Multi-location operators don't record inter-location transfers. If your central kitchen sends prepared product to a satellite location, that's an internal cost movement. Without recording it, one location's COGS is understated and the other's is overstated.

How to calculate COGS correctly: a period-end checklist

  1. Set your period. Weekly for QSR and fast casual. Monthly works for smaller independents. Commit to the same day and time each period.

Tip: Count at the same time each period. Inconsistent timing creates variance in what's on the shelf and makes period-over-period comparisons unreliable.

  1. Count all inventory at period open. Every storage location, every item, valued at purchase cost using FIFO.

Tip: Build your count sheet by storage location, not by category. Move through the walk-in, then dry storage, then the freezer in one pass.

  1. Pull all invoices from all distributors. Reconcile against purchase orders. Confirm credits are applied within the period.

Tip: Include every distributor: broadline, specialty produce, beverage, and local purveyors. A single missing invoice understates purchases and inflates apparent gross profit.

  1. Count all inventory at period close. Use the same locations and valuation method as step 2.

Tip: Keep closing valuation at the same per-unit cost used in the opening count even if a new delivery arrived at a different price.

  1. Account for comps, voids, and staff meals. Pull from your POS records. Add the ingredient cost to COGS or record as a separate operational line.

Tip: If your POS doesn't capture voids and comps at the item level, they become invisible costs that inflate your variance without explanation.

  1. Apply the formula. Beginning Inventory + Adjusted Purchases - Ending Inventory = COGS.

Tip: If ending inventory is higher than beginning inventory, COGS will be lower than your purchases total. That's expected when you're building stock.

  1. Divide by net sales. Produce your COGS%. Compare to your concept benchmark and to the prior period.

Tip: Use net sales, not gross sales. Running COGS against gross sales understates your true cost percentage.

  1. Run a theoretical COGS check on your top 10 highest-cost items. Use POS sales data multiplied by recipe cost. More than 1-2 points above theoretical is a signal worth investigating.

Tip: Start here before you have fully costed recipes for every item. Your top 10 by ingredient cost drive the majority of food spend.

How to turn an accurate COGS into lower food costs and better pricing

An accurate COGS number is only valuable if it drives a decision.

Break COGS down by category: proteins, produce, dairy, dry goods, alcohol. A 38% COGS on proteins with a 22% COGS on beverages requires a different fix than a uniform overrun across all categories.

Connect COGS directly to menu engineering. If a signature item's food cost is running above 35%, you have three options: reprice it, re-portion it, or reformulate it. A target 30% COGS% means the menu price should be at least 3.3x the ingredient cost (1 / 0.30).

Sourcing is one of the highest-leverage cost levers available. Otter's sourcing feature connects you to distributor pricing and surfaces lower-cost alternatives at the same quality level. Expect savings to appear in your COGS over 60-90 days as new pricing takes effect.

A COGS number you can't trust gives you confidence you haven't earned. One you can trust tells you exactly where to act: pricing, portioning, sourcing, or all three.

See if Otter can help move your COGS in the right direction. Book your free demo.

FAQ

What does COGS mean in a restaurant?

COGS stands for cost of goods sold: the total direct cost of the ingredients, beverages, and direct packaging used to produce everything sold during a specific accounting period. It is a line item on the income statement; subtract it from net sales to arrive at gross profit. It does not include rent, non-production labor, or marketing.

What is the COGS formula for a restaurant?

Beginning Inventory + Purchases - Ending Inventory = COGS. Each variable requires an actual count or fully documented invoice total. Estimates produce an unreliable result that can't be used to make operating decisions.

What is included in restaurant COGS?

Raw food ingredients, alcoholic and non-alcoholic beverages, and direct packaging that is part of the product (to-go containers, cups, lids, tamper-evident bags for delivery-first concepts). Excluded: rent, utilities, credit card fees, marketing, and non-production labor.

What is a good COGS percentage for a restaurant?

It depends on your concept. QSR operators typically target 28-32%. Fast casual targets 28-35%. Ghost kitchens with engineered menus can run 25-30%. Applying a single industry benchmark across all three reliably misreads your own performance.

What is the difference between theoretical and actual COGS?

Theoretical COGS is what you should have spent based on items sold, calculated from POS sales data multiplied by recipe cost per item. Actual COGS is what your physical inventory count shows you spent. The gap represents waste, over-portioning, untracked comps, and theft.

Should labor be included in restaurant COGS?

In most independent restaurant accounting, production labor is kept as a separate line in prime cost (COGS + labor) rather than folded into COGS. Including or excluding it matters less than applying the same treatment every period so your COGS% stays comparable.

How often should a restaurant calculate COGS?

Weekly for QSR and fast-casual operators: weekly COGS% is an operating signal you can act on before problems compound. Monthly is acceptable for smaller independents. Annual COGS works for tax filing but is far too infrequent to catch operational problems.

Why does my restaurant COGS calculation keep coming out wrong?

Most COGS errors trace back to structural problems, not the formula itself. The most common is substituting purchase records for physical counts: invoices tell you what you ordered, not what you used. Missing inventory locations, untracked staff meals and comps, vendor credits that post after the period closes, and unrecorded inter-location transfers account for most of the rest. Fix the inputs and the formula produces a number you can trust.

Book a demo to see how Otter’s all-in-one platform can help your restaurant thrive.