Open Source Scheduling Software
Scheduling software covers more ground than a shared calendar, and this corner of it leans toward workforce and shift planning rather than customer appointments. What makes rostering hard is the rules nobody sees in the grid: overtime thresholds, rest gaps, availability windows, skills, and coverage minimums that quietly make one schedule workable and another a staffing or compliance problem. A few tools here take different shapes, a project planner with a resource view, a constraint solver for complex rosters, so the right one depends on whether you assign shifts, plan capacity, or optimize against hard constraints. Running these yourself lets you encode the shift logic and see how a roster is built, instead of accepting one a closed tool hands you.

Worklenz
Open-source project management for teams with task, resource, time, and budget tracking

GYM One
Open source web software for managing gym members, classes, tickets, payments, and access control
Shift Scheduler
Employee shift scheduler with a React frontend, a Spring Boot backend, and PostgreSQL
Nurse Scheduling System
Web app that automates nurse and employee scheduling using constrained optimization
Schichtplaner
Self-hosted shift planning with real-time booking, time tracking, and optional AI assistance
Our picks
Pick by whether you assign shifts, plan project capacity, or optimize a constrained roster.
Best for resource and capacity planning: Worklenz Worklenz is a project management platform whose scheduling strength is resource planning: a visual scheduler and Gantt views that help teams plan capacity and avoid overallocation, alongside task boards and time tracking. It comes as a hosted cloud service or a self-hosted install on React, Express, and PostgreSQL. AGPL-3.0 licensed.
Best full self-hosted shift planner: Schichtplaner Schichtplaner is a self-hosted shift-scheduling and workforce system covering planning, time tracking, employee management, absence handling, and reporting in one place. Weekly views, real-time shift booking with deadlines, wish plans, PDF export, and role-based access are built in, with optional AI suggestions. It runs on Next.js, Prisma, and PostgreSQL via Docker. The interface is German.
Best lightweight shift scheduler: Shift Scheduler Shift Scheduler is a simpler web app for moving shift planning off spreadsheets, managing users, employees, customers, and events on a FullCalendar interface. Recurring events follow the iCalendar standard, and all requests require authentication. It self-hosts with Docker or a Tomcat WAR on PostgreSQL, pairing React with Spring Boot. Change the default admin login on first use.
Best for constraint-based rostering: Nurse Scheduling System Nurse Scheduling System frames rostering as constrained optimization for cases too complex for manual spreadsheets. A Python core with a CLI reads YAML and writes CSV or XLSX, using OR-Tools CP-SAT by default with experimental PuLP and cuOpt solvers. Treat it as an early, specialized project: powerful for hard constraints but lightly documented.
Sizing up the kind of scheduling you do
Begin by naming the scheduling problem, because these tools solve noticeably different ones. Schichtplaner and Shift Scheduler are workforce schedulers: Schichtplaner is a full self-hosted shift and workforce system with weekly views, real-time shift booking, time tracking, and absence handling, while Shift Scheduler is a lighter React and Spring Boot app for managing employees, customers, and recurring events on a FullCalendar interface. Worklenz is a project management platform whose scheduling is resource and capacity planning, a visual scheduler and Gantt views to avoid overallocation. Nurse Scheduling System is different again, framing rostering as constrained optimization solved with OR-Tools.
Weigh maturity and fit honestly, since several of these are young or specialized. Schichtplaner is capable but its interface is German, which matters for a mixed team. Shift Scheduler ships a default admin:admin login you must change, and lists overlap checks and bulk actions as roadmap rather than finished features. Nurse Scheduling System is an early work-in-progress with limited documentation, though it has handled wards of around 100 nurses. GYM One is polished for gyms but ships under a custom license, not a standard open source one.
Then treat integrations, notifications, and infrastructure as operational requirements. If you need calendar interchange, confirm real iCalendar or CalDAV support; Shift Scheduler models recurring events on the iCalendar standard, for instance. Email or SMS reminders are features to test, including retry behavior, not decoration. For self-hosted deployments, Schichtplaner and Worklenz both expect PostgreSQL with Redis and object storage, so plan for the whole stack, not just the app.
Related categories
Frequently asked questions
Is this appointment booking or shift scheduling?+
Mostly shift and workforce scheduling, not customer appointment booking. Schichtplaner and Shift Scheduler assign staff to shifts; Worklenz schedules project resources and capacity; Nurse Scheduling System optimizes complex rosters. If you want customers to self-book appointments with availability rules and confirmations, that is a different category of tool. The ones here assume you are planning your own team's time, not selling slots to the public.
Which tool fits shifts, projects, or complex rosters?+
Match the tool to the problem. For assigning employees to shifts, Schichtplaner is the fullest system and Shift Scheduler the lighter option. For planning people across projects and avoiding overallocation, Worklenz offers a visual scheduler and Gantt views. For rosters with heavy constraints, Nurse Scheduling System solves them with OR-Tools optimization. GYM One is the vertical pick for fitness centers, tying class schedules to memberships and access control.
Do these handle scheduling rules like overtime and rest gaps?+
Only if you choose for it. The hard part of rostering is encoding overtime thresholds, rest gaps, availability, and coverage minimums, and most simple schedulers leave those to you. Nurse Scheduling System is the one here built around constraints, framing the roster as an optimization problem solved with OR-Tools CP-SAT so rules are modeled explicitly. Schichtplaner adds optional AI suggestions and demand forecasting, but you should still verify how it enforces your specific rules.
Are any of these production-ready?+
It varies, so check maturity honestly. Worklenz is an established project platform with a cloud and self-hosted option. Schichtplaner is feature-rich but new and German-only. Shift Scheduler still lists overlap checks and bulk actions as roadmap and ships a default admin:admin login to change. Nurse Scheduling System is explicitly an early work-in-progress with limited documentation. Pilot any of these against real schedules before depending on them for staffing.
Do these connect to existing calendars like Google or Outlook?+
Partly, and you should test it. Shift Scheduler models recurring events on the iCalendar standard, which helps with interchange. The others focus on their own internal scheduling rather than advertising CalDAV two-way sync, so if syncing with Google Calendar or Outlook is essential, confirm the exact mechanism, feed, invitation, or API, and test recurring events and cancellations before relying on it. Do not assume calendar interoperability is built in.
Does the German-only interface of Schichtplaner rule it out?+
It depends on your team. Schichtplaner is one of the most complete tools here, with weekly views, real-time shift booking, time tracking, absence handling, PDF export, and role-based access, but its interface is German. For a German-speaking workforce that is no obstacle; for a mixed or English-speaking team it is a real usability cost. Weigh that against how much of its feature set you actually need before committing.
Do time zones and daylight saving get handled correctly?+
You have to verify it per tool, since scheduling bugs cluster around time zones and clock changes. Create bookings across a daylight saving transition, involve people in different regions, and check recurring shifts after the change. Tools built on standard calendar handling, like Shift Scheduler's iCalendar recurrence, tend to fare better, but none of these should be trusted on this point without testing your own cases first.