A free veterinary staff scheduling tool that builds a month of coverage from your own rules. Enter the shifts the building needs and the veterinarians who can work them, and the solver fills every seat while holding rest hours, overnight recovery, weekend limits and each vet's monthly ceiling. The schedule is built in your browser, and there is no account to make.
Each shift carries a name, a start time, a length, a color and an overnight flag, with the number of veterinarians it needs set for every weekday underneath it. Presets cover 12 hour days and nights, and three 8 hour shifts. A date exception replaces the weekly pattern for one date or a range of them, which is how a holiday, a closure or a conference week goes in.
A shift is left visibly unfilled before any of these gives way.
Every cap can be switched off for a practice that does not track it. Off is distinct from zero: a weekend cap of zero means that veterinarian works no weekends, while Off means the rule applies to no one. Four of the practice-wide numbers can be overridden for a single vet, those being max shifts in a row, max overnights in a row, max shifts per 7 days and max weekends. Each vet also carries what they worked at the end of last month, so streaks and overnight recovery cross the month boundary.
The soft goals sit under the hard rules, each set to Off, Low, Normal or High: even shift counts, even overnights, even weekends, personal preferences, requested days off, the shape of the overnight rotation, preferred colleagues, and whether a vet's shifts group together or scatter. Presets set the whole table at once for a balanced month, protected time off, an even share of the load, or protected sleep.
Overnight rotation runs as blocks, where a vet works several nights together and keeps one sleep schedule, or spread out, where the nights alternate across the team. Blocks takes an ideal block length, and the hard cap on overnights in a row still wins. Shift type and weekday preferences run on a five point scale from strongly prefers to strongly avoids, and they yield to every hard rule. An FTE weight of 0.5 asks for half a share of the month.
Click any name on the calendar to see the whole team, with available veterinarians listed beside their current shift count and unavailable ones grayed out with the reason they are out. The choice is pinned and survives the next solve. Ctrl-click pins a shift without opening the menu, the pin on a calendar day holds that whole day, the pin beside a vet holds their whole month, and Ctrl-Z undoes. Where you have a reason the rules do not know about, a refusal can be overridden, and the override is marked in every view and reported as a note instead of a conflict. The finished month exports to CSV or prints with the shift key on it.
Most veterinary scheduling software arrives as a workforce suite, with time clocks, PTO accrual and payroll around the schedule, and much of the vet office scheduling software sold to practices is client booking under another name. This tool does the staff schedule and stops there. It turns your rules and your team into a month that holds up, and it exports that month. It will not book clients, run payroll or write to your PIMS.
Client appointments belong in the PIMS or in a booking product such as PetDesk or Weave, and most practices already run one. Veterinary appointment scheduling is driven by the client's calendar and by how long each appointment type takes. A staff schedule is driven by rest windows, overnight recovery, weekend fairness and monthly ceilings, and it is solved before the appointment book opens.
It depends which half of the job you have. For time clocks, PTO accrual and payroll, a workforce suite such as Deputy or When I Work covers ground this page does not. For a month that holds rest between shifts, overnight recovery and an even share of weekends, a solver is the right tool, and this one is free.
This one is free, with no account, no trial and no cap on veterinarians or months. It runs from files in the browser, so the schedule and the practice setup stay on your machine. In exchange it does one job: it builds the staff schedule and exports it, and it connects to no other system.
Staff scheduling decides which veterinarian works which shift, under rules for rest, overnights, weekends and monthly totals. Appointment scheduling decides when a client can book into that veterinarian's day, and it lives in the PIMS or a booking product. This page does the first one.
No. The month exports as a CSV file and prints from the browser. There is no integration with a PIMS, a time clock or a payroll system, and the practice setup is saved to a JSON file you keep.