How to work out the slots you need per shift, before you put any names in
Most people build the rota starting from names: "Ana can do Mondays, Luis can’t do afternoons." What comes out fits the people you have rather than the service you need to run, and the day someone leaves you rebuild the whole thing.
There is one question worth answering before you open any spreadsheet: how many people have to be working at the same time, at each point of the day? Those are slots, and they have no names. Names come later.
Doing it in this order gives you a number that is good for three different things: knowing whether your current team is enough, deciding how many hours to contract when somebody new joins, and finding out that Fridays are short-staffed before an angry customer tells you.
The mistake of starting from people
When the rota is built around who you have, two things happen. First, the team quietly becomes the limit of the service: you open fewer hours on Tuesdays because that is what fits, not because there are no customers. Second, and more expensive, you do not know whether you are short or overstaffed. You notice indirectly, in the overtime you pay every month or in the afternoons when three people stand around.
The order that works is the opposite: first the slots the service demands, then the hours those slots add up to, and only then the people needed to cover them.
The method, in three numbers
Three steps, ten minutes and a calculator.
- Slots per shift. For each role, how many people have to be there at once. Not “how many servers do I have”, but “how many servers does the evening shift need to work properly”.
- Service hours per week. Slots × shifts per week × shift length. That is the real size of what you have to cover.
- People. Divide those hours by a full-time week… and correct for the time people are legitimately not there. That last step is the one almost nobody takes, and the one that throws the plan off.
Example: a restaurant, two shifts, seven days
A restaurant open every day with two services, lunch and dinner, six hours each. Every service needs two people front of house, two in the kitchen and one behind the bar.
| Role | Slots per shift | Shifts/week | Hours/week | People at 40 h | With margin |
|---|---|---|---|---|---|
| Front of house | 2 | 14 | 168 | 4.2 | 5 |
| Kitchen | 2 | 14 | 168 | 4.2 | 5 |
| Bar | 1 | 14 | 84 | 2.1 | 3 |
| Total | 5 | — | 420 | 10.5 | 13 |
The jump from 10.5 to 13 people is the one that surprises everybody, and it is the difference between a rota that holds and one that falls apart in the first week of August. The next section explains it.
Example: a clinic with alternate Saturdays
A clinic open Monday to Friday on one eight-hour shift, with one person on reception and two assistants, plus alternate Saturdays of five hours with one receptionist and one assistant.
| Role | Weekdays | Saturdays | Hours/week | People at 40 h | With margin |
|---|---|---|---|---|---|
| Reception | 40 h | 2.5 h | 42.5 | 1.06 | 2 |
| Assistants | 80 h | 2.5 h | 82.5 | 2.06 | 3 |
Alternate Saturdays count as half: five hours every other week is two and a half hours of weekly average. And look at reception: 1.06 people reads like “one and done”, but that person also takes holiday. With only one, the desk closes every August.
The margin almost nobody adds
Someone on a forty-hour contract does not cover forty hours of service every week of the year. There are thirty calendar days of holiday, which is 8.2 % of the year, and then there is absence: in Spain 7.2 % of contracted hours were lost in the first two quarters of 2026, rising to 7.34 % in hospitality. Figures in the UK and across the EU sit in a similar range.
Put together, each person is really available about 84.6 % of the time. And here is the detail most homemade calculations get wrong: you have to divide, not add a percentage.
Adding 15 % leaves you short; the correct move is to divide by availability:
people = service hours ÷ weekly contract ÷ 0.846
Which works out as adding 18 %, not 15 %. On the restaurant's 10.5 people the gap looks tiny, three tenths, until those three tenths are the person missing on the Saturday two people call in sick.
If your sector has higher turnover or more absence than average, raise the margin. Large hospitality chains work with absence figures above 10 % and size their teams accordingly.
From slots to contracts
The number almost never comes out round, and that is where the shape of your team gets decided. With the example's 4.97 front-of-house people you have three ways out:
- Five full-time contracts. Simplest, and you keep a little spare capacity for surprises. The expensive, comfortable option.
- Four full-time and one at twenty hours. Better on cost, but the part-timer has to be available exactly when needed, which is usually weekends.
- Four full-time plus outside help for peaks. The most flexible and the one that demands most discipline: if the freelancer does not confirm in time, the shift goes uncovered.
There is no right answer: it depends on how much your demand swings between midweek and weekend. What is a mistake is deciding without doing the sum first.
Peaks: Friday is not a Tuesday
Hardly anyone needs the same people every day, and sizing to the average leaves weekends short and Mondays overstaffed. The practical fix is to work out two scenarios: slots on a normal day and slots on a peak day.
In the restaurant above, if Friday and Saturday evenings need three front of house instead of two, that is two extra shifts a week: 12 more hours, a third of a full-time week. That third is exactly the gap part-time contracts or freelancers fill, and it is worth planning rather than improvising every Friday.
How Sonnical handles it
Sonnical is built on this idea: slots first, names after. You define your sites and, inside each one, the areas (front of house, kitchen, bar); in each area you say which roles work there and how many people of each role a shift needs. Those are your slots.



From there it generates the shifts needed to cover those slots and shares them out respecting everyone's contracted hours. If the slots you defined cannot be covered by the people you have, the rota says so and tells you why — usually this article's sum done backwards: there are fewer people than the service asks for.
Frequently asked questions
How many employees do I need per shift?
It depends on the service, not on your team. Count how many people of each role have to be there at the same time on each shift (those are your slots), multiply by the shifts in the week and by their length, and divide by a full-time week. Then add the margin for holiday and absence.
What margin should I leave for holiday and sickness?
Around 18 % on top of the people the sum gives you: thirty calendar days of holiday is 8.2 % of the year and average absence in Spain was 7.2 % of contracted hours in 2026. The correct way is dividing by 0.846 rather than adding 15 %, which falls short.
How do I count days I only open every other week?
As half. An alternate Saturday of five hours is two and a half hours of weekly average. Same for any shift that does not repeat every week: work out its average and add it to the service hours.
How many people does a two-shift restaurant need?
With two slots front of house, two in the kitchen and one on the bar, open seven days on six-hour shifts, that is 420 service hours a week: 10.5 full-time people, which becomes 13 once you add the holiday and absence margin.