An automatic rota generator. Still yours to publish.
"Automatic" is worth very little on its own — last week's rota copied forward is automatic too. Automated scheduling only means something if the rota generator is obliged to respect your rules while it works, and tells you plainly when it cannot. Below is the whole sequence, on the screens it happens on.
Automatic rota building: generate, review, edit, learn.
RotaBot drafts the week. You decide what goes out. What you change informs the next draft — once you have said it should.
- 01
Generate
One press builds the whole week against your staffing requirements, availability, approved leave, training, contracts and shift rules. Any hour it cannot fill comes back named, with the reason.
- 02
Review
Coverage against your own requirements, everybody's hours against their contract, and each gap listed by day, role and time — before anybody else sees the week.
- 03
Edit
Change it by hand: move a shift, stretch one, give it to somebody else, pin the ones that must not move. Nothing reaches staff until you publish.
- 04
Learn
What you changed is compared with what RotaBot generated. A fix it could legally have made itself, repeated across three published weeks, is put to you to confirm — and only a confirmed one shapes the weeks after.
Adaptive learning works inside the rules, never around them: a confirmed pattern cannot move availability, approved leave, training, a shift limit or a pinned shift. How the learning works
Last week is not a template for this week.
The inputs move. Somebody booked a holiday, somebody left, Saturday is busier, the opening hours changed for the season.
The reason a rota takes an evening by hand is that each decision changes the others: move one shift and the hours, the coverage and somebody's day off all have to be checked again. Copying a week forward carries every assumption in it, including the ones that stopped being true.
A solve does that checking together rather than in sequence, and keeps checking: the week is built against every rule at once, and the passes that follow are held to the same rules rather than allowed to trade one away. Nothing is placed and then forgotten, which is what a copied week does. That is the difference between automated rostering and a spreadsheet with the last week pasted in — if that is where you are today, there is a free template that at least adds the hours up.
- Annual leave
- Availability
- Contracts
- Legal shifts
- Opening hours
- Skills
- Role requirements
- Demand
- Shift limits
- Coverage
- Labour hours
It tells you what is missing first.
A readiness check sits above the rota: what is still missing, why it matters, and a link straight to the screen that fixes it. Blockers are separated from things merely worth a look.
It exists because the honest alternative was a brand-new account pressing the button and being told the problem was infeasible. A generator that cannot explain its own preconditions is not usable by the person who has to run the week.
- No demand saved for this weekTemplates
- Nobody is trained for KitchenRoles & Areas
Eight steps, and only one of them is the rota generator.
Everything before step six is what makes step six worth pressing. Everything after it is yours.
- 01
Requirements
What the week needs, per day, as blocks: from a start time to an end time, how many people, and of what. Saved as a template and reused when the same trading pattern comes round.
RotaBot — TemplatesSummer WeekDuplicateSaveMonday09:00–12:00×2Front of House09:00–21:00×1Supervisor12:00–21:00×1Back of HouseArea+ Add blockTuesday09:00–17:00×2Front of House09:00–21:00×1Supervisor+ Add blockWednesday09:00–21:00×1Supervisor10:00–18:00×1Kitchen+ Add block - 02
Availability
When each person can actually work. A contracted person's availability is a contractual baseline; a casual person is only scheduled where somebody has recorded the times they can work.
RotaBot — ZoeGeneralBreaksSplittingFixed ShiftsNameZoeEmailOptionalRolesFront of House, KitchenAreasBack of HouseContract hours30Target hoursSame as contract hoursMax weekly hoursNo capEmployment typeContractedAvailability is contractual, so this person's baseline is set here rather than varying week to week.Weekly availabilityMonAll dayTue12:00–21:00WedOffThuAll dayFriAll daySat09:00–17:00SunOff - 03
Contracted hours
The same record carries the commitment: contracted hours, an optional target and weekly cap, a maximum shift length, and the roles somebody is trained for.
- 04
Coverage
The requirements from step one are what coverage is measured against — not a general sense of being busy, and not a figure the generator invents about itself.
- 05
Constraints
Approved leave, days somebody cannot work, shifts that never move, and the limits that make a shift legal to roster. All of them apply at once, to every assignment.
RotaBot — ZoeGeneralBreaksSplittingFixed ShiftsA Role shift says which job they work. An Area shift fixes the hours and lets the rota choose the job.
DaySundayRequirementRole · SupervisorStart09:00End18:00DayMondayRequirementArea · Back of HouseStart07:30End12:30 - 06
Generate
One press. RotaBot builds whole shifts a person can lawfully and practically work, rather than dropping names into slots one at a time and hoping.
RotaBot — RotaMon 8 — Sun 14 SepAdd leave SolveCoverage100%solved 2 minutes agoEvery requirement in the template, every person's contract, availability, training, fixed shifts and approved leave — solved together, in one pass.
- 07
Review and edit
The finished week, coverage against your own requirements, and everybody's assigned hours against their contract — on one screen, before anybody else sees it. Change any shift by hand; a pinned shift stays where you put it.
RotaBot — RotaMon 8 — Sun 14 SepCoverage100%MonFelix08:00–16:00Nora09:00–17:00TueKai08:00–16:00Rory10:00–18:00WedFelix12:00–20:00Nora08:00–16:00ThuKai08:00–16:00Nora11:00–19:00FriFelix12:00–20:00Nora09:00–17:00SatFelix08:00–16:00Kai12:00–20:00SunFelix10:00–18:00Kai12:00–20:00 - 08
Publish
Nothing reaches staff until you publish, and the published week is kept on record: the shifts, the times and the people that went out.
RotaBot — RotaDraftPublishedPublishUntil you publish, only you can see the week — so you can solve, change your mind and solve again without anybody watching. Publishing is what makes it visible in the staff app.
Staff app · My rotaMon08:00–16:00Tue08:00–16:00
94% is a question, not an answer.
Some weeks genuinely cannot be covered legally with the people available. A generator that hides that is worse than one that never ran.
It names the gap
The requirement it could not fill, and why — nobody trained, on leave, not available, already working that day, or at the days-a-week limit or a weekly-hours cap you set.
You fix it your way
Extend a shift rather than split the day. Move a duty onto somebody already in. Accept the gap. Nothing is locked and nothing is overruled.
The change is kept, and used
What was generated, what you published, and the difference between them — recorded change by change. A fix you make repeatedly becomes a pattern you can confirm, and a confirmed one informs the next solve.
What you change does not get thrown away.
The difference between the rota the generator produced and the rota you published is the most useful scheduling feedback there is. It is also the thing most generators discard the moment you press save.
Checked against the inputs
Every change is tested against what that solve actually had to work with. One the generator could legally have made itself is a preference worth keeping. One it could not is a gap in the model, and is recorded as that instead.
Repeated, then confirmed
The same shape of fix across three published weeks is put to you as a pattern — extend somebody already in rather than add a person, say. You confirm it or dismiss it. Nothing counts until you do.
A preference, not a rule
A confirmed pattern goes into the next solve — the ordinary weekly generate as well as a repair — as a preference small enough to choose between rotas the rules already allow. It cannot buy an extra change, and it cannot reach availability, approved leave, qualifications, coverage, contracted hours or shift limits.
What people ask before they trust one.
- What is an automatic rota generator?
- Software that builds the week from what you tell it — what each hour needs, who is available and trained, what each contract says, which rules a shift must obey — rather than a grid you fill in by hand. The difference is who makes the first draft.
- Is automatic rota building the same as auto-fill?
- Not quite. Auto-fill drops people into shifts you have already drawn. Automatic rota building in RotaBot starts from what each hour needs and builds the shifts themselves — who works, in which role, from when until when — against availability, leave, training, contracts and shift rules together.
- Rota maker, auto rota, rota generator — is there a difference?
- Yes, and the difference is the whole question. A rota maker gives you a better grid and leaves the thinking to you — for a small, stable team that is often the right answer. A rota generator starts from what each hour needs and builds the shifts themselves. Only the generator drafts the week for you, and only once you have told it what each hour requires.
- Is this automated scheduling software?
- It is the same thing under another name. Rota is the British word; scheduling is the word most software uses. RotaBot is automated scheduling software for a UK operation: it builds the week from the staffing each day requires, the people you have, and the rules a shift has to obey. What it is not is a workforce suite — no till or EPOS link, no payroll, no sales forecast, no wage-percentage target. It does the rota, and it tells you where the rota is short.
- Can software really generate a staff rota automatically?
- Yes, when the inputs exist. Given staffing requirements, availability, approved leave, roles, contracted hours and shift rules, RotaBot solves the whole week at once. What no software can do is invent people: if nobody trained and available exists for an hour, the honest answer is a gap, and RotaBot says so.
- How does RotaBot generate a rota?
- It treats the week as one problem rather than a sequence of decisions, building it against every rule at once and holding the later passes to the same rules. The search runs within a time budget and returns the best week it found; it does not promise a mathematically perfect rota in every circumstance, and it tells you plainly when it could not reach full coverage.
- What does automated rota generation need from you?
- Requirements per day as blocks (from, until, how many, doing what); each person's availability; approved leave; the roles they are trained for; contracted hours, caps and maximum shift length; fixed shifts; and the site's shift rules. The setup guide shows every screen.
- Automatic generation versus ordinary rota software?
- Most rota software gives you a better place to build the rota yourself; automation depth varies by product. Generation builds the draft for you from the rules. The distinction, and when each is enough, is on spreadsheet vs rota software vs automatic generation.
- Automatic rota generator versus Excel?
- A spreadsheet records decisions you have already made; it cannot see availability, leave, training or contracts. It is still the right tool for a small, stable team, which is why we give a free rota template away.
- Is there a free staff rota generator?
- No. There is no free version of RotaBot and no generator to try — it runs against a real operation's requirements and staff, and the way in is a demonstration. What is free on this site is the weekly staff rota template — a spreadsheet that adds the hours up, and the same grid as a printable PDF, with no sign-up and no email address. It will not build the week for you. It is an honest place to start if that is the stage you are at.
- What happens when there is no perfect answer?
- RotaBot returns the best coverage it found within your rules and names the hour it could not fill and why — nobody trained, on leave, not available, already working that day, or at the days-a-week limit or a weekly-hours cap you set. It will not put somebody on a shift they are unavailable or untrained for to make the number look better. You decide: extend a shift, move a duty, accept the gap.
- Does the manager still control the result?
- Entirely. You review the generated week, edit it, pin shifts that must not move, and publish. Nothing reaches staff until you publish, and the published week is kept on record as it went out.
- How does adaptive learning affect future rotas?
- The difference between what was generated and what you published is kept. A correction RotaBot could legally have made itself, repeated across three published weeks, is put to you to confirm. Confirmed, it informs future solves — the ordinary weekly generate as well as a repair — as a preference: enough to choose between weeks the rules already allow, never enough to change availability, contracts, training, coverage or a shift limit.
Watch it generate a week like yours.
There is no public generator to try — it runs against a real operation's requirements and staff. Tell us about yours and we will show you the same eight steps on it.