Break Management
Breaks are essential for driver safety, legal compliance, and operational efficiency. This guide covers how to configure various break types, locations, and timing constraints in your routing optimization.Break Configuration Basics
Breaks are defined within resource shifts:Break Types
Windowed Breaks
Can occur flexibly within a time window:Flexible Windowed Breaks
Flexible timing within a wider window:Drive Breaks
Reset continuous driving time:Duty Breaks
Trigger a break after cumulative work time — the combined total of driving time and service time. Unlike drive breaks which only count time behind the wheel, duty breaks account for all active work performed by the resource.Work time calculation: Work time includes driving time and service time (job durations). It does not include waiting time from time windows, break time, or synchronization delays.
Unavailability Breaks
Mark resource as unavailable:Break Locations
Location Options
- No Location
- Specific Location
- Start and End Location
WINDOWED break has no location of its own: it is taken wherever the resource isLocation Impact:
WINDOWED,DRIVEandDUTYbreaks have no location and add no travel timeUNAVAILABILITYwithstart: travel time to thestartlocation is accounted for
Unavailability Start and End Locations
An unavailability break can carry astart and an end location. The resource travels from its previous stop to start before the break, and resumes from end after it — travel between start and end during the break is considered instantaneous and is not the solver’s concern. This models fixed commitments at known places, such as locked appointments overlaid on availability, without splitting availability into separate blocks.
startandendare both optional; settingendrequiresstart.- If only
startis given,enddefaults tostart. - The legacy
locationfield is still accepted and is equivalent to settingstartandendto the same location. It cannot be combined withstart/end. - If the break falls after the last job of a route, the return leg to the shift end starts from the break’s
endlocation, and the route cannot finish before the break’stotime.
Deducting Previous Breaks
When a shift includes multiple breaks, you can usedeductPreviousBreaks to reduce a break’s effective duration by the total time already spent on earlier breaks. This is useful when regulations require a total rest period that can be split across multiple shorter breaks throughout the shift.
deductPreviousBreaks is true, the 15-minute windowed break taken earlier is subtracted, resulting in an effective duty break of only 30 minutes.
How deduction works: When
deductPreviousBreaks is true, the effective break duration is calculated as:effective duration = max(0, break duration − break time already taken)Break time already taken is what earlier breaks actually took, each at its own effective duration, so a deducting break tops the rest taken so far up to its configured duration. If earlier breaks already meet or exceed it, the effective duration becomes zero — the break is still tracked but adds no extra idle time.DUTY break and a 45-minute DRIVE break, both deducting, a route that triggers all three takes 15 + 15 + 15 minutes:
Each visit’s
breakTime reports the effective duration of the breaks taken before it.
The deductPreviousBreaks option is available on all trigger-based break types:
Break Timing Constraints
Break Before Finish
There is no separate shift-level field for “break must finish by”. Theto bound of a WINDOWED break is not a hard deadline: a window that has closed is still charged, and with a single break per shift the bound has little effect. Where a hard bound is needed, use an UNAVAILABILITY break, which blocks its from to to interval:
Breaks After the Last Job
A break that is due once the last job is done is taken before the route ends: it delays the arrival at the shift end and is reported asbreakTime on the trip’s end visit.
- A
DRIVEorDUTYbreak is due when the return leg to the shift end takes the trip over its threshold. A threshold crossed during a job’s service is handled before that job, so withignoreTravelTimeFromLastJobno such break is added at the end. - A
WINDOWEDbreak that no visit took is due if its window opens before the resource is back, even if the window has closed by then. A window that opens later is not reported.
Multiple Breaks Example
Integration with Resumable Jobs
AnUNAVAILABILITY break can interrupt a long service job, provided the job is marked resumable.
Result: Installation runs 8:00-12:00 (4 hours), break 12:00-13:00, resumes 13:00 to completion
Complex Break Scenarios
Legal Compliance Example
EU driving regulations with both drive and duty breaks:Field Service with Breaks
Best Practices
1
Plan for Travel Time
UNAVAILABILITY breaks with a start location require travel to that location - position routes accordingly2
Use Flexible Windows
Windowed breaks give solver more optimization options than fixed breaks
3
Consider Job Locations
WINDOWED, DRIVE and DUTY breaks have no location and add no travel; use start/end only when the break must happen at a specific place4
Account for Regulations
Implement legal break requirements as hard constraints
Break Impact on Routes
The solver automatically:- Schedules breaks within allowed windows
- Triggers duty breaks when cumulative work time exceeds the threshold
- Triggers drive breaks when cumulative driving time exceeds the threshold
- Adds travel time for
UNAVAILABILITYbreaks with astartlocation - Pauses and resumes
resumablejobs aroundUNAVAILABILITYbreaks - Ensures breaks don’t violate time windows
- Optimizes break placement to minimize disruption
Performance Considerations
Break Complexity Impact
Break Complexity Impact
Low Impact:
- Single break per shift
- Breaks without a location
- Wide time windows
- Multiple breaks per shift
- Breaks with
start/endlocations - Moderate time windows
- Many fixed-time breaks
- Specific break locations
- Tight break windows
- Multiple driving and duty breaks combined
Troubleshooting
Breaks Not Scheduled
Breaks Not Scheduled
Causes:
- Break window too restrictive
- Insufficient time in shift
- Travel time to break location too long
- Widen break windows
- Use breaks without a location (
WINDOWED,DRIVE,DUTY) when the place does not matter - Verify shift duration accommodates all breaks
Inefficient Break Placement
Inefficient Break Placement
Causes:
- Fixed breaks at suboptimal times
- Break locations causing excessive travel
- Use windowed breaks for flexibility
- Consider multiple smaller breaks
- Place break locations close to the route
Jobs Interrupted by Breaks
Jobs Interrupted by Breaks
Causes:
- A non-resumable job overlapping an
UNAVAILABILITYbreak, which pushes it until after the break - Poor break window alignment
- Mark long jobs
resumable— note this only helps forUNAVAILABILITYbreaks - Adjust break windows
- Use job relations to control scheduling
Related Features
Shift Management
Configure shifts and working hours
Resumable Jobs
Jobs that can be paused by an unavailability
Drive Time Limits
Legal driving time restrictions
Time Windows
Coordinate breaks with job timing