Turn today's NEMT 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, late start, or a shift changed for that day only.
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, hours capped
Your main drivers get their full shift filled before backup or lower-priority drivers are called in — and a hard cap on hours worked keeps any one driver's day from running unbounded.
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.
A ride home keeps its exact time
A return-home pickup is held to its own booked time, not a rough window near it — the same standard a fixed appointment already gets.
In one real fleet's data, the number of drivers working more than 8 hours in a single day fell from 9 to 7 — once duty hours were actually measured, not just ride counts.
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.
Know when an estimate is a guess
Every trip time is flagged for whether it came from real, traffic-aware routing or a straight-line fallback — so you always know which times are worth double-checking.
Finalize and hand it out
Lock the plan once it's right, then export it as CSV or XLSX — including which vehicle ran each ride, its real mileage, and any driver a rider shouldn't be paired with.
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 teammates into your account directly from the app, with the right role from day one.
What dispatchers actually ask first.
The questions that come up before a fleet hands over tomorrow's board.
What happens if I need to change something after the plan is finalized?
Finalizing locks the plan so nothing shifts underneath an export. Un-finalize it first — one click — make the change, then finalize again.
How do I find out if a placement is wrong?
The same checks a dispatcher already makes by eye — mobility match, shift window, real drive time — run automatically before you ever see the plan. Anything the optimizer can't place with confidence is flagged for you to assign by hand, not guessed at.
Does this replace me, or just the rebuilding?
Just the rebuilding. Routeness assembles the first pass of the route; you review it on a map, adjust anything by hand, and decide when it's ready to finalize.
Does it work on a phone or tablet?
Yes. The route view is built to be checked and adjusted from a phone or tablet, not just a desktop — every stop's address stays fully visible instead of hiding behind a hover-only tooltip, since a touch screen has no hover at all.
What happens to a ride nobody can place?
It's never dropped. If no driver or vehicle can take it, it's flagged for you to assign by hand instead of disappearing from the day's plan.
Stop rebuilding the board by hand.
Bring a day of your schedule — de-identified is fine. We'll show you the route it becomes.