Most delivery software is built around a one-way journey: goods leave a hub, reach a customer, and the order closes. Laundry and dry cleaning break that model on day one. Every order begins with a collection from the customer, passes through a plant with its own capacity and turnaround time, and ends with a return to the same address, often three to five days later. The two visits are halves of one commitment, and the software has to know that.
This guide covers how to model two-leg orders, how to plan routes when half your stops are collections and half are returns, how to handle turnaround slippage, and which operational controls stop garments and margin leaking out of the process.
Why laundry routing is a different problem
The second leg depends on something outside the route
In parcel delivery, the only thing standing between dispatch and completion is the journey. In laundry, the return leg depends on the plant: sorting, washing, pressing, quality checks and packing all have to finish before the order is routable again. That dependency means the return date is a forecast until processing confirms it, and any routing system that hard-schedules returns at collection time will eventually send a driver to a doorstep empty-handed.
The practical consequence is that your planning horizon splits in two. Collections can be planned days ahead with confidence. Returns should only enter the routable pool once the plant marks the order ready, with a soft forecast used for capacity planning in the meantime.
Every customer is a repeat address, not a one-off
A parcel operation touches most addresses once. A laundry operation touches the same addresses every week, often at the same time, sometimes with a standing order that needs no booking at all. That changes the economics: the value of getting an address right is multiplied across a year of visits, so investment in access notes, gate codes, safe-place instructions and preferred windows pays back far faster than it does in parcel.
Two legs, one promise
Customers do not experience a collection and a return. They experience "my laundry came back on Thursday like you said". Any metric that measures the legs separately will look healthy while the promise is failing.
Modelling a two-leg order
The cleanest model treats the order as the parent record and the two visits as linked child jobs. The parent holds the customer, the service level, the item manifest and the promised return date. The children hold the routing detail: address, window, assigned driver, sequence, proof of completion.
| Record | Holds | Created when | Closes when |
|---|---|---|---|
| Order | Customer, service type, promised return date, item manifest, price | Booking or standing schedule fires | Return leg completes |
| Collection job | Address, collection window, driver, bag count, collection proof | Order is created | Driver confirms bags collected |
| Processing record | Plant, item-level count, defects noted, ready timestamp | Bags arrive at plant | Plant marks order ready |
| Return job | Address, return window, driver, item count, delivery proof | Plant marks order ready | Customer receives garments |
Keeping the processing record separate matters more than it looks. It is the join between what the driver collected and what the plant actually received, and it is where discrepancies surface while they are still cheap to resolve.
Planning collection and return routes together
Day-mapping beats dynamic optimization for thin books
The instinct is to throw every open job at a route optimizer each morning. For laundry that usually produces worse results than a simple structural rule: assign each postcode or zone to fixed collection days, and set the return day to follow the standard turnaround. A customer in zone A collected on Monday gets their return on Thursday, alongside the Thursday collections for zone A.
The effect is that both legs for a given area land in the same geographic cluster on the same vehicle. Route density rises, drive time per stop falls, and customers get a predictable rhythm they can plan around. Dynamic optimization then works inside the day rather than across the whole book, sequencing a dense set of nearby stops instead of stitching together a sparse one.
Mixed-purpose stops and vehicle capacity
Once both legs share a vehicle, capacity becomes bidirectional. The van leaves the depot loaded with finished returns and fills with dirty collections as it empties. Peak load is not at the start or the end but somewhere in the middle, and it depends on sequence. If your capacity model only checks the load at departure, you will overbook the middle of the route.
- Model capacity as a running total across the sequence, not a single departure figure.
- Where a customer has both a collection and a return on the same day, treat it as one stop with two actions, not two stops.
- Keep finished garments and soiled collections physically separated in the vehicle; build it into the loading rule, not driver discretion.
- Cap the number of return-leg stops per route more tightly than collections, because returns carry the customer promise and the handover takes longer.
Turnaround SLAs and what happens when they slip
Turnaround is the promise the whole operation hangs on, and it is made before anyone has seen the garments. A heavily soiled item, a repair, a specialist clean or a plant backlog can all push a return past its date. What separates a good operation from a chaotic one is not whether slippage happens but whether it is detected before the customer notices.
| Exception | Detected at | Customer impact if unhandled | Right response |
|---|---|---|---|
| Item needs specialist treatment | Plant intake | Return arrives short by one item with no warning | Split the order: return the ready items, reschedule the remainder with a new date |
| Plant backlog | Capacity check the evening before | Whole route of returns fails | Reforecast affected orders, notify before the promised window opens |
| Damage or defect found | Plant inspection | Dispute at the doorstep | Photograph, log against the order, contact the customer before the return leg is routed |
| Customer not home at collection | Driver at the door | Turnaround clock never starts; return leg has nothing to return | Cancel the linked return job immediately and offer a rebooked collection |
That last row is the one operations teams underestimate. A failed collection does not just delay an order; it orphans a return job that is already sitting in a future route. If the link between legs is not enforced in software, that orphan will be dispatched, and a driver will spend fifteen minutes at a door with nothing to hand over.
Cancel the return when the collection fails
Make it automatic. The moment a collection is marked failed, the linked return job should leave the routable pool and the customer should get a rebooking option. Manual cleanup of orphaned returns is a job nobody remembers to do at 7pm.
Garment-level tracking and proof that survives a dispute
Bag-level proof works right up until a customer says a shirt is missing. At that point a photograph of three bags on a doorstep proves nothing about what was inside them. Operations that handle disputes well capture counts at every handover point, so the gap can be located rather than argued about.
- At collection: driver records bag count and, for higher-value services, an item count agreed with the customer.
- At plant intake: items are counted and logged against the order, with any discrepancy against the collection count raised immediately.
- At plant outbound: finished item count confirmed at packing, with defects and unfinished items flagged.
- At return: driver captures proof of delivery with item count, signature or photo, timestamped and geotagged.
With those four counts, a missing-item claim resolves to a specific leg in minutes. Without them, it resolves to a goodwill credit. Across a year of repeat customers, the difference is material.
"We thought our problem was drivers. It was not. Once we counted items at plant intake instead of just at the door, most of our missing-garment claims turned out to be sorting errors inside our own building."
— Operations lead, regional dry cleaning group
Standing orders, subscriptions and route stability
A large share of laundry volume is recurring: the same customer, the same day, every week or fortnight. Treating those as fresh bookings each cycle throws away the main advantage they offer, which is that they let you plan capacity and routes weeks ahead. Standing orders should generate collection jobs automatically on their schedule, inherit the customer's access notes and window, and be suppressible for a holiday without deleting the underlying arrangement.
Route stability is worth protecting even at a small efficiency cost. A driver who runs the same zone every Monday learns which buildings have a concierge, which gates stick, and which customers leave bags in a porch. That accumulated knowledge is why a marginally longer fixed route often outperforms a marginally shorter optimized one.
How Geofleet handles two-leg operations
Geofleet models collections and deliveries as distinct job types that can be linked, sequenced and assigned within the same route, so a vehicle can run returns and collections together with capacity tracked across the sequence. Planning profiles let a laundry operation run different dispatch rules per hub, per day or per order type, which is exactly the structure day-mapping needs: one profile for collection-heavy days, another for return-heavy days, each with its own capacity caps and window rules.
Proof of delivery captures photo, signature and item counts at both legs, and branded tracking keeps the customer informed across the turnaround rather than only on the day of return. Where a plant system or order source already holds the schedule, standing orders can be driven from it through the integration layer rather than rekeyed.
Metrics that tell you whether two-leg routing is working
| Metric | What it reveals | Warning sign |
|---|---|---|
| Promise-kept rate (order level) | Whether the customer got their return on the promised day | Leg-level success is high but order-level is not |
| First-attempt collection rate | Whether collection windows match customer availability | Falling rate concentrated in specific zones or times |
| Orphaned return jobs | Whether failed collections are cascading correctly | Any non-zero number indicates the link is not enforced |
| Stops per hour by leg type | Whether returns are being under-resourced | Return-leg rate far below collection rate suggests handover time is not modelled |
| Item discrepancy rate by handover point | Where garments are actually going missing | Concentration at one point rather than spread across all four |
The metric that matters
Illustrative: an operation can run 97% on-time collections and 96% on-time returns and still miss the promise on roughly one order in fourteen, because the failures do not overlap. Only the order-level figure shows it.
Related reading
Frequently asked questions
What is laundry pickup and delivery software?
It is delivery management software that models an order as two linked visits to the same address: a collection and a return, separated by a processing turnaround. It routes both legs, tracks items between them, and prevents a return being dispatched when the matching collection failed or the plant has not finished the order.
How do you route laundry collections and returns efficiently?
Map each zone or postcode to fixed collection days and let the return day follow the standard turnaround. Both legs for an area then land on the same vehicle on the same day, which raises route density. Use dynamic sequencing inside the day rather than optimizing across the whole book of work.
Should the return leg be scheduled at the time of collection?
Only as a forecast for capacity planning. The return should not enter the routable pool until the plant confirms the order is ready, otherwise a processing delay sends a driver to the door with nothing to hand over.
How do you handle a missing garment claim?
Capture item counts at four points: collection, plant intake, plant outbound and return. A claim then resolves to a specific handover rather than becoming a goodwill credit. Most operations that add plant intake counts discover the majority of discrepancies are internal sorting errors.
What happens to the return job if a collection fails?
It should be cancelled automatically and the customer offered a rebooked collection. An orphaned return job left in a future route will be dispatched, and the driver will arrive with nothing to deliver.
Can Geofleet handle pickup and return in one route?
Yes. Collections and deliveries are distinct job types that can be linked and sequenced in the same route, with capacity tracked across the sequence rather than only at departure. Planning profiles allow different dispatch rules for collection-heavy and return-heavy days.



