Docs
  • Solver
  • Models
    • Field Service Routing
    • Employee Shift Scheduling
    • Pick-up and Delivery Routing
  • Platform
Try models
  • Field Service Routing
  • Real-time planning (preview)

Field Service Routing

    • Introduction
    • Getting started: Hello world
    • User guide
      • Terms
      • Planning AI concepts
      • Constraints
      • Understanding the API
      • Demo datasets
      • Planning window
      • Model configuration
      • Configuration overrides
      • Time zones and daylight-saving time (DST)
      • Routing with Timefold’s maps service
      • Input validation
      • Model response
      • Key performance indicators (KPIs)
      • Metrics and optimization goals
    • Vehicle resource constraints
      • Shift hours and overtime
      • Lunch breaks and personal appointments
      • Fairness
      • Route optimization
      • Technician costs
      • Technician ratings
    • Visit service constraints
      • Time windows and opening hours
      • Skills
      • Visit dependencies
      • Visit requirements, area affinity, and tags
      • Multi-vehicle visits
      • Movable visits and multi-day schedules
      • Priority visits and optional visits
      • Visit service level agreement (SLA)
    • Recommendations
      • Visit time window recommendations
      • Visit group time window recommendations
    • Real-time planning
      • Real-time planning: extended visit
      • Real-time planning: reassignment
      • Real-time planning: emergency visit
      • Real-time planning: no show
      • Real-time planning: technician ill
      • Real-time planning: pinning visits
    • Real-time planning (preview)
      • Real-time planning: extended visit (preview)
      • Real-time planning: reassignment (preview)
      • Real-time planning: emergency visit (preview)
      • Real-time planning: no show (Preview)
      • Real-time planning: technician ill (Preview)
      • Real-time planning: pinning visits (preview)
    • Scenarios
      • Long-running visits
    • Changelog
    • Upgrade to the latest version
    • Feature requests

Real-time planning (preview)

This guide describes features currently available as a preview feature. If you’d like early access to this feature, please Contact us. For information about the current supported feature, see Real-time planning.

Feasible field service routing plans balance the number of customer visits that need to be made with the available technicians, customer availability, the distance between visits, the available skills of the technicians, and how many technicians are required for specific visits.

For plans to remain feasible, they must be adaptable and allow for revisions to be made.

There are many reasons a field service routing plan might need to change, including:

A visit takes longer than expected.

  • The work proves to be more difficult than expected.

  • The technician starts work and discovers additional work must be completed first.

An urgent and unexpected visit must be added to the schedule.

  • An outage occurs preventing other visits from being completed and must be fixed immediately. For instance, a power outage that must be resolved before electricians can complete work at other sites.

  • An emergency visit must be scheduled to resolve a safety issue.

The customer is unavailable

  • A customer has cancelled the visit.

  • A customer is unexpectedly unavailable to grant access to the location.

A technician is taken ill

  • A technician has called in sick and will not be working.

  • A technician has fallen ill during the day and the remainder of their visits need to be reassigned.

Whatever the reason real-time planning is necessary, a feasible schedule can only remain feasible if it can adapt to changing circumstances.

1. Continuous planning

Continuous planning is the process of creating and updating plans and includes different types of planning.

1.1. Batch planning

Batch planning is the process of creating plans for upcoming periods of time and occurs before the planned-for time period starts. With batch planning, you can plan for a sliding time window of one month, and add new days to the schedule as days in the schedule are completed. Typically, batch planning runs overnight and means you can publish the schedule ahead of time so that your customers and employees can plan around the schedule.

1.2. Real-time planning

Real-time planning is the process of updating plans that are already being executed. Real-time planning makes it possible to add emergency visits during the day or reschedule and reassign visits if one of your technicians is unavailable. Real-time planning can happen multiple times throughout the day.

1.3. Example real-time planning scenario

  • 06:00: The results from the nightly batch planning are finalized and published.

  • 08:00: A technician calls in sick and a real-time plan needs to be created for the day to reassign visits where possible and reschedule other visits to a later day.

    • A patch is created to modify the latest revision of the plan and create a new revision.

  • 12:00: An emergency visit has to be added to the schedule and a second real-time plan needs to be created.

    • A patch is created to modify the latest revision of the plan and create a second new revision.

Depending on the day and the situation, real-time planning may need to take place several times a day to generate new revisions of the plan.

1.4. Real-time planning process

The typical real-time planning process involves:

  1. Create a patch for the most recent revision of the plan with the details that have changed. For instance, if a visit has taken longer than expected, update the serviceDuration for that visit, or if a technician has fallen ill, update their shift times to show they are no longer available.

  2. Because the plan is already being executed, it is necessary to freeze any visits in the plan that are already underway or that technicians are already traveling to:

    {
      "modelInput": {
        "freezeTime": "2027-02-01T12:00:00Z"
      }
    }

    freezeTime divides the plan with everything before the specified time unchangeable. Everything after the specified time can be changed.

  3. If visits cannot be rescheduled in the real-time plan they should be pinned so they keep their previously assigned time.

  4. Submit the patch to generate a revision of the plan.

  5. Publish the updated revision of the plan.

It’s important to consider the consequences of real-time planning. For instance, if customers have already been notified of technicians' expected arrival times, how will the customers be updated with the new expected arrival times?

Learn how to manage real-time planning with the following guides:

  • Real-time planning: extended visit (preview)

  • Real-time planning: reassignment (preview)

  • Real-time planning: emergency visit (preview)

  • Real-time planning: no show (Preview)

  • Real-time planning: technician ill (Preview)

  • Real-time planning: pinning visits (preview)

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