A Building 8 product
Route optimisation built for the hard case.
GoLoop's automated fleet optimisation engine saves hours of manual planning while minimising road time and maximising on-time rates. Send it your fleet and your jobs; get back an optimised manifest in seconds.
Powered by Google OR-Tools · first solutions in under 30 seconds
The problem
Manual route planning doesn't scale.
Even 5 drivers and 50 deliveries produce billions of possible route combinations. No whiteboard, spreadsheet or experienced planner can search that space before the vans need to leave.
- Wasted kilometres on routes that double back
- Missed time windows and falling on-time rates
- Overloaded drivers and expensive overtime
- No way to re-plan when urgent jobs land mid-morning
“I want to see why it's taking my drivers so long to complete their routes. We're averaging 70% completion per day.”
The difference
The same day, planned twice.
Planned by hand
Planned by GoLoop
Illustrative comparison — same fleet, same jobs, different planner.
How it works
Three steps from raw jobs to a driver-ready manifest.
Describe your day
Fleet, drivers, jobs and time windows, as simple structured data — JSON via API, or through your existing systems.
GoLoop solves
Powered by Google OR-Tools, the same optimisation technology used in production at Google. First solutions in under 30 seconds.
Get your manifest
Per-vehicle route sequences, arrival and departure windows, driver breaks scheduled, road-accurate travel times.
Differentiators
Built for the hard case.
Cold chain, done properly
Refrigerated consignments only go on refrigerated vehicles. A hard constraint, not a preference.
Equipment & driver matching
Tail-lift required? Specific qualified driver? GoLoop only assigns vehicles that genuinely fit the job.
Site-level rules
Some docks refuse large vehicles or only admit named drivers. GoLoop encodes rules per location.
Mid-day re-optimisation
Urgent jobs at 11am? GoLoop re-plans around your drivers' live progress. Completed stops stay locked; the new plan picks up from where each driver actually is.
Most routing tools are built for the simple case. The hard case is where the real money is lost — and that's what GoLoop is built for.
Warm start
Urgent jobs at 11am? Already handled.
07:00
Manifest goes live
Drivers leave the depot with the morning plan on their devices.
09:40
Deliveries under way
Completed stops lock in as drivers progress through their routes.
11:04
Two urgent consignments land
A customer calls; the day just changed.
11:05
GoLoop re-plans, live
The new plan starts from where each driver actually is. Completed stops untouched, no vehicle swaps mid-route, drivers just see their next stop update.
Re-optimisation in around a minute — without disrupting a single completed stop.
Capabilities
Who it's for
Fleets where the constraints are the whole problem.
Cold-chain & food logistics
Temperature-controlled consignments with tight delivery windows and no room for a wrong vehicle.
Courier & last-mile fleets
High stop counts, same-day additions and drivers who need a plan that survives the morning.
Field service & healthcare visits
Skill-matched engineers and clinicians, appointment windows, breaks and travel time that is real.
Logistics platforms & TMS providers
Integrate GoLoop as an embedded optimisation API — POST JSON, receive JSON, no proprietary SDK.
For developers
API-first.
Any platform that can send JSON can use GoLoop. One endpoint, explicit constraints, a manifest you can hand straight to a driver app.
POST /solve
{
"vehicles": [
{
"id": "VAN-114",
"start": "DEPOT-SYDNEY",
"shift": ["07:00", "16:30"],
"containers": [
{ "type": "refrigerated", "capacity_kg": 900 }
],
"equipment": ["tail_lift"]
}
],
"jobs": [
{
"id": "CONS-8842",
"location": [-33.8688, 151.2093],
"weight_kg": 240,
"requires": ["refrigerated"],
"window": ["09:00", "11:00"]
},
{
"id": "CONS-8843",
"location": [-33.9173, 151.0326],
"weight_kg": 120,
"window": ["10:30", "14:00"],
"priority": "optional"
}
]
}200 OK
{
"status": "feasible",
"solve_ms": 8410,
"routes": [
{
"vehicle": "VAN-114",
"distance_km": 84.3,
"stops": [
{ "job": "CONS-8842", "arrive": "09:12", "depart": "09:27" },
{ "type": "break", "arrive": "11:45", "depart": "12:15" },
{ "job": "CONS-8843", "arrive": "12:52", "depart": "13:04" }
]
}
],
"unassigned": []
}Planning still done by hand? Let's fix that.
We're onboarding a small number of fleets and platforms. Tell us a little about your operation and we'll be in touch.