In short: A shift rota generator assigns people to shifts so the work is shared evenly, nobody is booked when they are off, and no one works more than their weekly limit. This one shows the rota, each person's total and any shift it could not fill.
How the shift rota is built
- List the slots. Every covered day gets every shift, each needing the number of people you set.
- Fill them in date order. A shift goes to the person who is free, is not already on that shift, and is under the weekly limit, choosing whoever has the fewest shifts so far.
- Even it out. If one person is two or more shifts ahead of another, a shift is moved across wherever the rules allow.
- Report what is left. Totals per person and any shift nobody could take are shown, so a problem is never hidden.
For example, five people covering a morning and an evening shift from Monday to Friday need 10 shifts a week, so each person works 2. With a weekly maximum of 1 the same team cannot cover it, and the tool lists the five shifts it could not fill.
Days off, limits and fairness
Days off can repeat every week (a weekday) or apply to one date, such as a holiday. The weekly maximum counts from Monday to Sunday. When a few people are free for a busy shift, their totals will be higher than the rest, and the difference is shown next to each name rather than hidden. Because the result never changes for the same input, you can adjust one rule at a time and see exactly what it did.
Checking a rota before you share it
Rules the tool cannot know are left to you: rest periods between a late shift and an early one, skills a shift needs, and local working-time law. Read the rota against those before you publish it. Copy it as text for a message, or as CSV to open in a spreadsheet, and use the share link to send the same entries to a colleague.
Questions people ask
How does the shift rota generator spread the work evenly?
It fills the shifts in date order. Each shift goes to the available person with the fewest shifts so far, then the fewest that week, then the one who has gone longest without working. A final pass moves shifts from the busiest person to the quietest while the rules allow it. With no days off or limits, totals differ by at most one.
Why do some people have more shifts than others?
Days off, the weekly maximum and the one-shift-per-day rule can leave only a few people free for some shifts. The tool shows the difference in the totals table and says so, instead of breaking your rules to even it out.
What happens if a shift cannot be filled?
It is shown as unfilled in the table, with a plain list of which shifts are short and by how many people. That usually means too few people are free that day, or the weekly maximum is too low for the number of shifts. Add people, lower the people needed or relax a rule.
How do I enter days off?
Write one person per line, a colon, then weekdays or dates: Sam: Mon, Fri, 2026-10-14. A weekday repeats every week of the rota. A date such as 2026-10-14 applies to that day only. Names must match the people list.
Is the rota the same every time?
Yes. There is no randomness, so the same names, shifts and rules always give the same rota. Change the order of the names to change who is picked first when everything else is equal.
Are the names I enter sent anywhere?
No. The rota is worked out in your browser. A share link carries your entries in the part after the # in the address, which browsers never send to a server.