Route optimization

Delivery time windows: how to build the process and hit every slot

A delivery time window is a promise to show up not "sometime today", but inside an agreed interval: 10:00 to 14:00, 18:00 to 20:00, or at a specific hour. For the customer it is convenience; for the operations team it is a hard constraint that breaks the usual way of planning. Here is how to pick the width of a slot, how to build routes that actually fit inside those slots, and what to do when the day stops going to plan.

What a time window is and who really needs one

A time window is the interval within which the field employee has to arrive at the customer. Three formats are common: a wide half-day slot (9:00 to 18:00), a medium one of two to four hours (14:00 to 18:00), and a narrow one close to an exact time (15:00 to 16:00). The narrower the interval, the higher the perceived quality of service — and the more every stop costs you.

Not every business needs slots to the same degree. A courier service moving documents and small parcels can usually live with a wide interval: the recipient is willing to wait. But as soon as the order requires someone to physically be at home or on site — large appliances, furniture, installation, a survey, a repair, goods accepted at a retail store — the window becomes mandatory. Without it, failed visits pile up: the courier arrives and there is nobody to hand the order to.

B2B deliveries to chains and warehouses are a category of their own. There the window is dictated not by a person but by a receiving policy: the dock is free from 7:00 to 11:00, and outside that interval the truck is simply turned away. That kind of window cannot be broken at all, and the whole day has to be planned around it.

How to choose the width of a slot

Slot width is always a trade-off between the promise you make and the cost of the run. A narrow window sharply limits the planner: orders stop grouping by geography and start grouping by time, which means more mileage, more empty legs and fewer stops per person per shift.

What to base the decision on:

  • Order density. If you have dozens of addresses a day in one district, narrow windows are affordable — the stops are close together. With sparse geography, a narrow slot effectively means a dedicated trip.
  • Time spent on site. Handing over a parcel in five minutes and doing an hour-long installation call for different interval widths: the longer and less predictable the job, the wider the window should be.
  • The cost of getting it wrong. Count more than mileage — count the price of a repeat visit after a failed delivery. Sometimes a narrow window pays for itself simply by cutting the number of wasted trips.
  • Willingness to pay. A narrow interval sells well as a paid option, while the wide one stays the default.

What works in practice is not one window for everyone, but two or three tiers: a basic wide slot, a medium one and a premium narrow one. That way you do not force your whole operation to run at the strictest requirements of a minority of orders.

How routes are built around time windows

The planner's job is not simply to find a short path, but to find a short path where every stop is visited inside its own interval. In routing theory this is a class of problems of its own — the vehicle routing problem with time windows. The algorithm has to split orders between people and set the visiting order at the same time, so that nobody arrives before a slot opens or after it closes.

For the plan to match reality, the model must include three quantities: travel time between stops, working time at the stop (handover, signature, unloading, installation) and a buffer for the unexpected. The classic mistake in manual planning is counting only the driving. Fifteen minutes for the approach, finding parking and getting up to the right floor, multiplied by twenty addresses, eats several hours of a shift that were never in the plan.

The second subtlety is waiting. If a courier arrives before the window opens, they stand idle. The algorithm accounts for this and either schedules the stop later or squeezes another address in between. A human almost never makes those rearrangements mentally: with twenty stops there are simply too many options.

In practice it looks like this: the dispatcher uploads orders with their slots, the engine spreads them across people and visiting order, and any order that fits into no route at all is flagged separately — it has to be moved, pushed to another day, or renegotiated with the customer. In itlogist, route optimization runs on the OR-Tools engine and takes delivery windows and per-employee constraints into account — route optimization in itlogist.

What breaks windows in real life

A plan that looks perfect at nine in the morning has drifted from reality by noon. The usual causes:

  • Underestimated time on site. Five minutes on paper, fifteen in reality — and by the fifth address the route is an hour behind.
  • Traffic and weather. Morning and evening peaks, snow, road closures — all of it stretches the legs between stops.
  • Late order changes. The customer moves the time or changes the address while the courier is already en route, and the whole remaining sequence stops making sense.
  • No-answers and refusals. One wasted visit costs you not just that delivery, but minutes taken from every customer after it.
  • An overpacked plan. If the shift is built with no slack, any small delay cascades through every remaining stop.

Against the first two causes, honest statistics help: collect the actual time spent on site and the actual travel time on your own addresses instead of inventing norms. Against the rest — slack in the schedule and the ability to rebuild the remainder of a route quickly, without redoing the entire day.

Control during the day: don't learn about a delay from the customer

Windows only work when the dispatcher sees the slippage before an unhappy customer calls. That takes a live picture rather than an evening report: where each person is, which stops are already closed, whether they will make the next slot.

The minimum toolkit for the day:

  • routes on a live map — you can see who is on schedule and who is falling behind;
  • order statuses from the field: accepted, en route, completed, could not deliver;
  • on-site confirmation — photo reports and checklists, so that closing a stop is a fact rather than a verbal claim;
  • a customer portal with statuses, so the client can see what is happening without tying up the dispatcher's phone;
  • a reassignment playbook: what to do when someone clearly will not make the next window.

Feedback for the future matters just as much: every missed stop should land in your statistics with a reason attached. After a month, that data shows where the problem is systemic — in the time norms, in one district, with one particular employee, or in the promise you made to the customer in the first place.

How to start moving to slots

Do not roll out narrow windows for every order at once — operations will break within the first week. A sane sequence:

  • Measure your baseline. How many minutes a stop actually takes, and how long the legs between addresses run in your city and your districts.
  • Define two or three slots. Start with wide intervals you are certain you can hit, and sell the narrow one as a separate option.
  • Plan routes automatically. Manual assignment stops working at a couple of dozen addresses with windows.
  • Introduce a metric. On-time share by slot and by employee is the number that tells you whether you can afford to narrow the windows.
  • Connect your systems. The slot should arrive from the source of the order rather than be retyped by hand: itlogist exchanges data with 1C, AmoCRM, Bitrix24 and Excel.

After that, let the data lead. If the on-time share in the wide slot is consistently high, you have room to tighten the interval. If it is not, there is nothing to tighten yet — fix your norms and your planning first. Rollout of itlogist takes 7 days, with no long-term contract, and it suits teams of 5 to 100 field employees, so you can test the slot idea on live orders instead of on paper.

how routing with time windows works in itlogist

FAQ

What is the optimal delivery time window?

There is no universal answer: the optimal window is the narrowest one you can hit consistently. Start with a wide half-day interval, measure your on-time share, and tighten only where the statistics show slack. Narrow slots are best kept as a paid option.

Why do narrow windows push delivery costs up?

A narrow interval prevents grouping orders by geography: stops have to be visited in an order dictated by time rather than proximity. Mileage grows, empty legs and idle waiting before a window opens appear, and the number of addresses per person per shift falls.

Can delivery windows be planned manually?

With a handful of addresses, yes. But at a couple of dozen stops with intervals, nobody can hold travel time, on-site time and the edges of every slot in their head at once, and the plan drifts from reality within the first hours of the shift.

What should we do when a courier clearly won't make the next window?

You need a playbook written in advance: the dispatcher spots the slippage on the live map, warns the customer, and either moves the stop to another route or agrees a new time. The worst case is hearing about the delay from the customer.

How do we account for time spent on site?

Collect actual data instead of eyeballed norms. Start and finish marks from the field give you the real duration of a visit by order type, and those are the numbers that go into route planning.

← All articles: Route optimization