Skip to content
GO Build Labs

Case study · Freight brokerage

The tool a broker sits in front of while they're on the phone

A carrier development CRM for a temperature-controlled freight brokerage. Finding the load is the easy part; knowing which of the hundreds of carriers a broker has talked to is worth calling for this lane, today, is the hard part, and it normally lives in spreadsheets, a rep's memory and scattered notes.

Client
A temperature-controlled freight brokerage
Industry
Freight brokerage
Reliability score, tiered A through D
0-100
Sourcing gate enforced in code
Approved-only
US cities in the keyless lane search
~32,000

The problem

The knowledge that makes a broker good at their job was not written down anywhere a second person could use it. Which carriers were reliable on this lane, which ones had gone quiet, which ones were even legally cleared to run, all of it lived in spreadsheets and in individual reps' heads. Nothing stopped an unvetted carrier from getting sourced onto a load under time pressure, because there was no gate, just a policy someone was supposed to remember. Follow-ups had no cadence, so a carrier developed months ago and never called again just stayed developed and forgotten, even after a new load came in on exactly their lane. And matching a load to a truck meant scrolling a load board and cross-referencing it against a separate spreadsheet by hand, for every single load.

What we built

We built a carrier development pipeline with a real gate in it: Prospect through Onboarding to Approved, with a DAT-style qualification checklist, and only Approved carriers can be sourced onto a load, enforced in code rather than left to memory. Adding a carrier checks its MC number against Highway (that check is mocked behind a clean seam today, pending API access) before the record is even created, and a duplicate MC number links to the existing carrier instead of quietly creating a second one. A follow-up board splits into Overdue, Due today and Upcoming, driven by a written cadence, so a carrier goes quiet on the system's schedule, not by accident. A single 0-100 reliability score, tiered A through D and weighted across on-time delivery, claim-free rate, load-acceptance rate, responsiveness and tenure, answers the question that kept coming up: how do you actually gauge a good truck. That score feeds a load-matching search: describe the lane that needs covering and it ranks every qualified carrier by fit, deadhead miles, lane history, temperature capability and equipment, plotted on a real lane map, with a TMS load board sitting above the search so clicking a load fills the search in one click. Each carrier's own workspace is built around the call rather than the data model: a persistent strip of key numbers stays visible while a rep switches between contacts, lanes, performance, compliance, documents, claims and history. Underneath it: claims and recovery tracking, CSV import and export deduped by MC number, reports for the broker leaderboard and funnel, an admin center with Microsoft Entra single sign-on, and a keyless city and lane search over roughly 32,000 US cities built from bundled public data rather than a metered mapping API.

The outcome

The system turns a broker's institutional knowledge into something the whole desk can act on. A carrier developed months ago surfaces again the moment a new load matches their lane, instead of staying forgotten in a rep's memory. Approved status is a gate the code enforces, so an unvetted carrier cannot be sourced onto a load no matter how much pressure the desk is under. And instead of scrolling a board and cross-referencing a spreadsheet, a rep describes the lane once and gets a ranked list of who to call, with the reasoning for the ranking attached. It is a working prototype today, with real data persistence and real Microsoft Entra authentication behind every route; the Highway, TMS and Teams integrations are mocked behind clean seams pending API access and a cost review, which is the main gap left between this and a production rollout.

Stack: Next.js · TypeScript · Supabase (Postgres with row-level security) · Microsoft Entra SSO · Bundled public-domain city & lane map data · Mocked integration seams for compliance, TMS and messaging APIs

Two promises the software industry hates making

One monthly fee, starting at launch

Design, development, hosting, and support in one number you can budget like rent. No hourly meters, no change-order invoices, and no per-seat fees that grow with your team. Billing does not begin until version 1.0 is live and your team is using it.

See the plans →

You own the custom code. All of it.

The repository, the documentation, and the infrastructure are in your name from day one. If you ever leave us, you take everything and any developer can pick it up. No ransom, no rebuild, no being trapped in someone else's platform.

How we work →

More systems we have built

Your business could be the next case study.

Bring us the system that is holding you back. It starts with a free one-hour call, and within two business days you have a written plan, a monthly number, and a realistic timeline.

One monthly fee · Built, hosted & improving · You own the custom code