Docs
  • Solver
  • Models
    • Field Service Routing
    • Employee Shift Scheduling
  • Platform
Try models
  • Employee Shift Scheduling
  • User guide
  • Planning window

Employee Shift Scheduling

    • Introduction
    • Planning AI concepts
    • Metrics and optimization goals
    • Getting started with employee shift scheduling
    • Understanding the API
    • User guide
      • Terms
      • Planning window
      • Time zones and Daylight Saving Time (DST)
      • Tags and tag types
      • Constraints
      • Score analysis
    • Employee resource constraints
      • Employee availability
      • Employee contracts
      • Work limits
        • Work limits
        • Minutes worked per period
        • Minutes worked in a rolling window
        • Minutes logged per period
        • Days worked per period
        • Days worked in a rolling window
        • Consecutive days worked
        • Shifts worked per period
        • Shifts worked in a rolling window
        • Weekend minutes worked per period
        • Weekends worked per period
        • Weekends worked in a rolling window
        • Consecutive weekends worked
      • Time off
        • Time off
        • Days off per period
        • Consecutive days off per period
        • Consecutive days off in a rolling window
        • Consecutive minutes off in a rolling window
        • Shifts to avoid close to day off requests
      • Shift rotations and patterns
        • Shift rotations and patterns
        • Shift rotations
        • Single day shift sequence patterns
        • Minimize gaps between shifts
        • Multi-day shift sequence patterns
        • Daily shift pairings
        • Overlapping shifts
        • Shift start times differences
        • Minutes between shifts
      • Shift type diversity
        • Shift type diversity
        • Shift types worked per period
        • Unique tags per period
      • Fairness
        • Fairness
        • Balance time worked
        • Balance shift count
      • Pairing employees
      • Shift travel and locations
    • Shift service constraints
      • Alternative shifts
      • Cost management
      • Demand-based scheduling
      • Mandatory and optional shifts
      • Shift assignments
      • Skills and risk factors
    • Recommendations
    • Real-time planning
    • Changelog
    • Upgrade to the latest version
    • Feature requests

Planning window

The planning window is the time interval to schedule for. Typically, it is derived automatically and does not need to be supplied by user, except the case when there is a Multi-day shift sequence patterns starting or ending with one or more OFF elements.

Example planning window definition from Monday 2024-02-05 00:00 to Sunday 2024-02-11 23:59:59:

{
  "employees": [
    ...
  ],
  "shifts": [
    ...
  ],
  "planningWindow": {
    "start": "2024-02-05T00:00+01:00",
    "end": "2024-02-12T:00:00+01:00"
  }
}

Please note that the start time is treated as inclusive, while the end as exclusive.

If omitted, the planning window interval is derived as follows:

  • start: the start of the earliest of all shifts with time part adjusted to 00:00 (midnight).

Example: the earliest shift start = 2024-10-10T08:00+01:00 → window start = 2024-10-10T00:00+01:00.

  • end: the next day after the start of the latest of all shifts with time part adjusted to 00:00 (midnight).

Example: the latest shift start = 2024-10-10T08:00+01:00 → window end = 2024-10-11T00:00+01:00.

  • © 2025 Timefold BV
  • Timefold.ai
  • Documentation
  • Changelog
  • Send feedback
  • Privacy
  • Legal
    • Light mode
    • Dark mode
    • System default