Let the road decide
Optimize orders the flexible stops around exact times and promised windows, names the one no order can keep, honors a pin and a free, and re-plans the rest of a day from where the crew is.
Planning a day by hand is fine for four stops. Optimize is for the days that are not. It asks the road for the shortest way through the day’s flexible stops — the all-day visits, the job cards, the windowed visits — and orders them around the visits with an exact time, which never move, and inside the windows customers were promised, which are never broken. The proposal is shown against the order you had, with the minutes it saves, and it becomes the plan only when you say so.
It says what it cannot do. A day where the fifth stop’s window is missed however the rest is arranged does not get a plan that quietly arrives late; the stop is named, with the minutes, so you can move the visit or the crew. Pin a stop to keep it where it is; free a visit whose customer said any time is fine and the optimizer may plan it anywhere that day. Both survive a save and come off on their own if the visit is rescheduled by hand.
Plan the rest of the day. At two in the afternoon with the morning done and the afternoon filled with new work, the plan can be remade from where the crew is: what has happened is locked as history — the stop they are at, the visits that have ended — and what remains is ordered from now, the work added since the save named.
Set visit times from the plan writes the planned times onto the flexible and windowed visits through the ordinary reschedule, so a customer is notified exactly when a normal edit would notify them, and a timed visit is never touched. Optimize, the measured legs and the map are Professional, on the same Google Maps meter as route mileage; Billing counts the optimizations.