
Coffee Shop Labor Cost Percentage: What's Healthy
TLDR: Your coffee shop labor cost percentage is total labor divided by sales. Most healthy shops land between 25% and 35%, and the number that actually helps you fix it is sales per labor hour.
Dripos powers about 3% of coffee shops in the US and has processed over $1B in coffee shop payments. Labor is one of the biggest lines on any coffee shop P&L, so let's walk through it slowly.
What labor cost percentage actually is
It's the share of every sales dollar that goes to paying people. The formula:
Labor cost % = total labor cost ÷ net sales x 100
Say you paid out $9,000 in labor last month and sold $30,000. That's 30%.
The part that trips people up is what counts as "labor cost." Use the full number, not just the hourly wages on your schedule. It should include:
- Hourly wages and salaries, including your own if you work the bar
- Overtime
- Employer payroll taxes
- Workers' comp and any benefits you pay for
- Paid time off
If you leave out payroll taxes and comp, your 28% is really more like 32%. Pull the number from your payroll report, not your schedule, because the schedule shows what you planned and payroll shows what you paid.
What's a healthy number for a coffee shop?
There's no single right answer, but the ranges published by coffee industry sources are close to each other. Bellwether Coffee puts the target at 25-35% of revenue and calls anything above 40% a warning sign. Taxfyle says most independent shops fall between 20% and 30%.
Here's how we'd read that:
- Under 25%: Great, if the shop isn't understaffed and your team isn't burning out. Check wait times before you celebrate.
- 25-32%: The comfortable zone for most independents.
- 32-35%: Fine in a slow season. Worth a closer look if it's your every-month number.
- Above 35%: Something specific is off. You're likely overstaffed on slow shifts or your sales are lower than they should be for your rent and team size.
Your rent matters too. Labor and cost of goods together are your prime cost, and most operators try to keep prime cost near 60% of sales or lower. If your drinks cost 28% in ingredients (see our guide on how to price a latte), a 35% labor number leaves you with 37% to cover rent, utilities, processing, and your own paycheck. That gets tight fast.
Why the percentage alone can mislead you
Labor percentage is a scoreboard, not a steering wheel. It tells you what happened last month. Two things can push it up that have nothing to do with your schedule:
- Sales dipped. Same hours, lower sales, higher percentage. January does this to almost everyone.
- Sales grew faster than you hired. The percentage looks great, but your baristas are drowning and your regulars are leaving.
Look at it alongside sales per labor hour (SPLH), which tells you what each scheduled hour earned.
Use sales per labor hour to fix your schedule
SPLH = net sales ÷ labor hours worked
Example: you sell $2,400 on a Saturday and your team worked 40 hours combined. That's $60 per labor hour. If your average hourly cost per employee, with taxes, is about $20, labor for the day is $800, or 33% of sales. Not bad. But the day-level number hides where the hours are going.
Now break it down by daypart (numbers are illustrative, plug in your own):
- 6-9 am: $1,040 in sales, 12 labor hours, $87 SPLH
- 9-12: $680 in sales, 12 labor hours, $57 SPLH
- 12-3 pm: $420 in sales, 10 labor hours, $42 SPLH
- 3-6 pm: $260 in sales, 6 labor hours, $43 SPLH
The morning rush is earning its keep. The 12-3 block has nearly the same crew as mid-morning and about three-quarters of the sales per hour. That's where one person going home an hour early, or coming in an hour later, makes a real difference without touching your peak.
A simple routine that works:
- Pull sales by hour for the last four weeks, same weekday.
- Average it, then mark the three hours that top out and the three that go quiet.
- Set a target SPLH for your shop. If you want 30% labor and your loaded hourly cost is $20, your target is about $67 in sales per labor hour. In most small shops that's unrealistic every hour, so pick a daily target instead and let peaks carry the quiet stretches.
- Build the schedule from the peak outward. Staff the rush properly first, then trim the shoulders.
- Review after two weeks and adjust by an hour, not by a person.
Five ways to bring the number down without hurting service
Stagger starts and ends. Instead of everyone clocking in at 6 and out at 2, bring one person in at 6, another at 6:30, and let the closer arrive before the afternoon dip. You get coverage where it matters.
Watch overtime. One person at 45 hours a week costs more than a part-timer picking up the extra five. Look at your overtime report weekly, not at payroll time.
Cross-train. A barista who can also run the register and restock lets you run one fewer person in slow hours.
Fix slow drinks and awkward layouts. If one menu item takes four minutes and sells all day, that's a labor cost. Price it for that, or simplify it.
Raise sales per hour, not just cut hours. Mobile ordering moves the register line off your counter, and that can matter a lot during the morning rush. Cutting hours is the last lever, because it's the one customers feel.
How to track it without a spreadsheet
You need three numbers each week: net sales, hours worked, and total labor cost. If your POS, scheduling, and time clock all live in one place, those numbers show up on their own. If they're in three systems, you end up exporting CSVs on Sunday night.
In Dripos, scheduling, time tracking, and payroll sit in the same system as your sales, so the hours, the pay, and the sales are in one place. You can see how it fits together on our team management page.
We also recently added a true labor cost percentage to every single pay run. As each pay period is submitted and paid out, you see your actual number right then, instead of waiting for month end to find out how you did.
The routine
Check your labor percentage every pay run. Check sales per labor hour weekly. Adjust your schedule by an hour or two at a time. And if you land at 33% in a slow month and 28% in a busy one, that's not a failure. That's a coffee shop.
If you want a second set of eyes on your numbers, reach out. Our team is in NYC, and we're happy to look at your schedule with you.





