Problem
A dispatcher at a small carrier keeps four or five load boards open, each with its own login, listing format and refresh cadence, and re-checks every tab all day mentally filtering hundreds of listings for the handful that fit. It falls behind exactly when volume picks up.
System
Board connectors normalize listings into one schema. A scorer combines hard filters (equipment type, lanes, pickup window) with rate-per-mile against the carrier’s floor and deadhead distance, and produces a ranked digest where each line explains itself: “Reefer matches the fleet exactly. $2.63/mi vs $2.35 floor (+12%). 0 mi deadhead. On preferred lane.” The best ones go to Slack tagged CALL NOW; the rest wait in a dashboard.
Worth knowing
Every ranking is explained in the dispatcher’s own terms rather than as a score, because a dispatcher who can’t see why a load ranked high will stop trusting the list after the first bad call. The rules-only scoring path runs with no model at all; embeddings are an optional layer for fuzzy lane matching, not a dependency.