Giving Dispatch Decisions a Consistent, Auditable System
How VertexOps replaced informal dispatch coordination with rules-based routing and a full decision audit trail.
View project overview →Customer context
VertexOps coordinates field operations across a regional logistics network, historically managed through a mix of phone calls, spreadsheets, and individual dispatchers' judgment and experience.
The challenge
Dispatch quality varied significantly depending on which dispatcher was on shift, and coordination gaps were common during shift changes or high-volume periods when context didn't transfer cleanly between people. There was also no systematic record of why a given routing decision was made, which made it hard to improve the process over time.
Requirements
- Consistent standard-case handling
Routine dispatch decisions needed to be handled the same way regardless of who was on shift.
- Preserved dispatcher judgment for exceptions
The system needed to augment, not replace, dispatcher decision-making for genuinely ambiguous cases.
- Full decision audit trail
Every decision, automated or manual, needed a recorded rationale.
- Real-time fleet awareness
Routing decisions needed current fleet and capacity data, not a stale snapshot.
Discovery
We shadowed VertexOps' dispatch team for several shifts before designing anything, cataloguing which decisions were genuinely routine — the majority — versus which required real judgment calls informed by context that wasn't written down anywhere. That distinction became the core design principle: automate the routine majority explicitly, and make the exception path better-informed rather than trying to automate it away.
Solution
We built a rules-based routing engine that evaluates incoming jobs against defined criteria — location, capacity, priority — and assigns routine jobs automatically. Genuinely ambiguous cases are queued for dispatcher review with relevant context pre-surfaced, rather than requiring the dispatcher to gather that context manually as before.
Technical architecture
The rules engine evaluates each incoming job against current fleet status, pulled in real time from VertexOps' existing fleet tracking system, and defined routing criteria. Jobs meeting clear automatic-routing criteria are assigned directly; everything else enters a review queue with the relevant fleet, location, and priority context already assembled. Every decision — automated or dispatcher-made — writes to an audit log capturing the criteria or reasoning involved.
Implementation approach
We ran the rules engine in shadow mode initially — generating routing recommendations alongside the existing manual process without acting on them — so VertexOps' operations lead could compare the engine's decisions against actual dispatcher decisions before any automation went live. Discrepancies were reviewed together to refine the routing criteria before automatic assignment was turned on for any job category.
Key features
- Rules-based automatic routing
Standard dispatch decisions are handled automatically based on defined criteria.
- Exception queue with context
Ambiguous cases are flagged for dispatchers with relevant context pre-surfaced.
- Full decision audit trail
Every routing decision is logged with its rationale.
- Real-time fleet status integration
Routing decisions are based on current, not stale, fleet data.
Integrations
- Fleet tracking system
Real-time vehicle and capacity status feeds routing decisions.
- Dispatcher communication tools
Notifications and assignments delivered through existing channels.
Challenges & decisions
The shadow-mode period ran longer than originally planned — several weeks rather than several days — because the first version of the routing criteria disagreed with experienced dispatchers more often than expected. Extending shadow mode to properly refine the criteria, rather than launching on the original schedule, was the right trade-off: it meant the automated decisions were trustworthy from day one of going live.
Representative outcomes
More consistent dispatch decisions
Standard cases are routed the same way regardless of which dispatcher is on shift.
Full audit trail
Routing decisions are now traceable, where previously there was no record.
Fewer coordination gaps at shift changes
The system, not an individual dispatcher's memory, carries context forward.
Validated before automation
Shadow-mode testing caught criteria gaps before they affected real dispatch decisions.
Technology stack
In their words
“Running the routing engine in shadow mode before it made a single real decision was the right call, even though it took longer than we originally planned. When we finally went live, the dispatchers trusted it because they'd already seen it agree with them for weeks.”
Renata Alves
Operations Lead, VertexOps
Related services
Interested in a similar outcome?
We're glad to walk through how this approach would translate to your situation.