The spreadsheet rotation problem
You have a team and a set of daily tasks. Customer support, order fulfillment, fraud review, inventory management—someone has to cover each queue every day. The usual approach is a spreadsheet with names manually slotted into columns.
This works until someone goes on vacation, the team grows, or people start complaining about getting the unpopular queue three times in a row. Maintaining fairness across multiple queues and shifting availability becomes a puzzle that consumes hours of a manager's week.
Fairness as a constraint, not a hope
Bayes.ai treats fair rotation as a scheduling constraint, not something you eyeball. You set a fairness period—for example, 5 days—and the scheduler guarantees that no person is assigned to the same queue more than once within any sliding window of that length.
Combined with the distribute allocation strategy, the scheduler uses bipartite matching to maximize the number of non-recent assignments in each scheduling wave. The result is a rotation that is provably fair, not just approximately balanced.
Example: 7 operators, 7 daily queues, 4 weeks
An e-commerce operations center has seven operators—Alice, Bob, Charlie, Danielle, Eddy, Fred, and Gabby—who need to cover seven daily task queues:
- Order Fulfillment
- Customer Support
- Fraud Review
- Product Listing
- Returns & Refunds
- Inventory Restocking
- Billing & Payments
Each queue runs every weekday. Each operator works Monday through Friday, 9 AM to 5 PM. The fairness period is set to 5 days, meaning no person should repeat the same queue within a work week.
Bayes.ai solves this in under a second, producing a 4-week rotation matrix where every person covers each queue roughly the same number of times, and no one repeats a queue within the 5-day fairness window.

Beyond simple round-robin
A basic round-robin works when everyone has identical availability and you have exactly as many people as queues. Real teams don't work that way:
- Uneven availability — part-time staff, vacation days, unavailable dates. The scheduler respects each person's actual calendar.
- Skill-based filtering — some queues require specific skills. Only qualified people are considered for those assignments.
- Multiple allocation strategies — choose between distribute (fair rotation), rotate (fixed cycle), or randomize (shuffled each period) per queue.
- Rotation frequency — decouple staff rotation from task recurrence. A daily task can rotate staff weekly if you want team continuity within each week.

How it works
You create recurring tasks in Bayes.ai, either by describing your scheduling problem to our chatbot, or by entering your schedule constraints manually. You can set the recurrence frequency (daily, weekly, biweekly, or monthly), and assign a fairness period. The constraint solver expands each recurring task into virtual instances across your planning horizon, then the resource scheduler assigns people to each task via our fairness algorithm.
The output is a complete assignment matrix you can view as a Gantt chart, grouped by person or by queue. Color-coded rotation windows make it easy to see the pattern at a glance.

Share your schedule with your team
Once your rotation is solved, you can publish and share it with anyone using a single link. The schedule is hosted on Bayes.ai servers—recipients don't need an account or the app installed. Just send the link and they see the full schedule in their browser.
As the plan owner, you can update the schedule at any time. Change an assignment, adjust availability, or add a "Person" entity when someone joins the team—then re-solve the schedule. Everyone with the link automatically sees the latest version the next time they open it. No attachments to resend, no version confusion.
Use cases
Call centers rotating agents across support tiers. Warehouses distributing packing, receiving, and inventory roles. Clinics scheduling nurses across stations. Engineering teams rotating on-call duty. Any operation where multiple people share multiple recurring responsibilities benefits from computed fair scheduling.
