
In brief: Building a restaurant schedule that works requires balancing staff availability, legal constraints, peak service patterns, and labour costs. This complete guide covers everything a restaurant manager needs to know: from constructing the weekly rota to managing last-minute changes, controlling costs, and staying compliant with Belgian labour law.
In a restaurant, the schedule is not just a list of names and hours. It is the operational plan that determines whether service runs smoothly or collapses. Get it right and your team is in the right place at the right time, service quality is consistent, and labour costs are under control. Get it wrong and you face over-staffing during quiet services, understaffing on peak nights, avoidable overtime, and staff dissatisfaction that accelerates turnover.
This guide walks through every dimension of restaurant scheduling: structure, legal obligations, cost management, and the tools that make it manageable.
The foundation of good scheduling is historical data. Look at your covers by day, by service, and by time slot over at least the last three months. You will quickly see the patterns: Friday and Saturday evenings are almost always your peaks, Monday lunch is often the quietest slot. Special events, school holidays, and seasonal patterns layer on top of this base.
Most modern POS systems export this data. If yours does not, build a simple tracking spreadsheet and populate it weekly. Within a month you will have enough data to make staffing decisions with confidence.
A lunch service and a dinner service have different staffing profiles. Lunch tends to be faster, with more solo diners or business lunches. Dinner services are longer, more complex, with larger tables and higher average spend. Your kitchen and front-of-house staffing ratio should reflect this difference.
Joint Committee 302 (Belgian hospitality collective agreement) sets the legal framework for working hours in the Belgian hospitality sector. The standard working week is 38 hours, averaged over a reference period of one quarter. The maximum daily working time is 9 hours for full-time workers, with derogations up to 11 hours in specific circumstances.
Workers are entitled to a minimum 30-minute break after 6 consecutive hours of work. The minimum rest between two shifts is 11 consecutive hours (with a derogation to 10 hours in hospitality). Every worker must have at least 36 consecutive hours of rest per week.
Split shifts — where a worker does the lunch service, leaves, and returns for the dinner service — are permitted in hospitality but regulated. The break between services must not exceed 4-5 hours, the total span of the working day cannot exceed 14 hours, and the worker must not remain at the employer's disposal during the break.
Sunday work, public holiday work, and night work (after 10pm) all attract premium pay under Joint Committee 302 (Belgian hospitality collective agreement). These premiums must be factored into the schedule's labour cost calculation. See the JC 302 obligations guide for the full details.
Before allocating shifts, enter all known constraints: confirmed leave, confirmed absences, contractual restrictions on working days or hours. These are non-negotiable blocks.
Map your peak services and staff them first. Friday evening dinner service needs your most experienced team. A quiet Monday lunch can be handled by fewer people. Use your historical covers data to set staffing targets for each service.
As you build the schedule, track the cumulative labour cost. Factor in base hourly rates by category, weekend premiums, any public holiday supplements, and expected overtime. A schedule that looks operationally sound but exceeds budget needs to be revised before publishing.
Belgian law requires the schedule to be communicated at least 5 working days before it takes effect. Publishing 7-10 days in advance gives your team more stability and reduces last-minute change requests. Use Shyfter to publish with one click and notify every team member automatically via the mobile app.
Build a pool of casual workers and student workers who can be called on short notice. Keep their availability windows updated in your scheduling system. When a regular staff member calls in sick, you should be able to fill the gap within 30 minutes.
Shyfter's Shift Swap feature lets staff trade shifts directly in the app, with manager approval required. This decentralises the problem-solving while keeping you in control of the final roster.
The schedule is your primary lever for controlling labour costs. Key tactics:
The schedule is only as good as its execution. Time tracking records who actually worked, when they started, and when they finished. Comparing scheduled hours to actual hours reveals systematic patterns: certain shifts consistently run over, certain staff members regularly arrive late. This data feeds directly into payroll and into the next schedule's planning.
Shyfter's time tracking module works alongside the scheduling module. Staff clock in via the mobile app or a shared tablet. The data is timestamped, photo-verified, and available to management in real time.
In Belgium, every worker — whether permanent, casual, or student — must be declared via Dimona before their first shift. The declaration must happen before the shift starts. Shyfter automates Dimona declarations directly from the scheduling interface, eliminating the risk of forgetting a declaration for a last-minute replacement.
Belgian law requires a minimum of 5 working days' notice. In practice, publishing 7-10 days in advance significantly reduces last-minute changes and improves team satisfaction. Shyfter lets you publish the schedule with one click and sends automatic notifications to all staff via the mobile app.
Plan your casual worker and student worker pool ahead of the peak season. Review historical cover data from the equivalent period last year. Use flexible contract types — casual workers, flexi-job workers, student workers — to scale staffing up and down with demand without increasing your fixed payroll. Brief and onboard casual staff before the peak starts so they are effective from day one.
Under Joint Committee 302 (Belgian hospitality collective agreement), workers must have at least one rest day per week (36 consecutive hours). In practice, this means a maximum of 6 consecutive working days. The schedule must guarantee this rest every week without exception. Shyfter automatically flags any schedule that violates the minimum rest rules.