Quick answer
Scheduling restaurant shifts without chaos means starting from demand (expected covers per daypart), not from who happens to be available. Set a minimum crew for each service, build a repeatable weekly grid, post the schedule at least 7 days ahead and keep a buffer for the unexpected. With a fixed method, scheduling drops from a two-hour game of Tetris to a twenty-minute routine.
Why schedules spiral out of control
In most restaurants the rota is rebuilt from scratch every week, on a throwaway sheet or, worse, in a group chat. The result is always the same: gaps during the rush, overstaffing in dead hours, the same people working every Saturday night, and overtime out of control by month end.
The problem is not the workload, it is the absence of a method. Whoever schedules by gut reacts; whoever schedules with a system anticipates. On an eight-person team, the gap between the two approaches easily runs into thousands per year in avoidable overtime and turnover.
The good news: scheduling is a process you can standardize. Once the structure exists, each week is a few minutes of updates.
Start from demand, not from availability
The most common starting mistake is building shifts around who is free. Do that and you cover what you can, not what you need.
The correct starting point is the forecast of covers per daypart. Look at the last 4-8 weeks of history and rebuild, day by day, how many covers you do at lunch and dinner. Everything else flows from there.
| Daypart | Avg covers | Servers | Kitchen | |---|---|---|---| | Mon-Thu lunch | 25 | 2 | 2 | | Mon-Thu dinner | 35 | 2 | 2 | | Fri-Sat dinner | 70 | 4 | 3 | | Sunday lunch | 55 | 3 | 3 |
This table is the heart of scheduling. It defines the minimum crew for each service: the head count below which the service breaks. The whole rota grows from here.
Build a repeatable weekly grid
Once you know the coverage you need, build a base grid that repeats every week. Nothing is reinvented: you only adapt the exceptions (holidays, events, seasonal peaks).
The grid crosses days, dayparts and roles. For each cell you know how many people are needed, and week to week you write in the names according to the rotation. The HoReCa shift planner helps you compute coverage per daypart and check that the minimum crew is met before you publish.
Grid principles:
- Same skeleton every week: the names change, the structure does not.
- Consistent named shifts: whoever works "shift A" always knows what it means (e.g. 6:00 pm-11:30 pm).
- Written rotation of weekends and holidays, visible to everyone.
Split shift or straight shift: choose by service
The shift format affects cost, coverage and how attractive the job is.
Split shift (e.g. 10:00 am-3:00 pm + 6:00 pm-11:00 pm): the same person covers lunch and dinner. It reduces the head count you need, but stretches the employee's day and is unpopular today. Suited to venues with lunch and dinner of similar weight and a limited team.
Straight shift (e.g. 4:00 pm-12:00 am): a single block. It needs more staff to cover both services, but it is far more attractive to job seekers. In a market where finding staff is hard, offering straight shifts is a real retention lever.
Many venues use a mix: straight shifts for the roles that are hard to fill, split shifts where the team allows it.
Respect rest rules (they are part of the plan)
Rest rules are not red tape: they are constraints you build into the grid, or they turn into penalties down the line.
- Daily rest: at least 11 consecutive hours between the end of one shift and the start of the next.
- Weekly rest: at least 24 consecutive hours every 7 days.
- Max 6 consecutive days of work without a rest day.
Non-compliant example: closing Saturday at 1:00 am and reopening Sunday lunch at 10:00 am = only 9 hours of rest. Either push the Sunday start time or swap the person.
Building these constraints into the grid from the start saves you from rebuilding it after the schedule is published.
Cost the plan before you publish it
A schedule is not only coverage, it is a cost. Before you lock it, estimate what it costs you.
The logic is simple:
Shift cost = hours worked x fully loaded hourly cost (with premiums)
Example for a Saturday night with a seven-person crew:
- 4 servers x 6 hours x 14 EUR/hour = 336 EUR
- 3 cooks x 7 hours x 16 EUR/hour = 336 EUR
- Evening total: 672 EUR of labor cost
If that Saturday you forecast 70 covers at an average check of 35 EUR, expected revenue is 2,450 EUR and labor cost is 27% of the service. Comparing that figure to your labor cost target tells you immediately whether the plan holds. For the full staff cost calculation, use the restaurant labor cost calculator.
Publish early and manage swaps
The schedule should be posted at least 7 days before the week starts, ideally two weeks for key roles. Late communication is one of the leading causes of no-shows and resignations.
Practical rules for swaps:
- Peer swaps allowed but always communicated and recorded in writing.
- On-call list of already-trained staff for sudden absences.
- Safety buffer: keep one extra person available on peak shifts.
A shared tool (sheet or app) with a swap history avoids the classic "but I texted you that I couldn't make it."
Common mistakes
- Scheduling on availability instead of covers: you cover what you can, not what you need. Always start from demand.
- Posting the rota the day before: it breeds stress, no-shows and turnover. Seven days minimum.
- Always loading the same people on weekends: it burns out your best staff. You need a written, fair rotation.
- Ignoring the 11-hour rest: the most frequent rest violation in restaurants, and the easiest to be penalized for.
- Not costing the plan: shifts are locked "by feel" and by month end labor cost is out of control.
- Relying on the chat: messages get lost, no traceability, confirmations vanish. You need an official tool.
Related resources
- HoReCa shift planner — compute coverage per daypart and check the minimum crew.
- Restaurant labor cost calculator — estimate the labor cost of your schedule before you publish it.