Turn today's ride requests into one working route.
Routeness takes the day's pickups and assembles a feasible, mobility-matched, on-time route for the vehicles the day needs — the plan your dispatcher currently rebuilds by hand in a spreadsheet, before the first pickup.
Every route starts as a flat list.
Pickup windows, return legs, wheelchair vans, ambulatory seats, a driver on a different shift than usual. Someone has to turn that into a route order that actually works, by hand, before the first pickup.
Rebuilt manually, every morning, reconciled against whoever's actually on shift.
- R. Alvarez7:10a · WCV
- T. Nakamura7:52a · AMB
- P. Whitfield8:35a · STR
- D. Okafor9:14a · WCV
- M. Bui9:48a · AMB
Sequenced and mobility-matched automatically — anything that can't be placed is flagged for a dispatcher to assign by hand, never dropped silently.
The same fields a dispatcher already checks by eye.
Checked automatically for every ride, every time the plan is regenerated.
Vehicle match
A wheelchair van isn't an ambulatory seat. Every ride is placed only on a vehicle configured to support it.
Driver window
Placed inside a driver's actual working hours for that day — including a one-off early finish or late start.
Real drive time
Trip times come from real road routing, with traffic predicted for the hour the ride actually runs — not a straight-line estimate.
Zones & exclusions
A driver limited to one service area, or a rider who shouldn't ride with a specific driver — a roster setting, or a column on the day's schedule — is enforced automatically, every time the plan is regenerated, never left to a manual check.
Core team filled first
Your main drivers get their full shift filled before backup or lower-priority drivers are called in — matching how a dispatcher actually staffs the day, not just who's nearest.
No driver left waiting nearby
The plan keeps improving after it's first built — routes are re-checked and rides shifted between drivers to close long idle gaps, not assigned once and left alone.
Runs the whole day, not just the math.
The route plan is the center of the page, not the whole of it — the parts around it are what a dispatcher actually touches most.
Upload and correct
Upload the day's schedule as a CSV. Made a mistake? Re-upload the same file — rows matching an existing ride update in place instead of duplicating.
Change a ride without starting over
Add a late request, fix a pickup time, or move a ride to a different driver by hand. It commits immediately, and the rest of the day's plan stays exactly as it was.
See the line
Open any driver's route on a map to check a stop order before committing to it, not just as a list of times.
Finalize and hand it out
Lock the plan once it's right, then export it as CSV or XLSX for however drivers actually receive their schedule today.
Built to keep one company's data to itself.
Routeness was designed multi-tenant from the start, not retrofitted for it — every fleet's roster and rides are isolated at the data layer.
Tenant isolation
Every request scopes automatically to one company's data — enforced on every query, not left to per-query discipline, with a dedicated regression test.
Role-gated access
Dispatchers see the day's routes; roster and team management stay behind an admin-only role.
Never a silent drop
A ride the optimizer can't place outright is retried against every driver's own route before it's ever flagged for a dispatcher to assign by hand — it never simply disappears from the day.
Your team, your access
An admin invites dispatchers and other admins directly from the app, with the right role from day one.
Stop rebuilding the board by hand.
Bring a day of your schedule — de-identified is fine. We'll show you the route it becomes.