Your labor cost percentage is the share of your sales that went to pay the people who work for you. The formula is labor cost divided by net sales, times 100. If you paid $10,800 in labor in a week when you took in $38,000, labor was 28.4% of sales.
Below are the math for a week and for a single day, what belongs in labor cost, how labor and food add up to prime cost, and how to see overtime coming before the week is over.
The labor cost percentage formula
Labor cost % = labor cost / net sales x 100
- Labor cost is what you paid your staff for the period. The next section covers what goes in it.
- Net sales are what guests paid for food and drink after discounts, comps (food or drinks you gave away) and refunds. Leave out sales tax and tips, since neither is your money. You get net sales from your POS (point of sale, the system your register runs on).
Use the same days for both numbers. Labor from Monday to Sunday goes against sales from Monday to Sunday.
What goes into labor cost
A full labor cost has four parts:
- Hourly pay for every hour worked, overtime pay included
- Salaries, split into the period you measure. A $52,000 salary is $1,000 a week.
- The payroll taxes you pay as the employer
- Benefits you pay for, such as health insurance, paid time off and workers' compensation insurance
Tips that guests leave are passed through to your staff, so most owners leave them out of labor cost.
Hourly pay is on the timecards as soon as a shift ends. Salaries, taxes and benefits usually show up only when payroll runs. So many owners keep two numbers: a daily labor % from timecard pay, checked every morning, and a full labor % with everything, checked when payroll closes. Compare each one only with the same kind of number from earlier weeks.
Worked example: one week
Juniper Kitchen is open seven days. Here is its week from Monday, Sep 28 to Sunday, Oct 4:
| Line | Where it comes from | Amount |
|---|---|---|
| Hourly pay, overtime included | Timecards, Sep 28 to Oct 4 | $8,400 |
| Kitchen manager's salary | $52,000 a year / 52 weeks | $1,000 |
| Employer payroll taxes and benefits | Payroll report for the week | $1,400 |
| Labor cost | 8,400 + 1,000 + 1,400 | $10,800 |
| Net sales | POS report, before tax and tips | $38,000 |
| Labor cost % | 10,800 / 38,000 x 100 | 28.4% |
For every $100 Juniper Kitchen took in that week, about $28 went to the people who worked it.
Now take the timecard pay alone: 8,400 / 38,000 x 100 = 22.1%. That is about six points lower, because the manager's salary, taxes and benefits are missing. Put a timecard-only week next to a full week from your accountant, and labor will seem to have jumped six points when nothing changed.
Worked example: one day
For a single day, divide that day's timecard pay by that day's net sales. On Friday, Oct 2, Juniper Kitchen paid $1,710 on its timecards and sold $7,600:
$1,710 / $7,600 x 100 = 22.5%
To include salaries in a daily number, add each weekly salary divided by the days you are open. Here is the whole week, day by day:
| Day | Net sales | Timecard pay | Labor % |
|---|---|---|---|
| Mon, Sep 28 | $3,600 | $980 | 27.2% |
| Tue, Sep 29 | $3,200 | $1,020 | 31.9% |
| Wed, Sep 30 | $4,100 | $1,080 | 26.3% |
| Thu, Oct 1 | $5,000 | $1,150 | 23.0% |
| Fri, Oct 2 | $7,600 | $1,710 | 22.5% |
| Sat, Oct 3 | $8,900 | $1,520 | 17.1% |
| Sun, Oct 4 | $5,600 | $940 | 16.8% |
| Week | $38,000 | $8,400 | 22.1% |
The weekly 22.1% hides two things the days show.
Tuesday ran 31.9% and Saturday ran 17.1%. Slow days run higher because part of your labor is the same every day you open. You need a cook, a dishwasher and someone on the floor whether you sell $3,200 or $8,900. A high Tuesday is normal. A Tuesday that climbs week after week is worth a look.
Friday cost $190 more in pay than Saturday on $1,300 less in sales. Maybe a prep cook came in two hours early, or a closing server stayed long after the floor emptied. To find out, look at Friday hour by hour.
Look at labor by the hour
You can build an hourly view with two reports:
- Pull your POS sales-by-hour report for one day.
- From your timecards, count who was on the clock in each hour. Multiply by their hourly wages to get labor for that hour.
- Divide labor by sales for each hour.
Here are some of Friday's hours at Juniper Kitchen, where the average wage on the clock is $17 an hour:
| Hour | People on the clock | Labor for the hour | Sales | Labor % |
|---|---|---|---|---|
| 10 am | 4 | $68 | $0 | prep |
| 2 pm | 6 | $102 | $240 | 42.5% |
| 3 pm | 7 | $119 | $180 | 66.1% |
| 6 pm | 11 | $187 | $1,400 | 13.4% |
| 10 pm | 5 | $85 | $90 | close |
Overstaffed hours. At 3 pm, seven people cost $119 for $180 in sales. A common cause is the gap between lunch and dinner, when the lunch crew hasn't clocked out and the dinner crew has clocked in early.
Short-staffed hours. At 6 pm, labor was 13.4% of sales. That looks good on paper. If tickets backed up and guests waited for tables, one more person could pay for themselves by getting tables turned (cleared and reseated) faster.
Prep and close. At 10 am and 10 pm, people are on the clock with little or no sales. Food has to be prepped and the kitchen cleaned, so that is expected. Watch for those hours creeping up.
Before you change a schedule, check the same weekday over four weeks. One Friday can be an outlier, such as a private party or a rainy night.
Prime cost: food plus labor
Prime cost is the total of your two biggest costs, food and labor.
Prime cost = cost of food and drink used + labor cost
Prime cost % = prime cost / net sales x 100
Cost of food and drink used comes from your counts: opening inventory + purchases - closing inventory. The guide on how to lower your food cost walks through that formula. For labor, use the full labor cost from above.
For Juniper Kitchen's week:
| Line | Amount |
|---|---|
| Cost of food and drink used | $11,400 |
| Labor cost | $10,800 |
| Prime cost | $22,200 |
| Net sales | $38,000 |
| Prime cost % | 22,200 / 38,000 x 100 = 58.4% |
Food and labor trade against each other. Buying pre-cut vegetables raises food cost and saves prep hours. Making sauces from scratch does the opposite.
Say Juniper Kitchen switches to pre-cut onions and peppers. They cost $90 a week more, and the kitchen cuts 8 prep hours at $17, which saves $136. Food cost went up by $90 and prime cost fell by $46. Food cost alone would make the switch look like a mistake.
What a good labor percentage is
You will see targets quoted online. We don't give one here. Labor depends on your service style, how much you cook from scratch, local wages and your hours, so another restaurant's number tells you little about yours. Compare against your own numbers for the same weekday over the last eight weeks. If labor % climbs three weeks in a row, find which days and hours moved.
Overtime: see it coming before the week ends
Under US federal law, most hourly employees must be paid at least one and a half times their regular rate of pay for hours over 40 in a workweek. The workweek is a fixed seven-day period that doesn't have to match the calendar week, and you can't average two weeks together (US Department of Labor, overtime pay, as of 2026-10-09). Some states add daily rules. California, for example, also pays overtime for hours over 8 in a workday (California Labor Commissioner, overtime FAQ, as of 2026-10-09). Your payroll provider can tell you which rules apply to you.
A line cook at $18 an hour costs $27 an hour past 40. Six extra hours cost $162 instead of $108.
By Thursday night, Friday and Saturday shifts are already on the schedule. That is a good time to project each person's week:
Projected hours = hours worked so far this week + the hours they usually work on the days left
"Usually" can mean their average for each of those weekdays over the last four weeks, or the hours on the schedule if you trust it.
Here is Juniper Kitchen on Thursday night, with a week that starts on Monday:
| Name | Hours Mon to Thu | Usual Fri | Usual Sat | Usual Sun | Projected | Over 40 |
|---|---|---|---|---|---|---|
| Maria, line cook, $18/hr | 31.5 | 8 | 7 | 0 | 46.5 | 6.5 |
| Dev, dishwasher, $15/hr | 27 | 6 | 7 | 0 | 40 | 0 |
| Sam, server | 18 | 6 | 7 | 5 | 36 | 0 |
Maria will cross 40 hours during Saturday's shift. Her 6.5 overtime hours will cost 6.5 x $27 = $175.50. Of that, $58.50 is the extra half rate (6.5 x $9), which you save if a cook under 40 hours works those hours instead. Dev lands right on 40, so one longer shift puts him over.
For Maria, you can move part of her Saturday to a cook who is under 40, end her Friday early, or keep the hours if nobody else can work her station. Paying $58.50 extra can cost less than a short-handed Saturday.
How RestaurantMate tracks this by day
Everything above works with a POS report, your timecards and a spreadsheet. RestaurantMate does the same math every day.
It reads hours and pay from 7shifts or Homebase, or from Toast and SpotOn timecards when that POS is connected, and puts them next to your POS sales (Toast and SpotOn today; we add your POS on request). It syncs about three times a day and only reads, so your schedule stays as you set it.
The Labor page shows:
- Labor % against your target, by day. Bars show net sales with labor cost inside them, and a line shows labor % against your target. Click a day to see its timecards.
- The overtime radar. Everyone who worked this week is marked In overtime, Will cross, Close or Under, with hours so far, projected hours by the week's end at their usual pace (or from the schedule) and the projected overtime cost.
- A staffing-by-hour heatmap, a grid of weekdays and hours. Each slot is marked Overstaffed, Short-staffed or In line, and hours with labor but little or no sales show as prep and close.
- Flagged timecards, such as no clock-out, no break, a shift of 12 hours or more, a late clock-in or a shift that wasn't scheduled. Check them before payroll runs.
RestaurantMate's labor cost is the pay recorded on timecards, overtime included. Salaried managers often have no pay on their timecards, so their salary is left out and labor can look low. When that happens, the page says how many hours have no pay recorded and that labor cost is understated. Payroll taxes and benefits aren't on timecards either, so read it as the daily labor % from earlier in this guide. Days with sales but no timecards are left out of labor %.
The target starts at 30% of net sales. That is only the starting value of a setting, and we don't suggest it as a goal for your restaurant. Change it in Labor settings, where you can also set when weekly overtime starts (40 hours to begin with) and the day your labor week starts. You can add a Prime cost widget to your dashboard to see food and labor together.
An alert can watch a day's labor. Type "Email the owners when labor goes over 30% of sales" and RestaurantMate builds the alert and shows how many times it would have emailed you over the last 30 days. Alerts check a day's labor % and overtime hours for the whole location after the day ends, and arrive by email. They don't warn you about one person as it happens. To see who is heading past 40 hours this week, open the overtime radar on the Labor page.
Only people whose role includes Labor can see wages. You choose who that is in roles and access.
RestaurantMate is free for 60 days, then $99 a month per location, plus a $300 refundable deposit for the RestaurantMate device (one device covers up to two locations). You don't need a card to start. Get started to create an account, or book a demo first.