Duty Rota Generator
Enter your people and your duties and this builds a rota across as many rounds as you need. Everyone takes each duty once before anybody repeats one, so the awkward outcome where the same person draws the worst job two weeks running cannot happen.
What this generator does
Plans a rota over time rather than making a single allocation. That is the difference from the shift assignment tool next to it, which answers who is on this week; this answers who is on for the next eight weeks, and guarantees the answer spreads every duty evenly across everyone rather than leaving it to repeated independent draws.
How to use this tool
- Enter the people, one per line.
- Enter the duties or roles, one per line.
- Set how many rounds — weeks, sprints or meetings — to plan.
- Press Build rota, then print it or copy it into the team channel.
Understanding the controls
- People
- One name per line. The count matters as much as the names — if you have more people than duties, some are off-duty each round and the rota shares those free rounds out rather than always excusing the same person.
- Roles or duties
- One per line. The number of duties sets the cycle length: with five duties it takes five rounds before anyone comes back to a job they have already done.
- Rounds
- How many weeks or meetings to plan for. Going past the cycle length is allowed and simply repeats the pattern, which the tool warns about so a repeat is never a surprise.
- Seed
- Type a word to bring the same rota back. Useful when the printed copy is lost, or when a rota needs re-issuing after someone queries it and you want to show it has not been changed.
Worked examples
- Four people, four duties, four rounds
- A complete cycle — everyone does each duty once and nobody repeats.
- Six people, four duties, six rounds
- Four on duty and two off each round, with every person taking exactly two rounds off.
- Four people, four duties, eight rounds
- Two complete cycles. The second repeats the first, which the tool states rather than hiding.
Common use cases
- A workplace on-call or support rota over a quarter
- Rotating meeting roles such as facilitator, note taker and timekeeper
- Volunteer duties in a club or community group
- Classroom job rotas across a half term
- Sprint ceremonies where the same person should not always run stand-up
How this generator works
People and duties are each shuffled once, then the pairing advances by one position every round, so each person moves along to the next duty in the cycle. Because the movement is a rotation rather than a fresh draw each week, everyone works through every duty exactly once per cycle — that is guaranteed by the construction rather than left to luck. Drawing each week independently, which is what this page used to do, gives a surprisingly high chance of somebody landing the same duty twice in a row.
Randomness and fairness
The only random decisions are where each person and each duty sit in the cycle at the start. Everything after that follows mechanically, so the fairness of the rota does not depend on the draw — whatever it lands on, the even spread holds. A seed swaps the browser's cryptographic randomness for a deterministic, non-cryptographic generator so a rota can be reproduced; that is reproducibility, not secrecy.
For how randomness is produced across the whole site, see how Generate Random works.
Limitations and good to know
- Availability is not modelled. The rota does not know who is on holiday, who works part time or who cannot cover a night, so check it against the calendar before publishing.
- All duties are treated as equal effort. If one job on the list is far heavier than the others, an even rotation still shares it evenly but does not compensate anyone for it.
- Skills and authorisation are ignored entirely. Anyone can be assigned anything, so a duty needing a specific qualification has to be checked by hand.
- Running more rounds than there are duties repeats the cycle rather than finding a genuinely new arrangement, because past a full cycle no unrepeated one exists.
Common mistakes
- Publishing the rota without checking holidays
- The rotation is even but blind. Cross-check it against the leave calendar and swap two people directly rather than redrawing, which would change everybody's assignment.
- Redrawing every week to keep it fresh
- Drawing once for the whole cycle is what produces the no-repeat guarantee. A weekly redraw is just independent random assignment again, with all the clustering that brings.
Practical tips
- Plan a full cycle at a time — as many rounds as you have duties — so the rota ends on a clean boundary rather than partway round.
- Use the history table at the bottom to answer who has already done what, which is the question that comes up whenever somebody objects.
Privacy and your data
Names and duties are paired inside your browser and never uploaded. A duty rota names real staff or volunteers, which is why nothing is stored between visits, nothing is written into the page address, and the analytics event carries only a count of rounds. Print or copy the rota before closing the tab, because none of it is kept.
Frequently asked questions
- Will everyone get every duty?
- Yes, provided you run at least as many rounds as there are duties and do not have more people than duties. The page says when a complete cycle has been produced.
- What if there are more people than duties?
- Some people are off-duty each round, and the rotation moves that around so everyone gets the same number of free rounds.
- Can I get the same rota back later?
- Yes — enter the same seed word with the same people and duties.
Related generators
- Chore Rota GeneratorBuild a household chore rota over several weeks where everyone does every job once before anyone repeats one.
- Rota Fairness CheckerCounts who is doing what on an existing rota and shows the gap between the busiest and quietest person.
- Random Shift Assignment GeneratorAssign staff to shifts that need a set number of people, with rules for who cannot work when and who must.
- Station Rotation GeneratorPlan a classroom carousel so every group visits every station exactly once, with no group repeating an activity and none left waiting twice.
- Shift Rota GeneratorBuilds a staffing rota that covers every shift, honours days off and rest gaps, and shares the unpopular shifts out.