Ask ten managers how they build the rota and you will get ten versions of the same answer: open last week's schedule, copy it forward, patch the holes. It works, in the sense that a rota exists by Thursday. It also guarantees that every mistake from last week is baked into next week.
A rota is a scheduling problem with three constraints - demand, availability and cost - and the order in which you apply them decides how good the result is. Get the order wrong and you spend the week firefighting.
Start with demand, not with people
The first pass has nothing to do with who works for you. Write down, hour by hour or in blocks, how much work there is to do. A café doesn't need the same cover at 07:00, 11:00 and 16:00. A warehouse doesn't need the same cover on a Tuesday and the day after a bank holiday.
If you have historical data - covers served, orders picked, tickets closed, footfall - use it. If you don't, use your own estimate and write it down anyway. A written wrong estimate is enormously more useful than an unwritten right one, because next month you can compare it against what actually happened and correct it.
The output of this pass is a coverage requirement: for each block of the week, how many people you need and which roles they must be able to do. Not names. Numbers and roles.
Second pass: hard constraints
Now bring in the things that cannot bend:
- Contracted hours. Someone on 16 hours a week gets 16 hours.
- Availability that has been formally agreed - a fixed college day, a caring commitment.
- Approved leave.
- Legal limits: rest between shifts, maximum consecutive days, restrictions on under-18s.
- Certifications: if only three people are first-aid trained, every shift needs one of those three.
These are non-negotiable. Placing them first means you never have to unpick a nearly finished rota because you forgot that Amira is on holiday.
Third pass: preferences
Everything left is preference - who prefers earlies, who wants Saturdays off, who is saving for something and wants every extra hour going. Preferences are where a rota earns goodwill, and they are also where managers get into trouble, because preferences conflict and someone has to lose.
Two rules keep this fair:
- Track who lost last time. If Jamie gave up the Saturday off in week one, Jamie gets first refusal in week two. Rotating the sacrifice is the whole game.
- Be explicit about the rule. "Whoever asks first" and "whoever is loudest" are both rules; they are just bad ones. Say what the rule is and apply it visibly.
Fourth pass: cost
Only now do you look at the money. Add up the hours, multiply by rates, compare against your budget for the period.
If you are over, resist the reflex to cut the shift that looks longest. Look instead for:
- Overlap you didn't intend. Two people covering the same quiet hour because both shifts happen to span it.
- Shifts scheduled around a peak rather than through it. A five-hour shift that starts an hour before the rush and ends an hour after is often better value than two three-hour shifts either side.
- Overtime you have quietly normalised. If someone works 44 hours most weeks on a 40-hour contract, that isn't overtime, it's an understaffed rota with a premium attached.
Publish early, and publish once
The single biggest driver of rota-related resentment is late publication. People arrange childcare, second jobs and their own lives around your schedule; giving them two days' notice transfers your planning problem onto them.
Two weeks' notice is a reasonable target and increasingly a legal minimum in some jurisdictions. Whatever you choose, pick a day and hold it. "The rota goes out on Wednesday" is a promise you can keep. "The rota goes out when it's ready" is not a promise at all.
And once it's out, treat changes as exceptions that need a conversation, not as a normal part of the process. A rota that changes six times after publication is a draft that was published by mistake.
Review the previous week before building the next
Ten minutes, every week:
- Where were we overstaffed? Where were we short?
- Which shifts ran over, and why?
- Which swaps were requested, and does that tell us something about the pattern?
This is the loop that turns a rota from a weekly chore into a system that gets better. Without it you will be making the same three mistakes in a year's time.
The short version
Demand first. Hard constraints second. Preferences third, with a visible fairness rule. Cost last. Publish on a fixed day with real notice, and spend ten minutes reviewing before you start again.
It takes longer the first two times. After that it takes less time than patching last week's copy, and the week is quieter.