Coffee shop economics
Coffee Shop Inventory and Waste: Where Your Margin Quietly Leaks
It's rarely one big expense that sinks a café's margin — it's a thousand small leaks. Overfilled milk pitchers, expired pastries, an extra pump here, an over-order there. Inventory and waste are the most overlooked drain in the business. Here's how to get them under control.
Cost of goods — the beans, milk, cups, syrups, and food — typically runs 25–35% of a coffee shop's revenue, and it's one of the leakiest buckets there is. The trouble is that the leaks are tiny and constant, so they never trigger alarm. No single day's waste looks like a problem. Across a month, it can be the difference between a healthy margin and a thin one.
The over-portioning problem
This is the quiet one. Milk pitchers get overfilled during the rush and the extra goes down the drain. An extra pump of syrup slips in. A barista uses a heavy hand on the matcha. When recipes drift from person to person and shift to shift, your cost of goods creeps up and nobody notices, because it never shows up as a bill — it shows up as a slightly worse margin you can't quite explain.
The fix that costs nothing: consistent recipes. Standard pours, standard pumps, standard portions, trained the same way for everyone. Recipe consistency is one of the highest-return, lowest-cost margin moves in the shop — it plugs dozens of tiny leaks at once.
Spoilage and expiry
Milk that turns before it's used, pastries that don't sell before they're stale, perishables ordered in optimistic quantities. Every one is money you already spent walking straight out as trash. The goal isn't zero waste — it's ordering to your actual demand rather than your hopeful demand, which means knowing your real sales patterns by day and item.
It's never one big expense that quietly eats a café's margin. It's a hundred small ones nobody's counting.
Par levels and ordering to demand
A par level is simply the amount of each item you want on hand for a given period. Setting sensible pars — grounded in what you actually sell, not gut feel — stops both the over-ordering that causes spoilage and the under-ordering that leaves you scrambling. The better you understand your real demand patterns, the tighter and cheaper your ordering gets.
Track the comps and voids too
Waste isn't only physical. Remakes, comps, friends-and-family freebies, and voids are revenue walking out in a different form. They're easy to stop tracking and easy to let creep. A periodic look at your discounts and voids tells you how much is leaking through generosity and error.
Watch it, don't just feel it
The reason waste stays a problem is that it's invisible in the daily grind — you feel like things are "about normal" and never check. But your cost of goods as a percentage of revenue is trackable week to week, and a creeping COGS number is your early warning that portioning, ordering, or spoilage has drifted before it becomes a real hole.
Catch a creeping cost of goods early
Second Manager reads your Square export every week and helps you watch how your cost patterns and product mix are shifting — surfacing the signs of a creeping cost of goods as questions worth asking, before the small leaks add up.
Start your free 7-day trial →Built for independent coffee shops · No integration · Just a CSV
The bottom line
Inventory and waste won't announce themselves — they just quietly shave points off your margin. Standardize your recipes, order to your real demand rather than your hopes, set sensible par levels, keep an eye on comps and voids, and watch your cost of goods as a percentage of revenue. Plug the small leaks and you keep money you were already earning.
Common questions
What percentage of revenue should a coffee shop's cost of goods be?
Cost of goods, covering beans, milk, cups, syrups, and food, typically runs around 25 to 35 percent of revenue for a coffee shop. A number creeping above your normal range is an early sign that portioning, ordering, or spoilage has drifted and is eating your margin.
How do I reduce waste in my coffee shop?
Start with recipe consistency, such as standard pours, pumps, and portions trained the same way for everyone, which plugs dozens of tiny leaks at once. Then order to your real demand rather than optimistic quantities, set sensible par levels, and keep an eye on comps and voids.
What is a par level for a coffee shop?
A par level is the amount of each item you want to keep on hand for a given period. Setting pars based on what you actually sell, rather than gut feel, prevents both the over-ordering that causes spoilage and the under-ordering that leaves you scrambling during service.
Why is my coffee shop's food cost so high?
Usually it's a mix of over-portioning during the rush, spoilage from ordering more than you sell, inconsistent recipes across staff, and untracked comps and voids. Each is small on its own, but together they push your cost of goods up in ways that never appear as one obvious expense.
More reading: Where a coffee shop's money actually goes · What's a healthy labor cost? · Coffee shop profit margins · See how Second Manager works →