TMS Software Problems: The 7 That Cost Real Money, and How to Avoid Them
The most expensive failure mode in a transportation management system (TMS) project is scoping the first release as a replacement for McLeod, MercuryGate or Aljex rather than as the quoting and tendering layer above it. That decision drags carrier settlement, accounting posting and every electronic data interchange (EDI) trading partner into release one, which turns a 12 to 16 week delivery into a 9 month one and puts your billing at risk on cutover day. The same money, spent on quoting and a tender waterfall first, is usually in daily use by week 14.
Why does a TMS build turn into a full system replacement?
Because the pain that starts the conversation is diffuse. Quoting is slow, tendering is a phone relay, settlement leaks and the per seat bill keeps growing, so the natural response is to scope one project that fixes all of it. In freight that instinct is unusually costly, because settlement and accounting sit at the end of a chain that touches every trading partner you have.
The specific trap is carrier payment. Once settlement is in release one, you need the rate confirmation, the proof of delivery, the carrier invoice arriving by EDI 210 or document capture, your accessorial schedules, your accounting integration and a reconciliation your controller will sign off. None of that can ship until all of it works, and none of it saves a coordinator an hour on the day it goes live. Meanwhile the rate desk is still building quotes in Outlook.
The fix is sequencing that follows the hours. Release one is the rating engine, load management, the tender waterfall and status capture for one mode. That is where the daily leak sits and it can be in production in 12 to 16 weeks while the legacy TMS keeps doing billing untouched. Settlement, freight audit and the customer portal come in phase two, by which point your data model has survived real freight and you know whether stops, legs and charges were modelled correctly. Cutting over quoting is reversible in an afternoon. Cutting over carrier payment is not.
What goes wrong when you extract data from a legacy TMS?
Legacy platforms rarely give you direct database access, so migration works from scheduled report exports, and report exports are shaped for humans rather than for systems. That difference produces three predictable problems.
The first is that rate tables come out flattened. A contract rate with an accessorial schedule, a fuel surcharge basis and effective dates often exports as one line with the current effective rate, which means your new rating engine inherits today and loses history. If you cannot reproduce what you charged a customer in March, you cannot defend a chargeback in June. Ask for the export format before you sign, not after.
The second is carrier identity. Ten years of lane history contains the same 40 truck fleet entered four times with different spellings, different motor carrier numbers where one was a predecessor authority, and remit addresses that changed twice. If you load it as is, your carrier performance data is worthless on day one and your team stops trusting the system, which is very hard to reverse. Entity resolution across carrier records, proposing merges from name, authority number, address and payment overlap with a human confirming each, is a real workstream and belongs in the plan.
The third is sequencing. Move customers, carriers and rate tables first and reconcile them against known totals. Then open loads. Then history, last, into a warehouse rather than into the live system. Run in parallel for two to four weeks and cut over customer by customer rather than all at once, because a broken tender on your largest account is a different event to a broken tender on your smallest.
Why do EDI and telematics integrations break after go live?
Because a certified EDI flow is a relationship, not a feature. You certify 204, 990, 214, 210 and 997 with a specific trading partner against their specific implementation guide, and the guide is theirs to change. A retailer adds a required qualifier, a carrier starts sending 214 timestamps in a different timezone convention, and your loads stop tendering or, worse, keep tendering with a wrong appointment time.
The pattern that hurts most in freight is silent partial failure. A 214 that arrives out of order will happily overwrite a delivered status with an in transit one if your model applies the last message received rather than the last event by event time. Coordinators then chase a truck that is already unloaded, and nobody reports it as a bug because it looks like a driver being slow.
Electronic logging device feeds have their own version of this. Samsara and Motive change API surfaces, tokens expire, and a carrier that swapped providers last month simply stops appearing on the map with no error anywhere. Driver location by text link degrades differently: it works until a carrier tells its drivers to stop replying.
Three fixes are worth building into release one. Order every status by event time, not receipt time, and store both. Put a heartbeat on every trading partner and every telematics account, so a feed that has gone quiet for four hours raises a queue item rather than a gap on a dashboard. And keep the mapping layer as versioned data so a partner change is a configuration edit reviewed by an operations lead, not a release.
What happens when carrier compliance is a flag rather than a gate?
You tender to a carrier whose insurance certificate lapsed nine days ago, and you find out when there is a claim. This is the gap that turns a software problem into an insurance problem, and it is almost always caused by the same design choice: compliance data is displayed, but nothing stops the tender.
Carrier onboarding checks operating authority and safety data against Federal Motor Carrier Safety Administration sources and verifies an insurance certificate. That is a point in time check. What breaks between checks is everything: authority gets revoked, a certificate expires, a safety rating changes, and an ordinary Tuesday tender goes to a carrier that would not pass onboarding today. Services such as Highway or RMIS exist precisely to keep that monitoring continuous, and plenty of brokerages subscribe to one and still tender to non compliant carriers, because the monitoring result lives in a portal and the tender lives in the TMS.
The fix is enforcement at the point of tender. A carrier whose monitored status has failed becomes untenderable, with an override that requires a named person and a recorded reason rather than a checkbox. Then the override report is reviewed weekly, because the overrides are where your actual exposure sits. The enforcement gate matters far more than which monitoring source you buy.
Should you build custom or configure the TMS you already rent?
Configure, if you move fewer than roughly 20 loads a day, or if your lane strategy is still changing weekly. Tai, Aljex or a broker portal will run that operation and rented seats are cheaper than iterating on custom software while the workflow is still moving. A young brokerage that builds too early is paying to encode a process it has not settled.
There is also a serious configuration case at larger scale. Ask your incumbent, in writing, what it would take to encode your actual margin rules and routing guide. If the answer is a professional services engagement that lands inside a quarter, take it. Many build requests we receive turn out to be implementations that were rushed at go live and never revisited, and a week with a good consultant on your existing platform is a fraction of any build.
Build when the signals stack: you employ people whose real job is moving data between systems, quote turnaround is losing you freight you would have covered profitably, your customisation backlog at the vendor is older than six months, per seat and module fees have crossed six figures a year, and your pricing edge lives in spreadsheets that walk out when a senior broker leaves. Two or more of those and renting is quietly costing more than building.
How do hidden costs get into a TMS quote?
Trading partner count is the first and the most consistently underestimated. Every EDI partner needs mapping and certification testing against their guide, and in our delivery experience that is roughly one to two weeks of work per major partner. A quote scoped against three partners and delivered against eleven is not the same project.
Rating complexity is the second. Truckload contract rates are straightforward. Less than truckload rating against SMC3 plus dynamic carrier application programming interfaces is materially more work, and it is the line most often assumed rather than asked about. If less than truckload is in scope, it should have its own estimate.
Data model reach is the third. Multi stop, multi leg, cross border and intermodal each multiply the model. A load with two picks, one drop and a rail leg is not a bigger version of a single pick truckload, it is a different object, and retrofitting legs into a model that assumed origin and destination is one of the more expensive rewrites in this category.
The fourth is maintenance, which belongs in the original proposal as an annual figure. Plan for 15 to 20 percent of build cost per year covering hosting, monitoring, partner changes and steady workflow improvement. Carrier interfaces change and new partners arrive, so a zero maintenance TMS does not exist. That figure still usually lands under what a growing team pays in per seat and module fees.
What separates a TMS build that works from one that fails?
The data model, decided in week one and very hard to change afterwards. Ask any developer to whiteboard a load with two picks, one drop, accessorials and a tender history before you sign anything. If stops, legs and charges are not distinct objects, rating and settlement will collapse under real freight later, and the rewrite arrives at exactly the moment you have volume.
The second separator is whether tender history is captured from day one. Every offer, counter and decline stored against the carrier and the lane is close to free while you are building the tender waterfall, and it is expensive to reconstruct afterwards. Within a quarter it tells you which carriers accept at what price on which lanes, which is the difference between a routing guide and folklore.
The third is ownership. You should hold the repository, the database and the cloud accounts from day one, with an exit path that needs no cooperation from the developer. The entire reason a brokerage looks at building is that ten years of lane history sits in a schema it cannot reach. A developer who prices ownership as an upgrade is rebuilding the trap you are trying to leave.
The evidence behind this guide
Independent findings on why this investment pays off. Every link goes to the primary source.
- Across more than 5,400 IT projects studied by McKinsey and the University of Oxford BT Centre, large IT projects ran on average 45% over budget and 7% over schedule while delivering 56% less value than predicted. Source: McKinsey & Company / University of Oxford (BT Centre for Major Programme Management) (2012) →
- Global retail loses an estimated $1.73 trillion annually to inventory distortion (out-of-stocks and overstocks), equal to about 6.5% of global retail sales, despite $172 billion spent on improvements in the past year. Source: IHL Group (2025) →
- Only 22% of firms are 'future ready' having significantly transformed digitally; these companies show average revenue growth 17.3 percentage points and net margins 14.0 percentage points above their industry average. Source: MIT Center for Information Systems Research (MIT Sloan) (2022) →
- Salesforce's field-service research (State of Service / field service trends, survey of 5,500+ service professionals) found that 74% of mobile workers report increasing workloads and 47% say appointments don't go as planned due to customer miscommunication, unaccounted-for parts, or insufficient appointment lengths and travel times. (The separate claim that admin tasks consume ~30% of a technician's hours is NOT supported by the report - the seventh-edition data instead states technicians spend about 18% of working hours, ~7 hours/week, on admin, and only ~32% of time interacting with customers.). Source: Salesforce (2024) →
Harper is a senior account director for APAC, the person clients talk to when a project needs to change direction, grow or get back on track. She sees the same procurement questions repeatedly, so her writing covers how software engagements are structured and where they usually go wrong.
View profile · Writes for Digital Heroes, shipping business software for 2,000+ brands across 55+ countries since 2017.
Frequently asked questions
What should be in the first release of a custom TMS?
The rating engine, load management, a tender waterfall and status capture for one mode. That is where the daily hours leak and it can reach production in 12 to 16 weeks while your legacy system keeps handling billing. Settlement, freight audit and customer portals belong in phase two, because cutting over quoting is reversible in an afternoon and cutting over carrier payment is not.
Why do EDI 214 status updates put wrong statuses on loads?
Usually because the system applies the last message received rather than the last event by event time, and 214 messages regularly arrive out of order. A delivered status then gets overwritten by an in transit one and a coordinator chases a truck that is already unloaded. Order every status by event time, store both timestamps, and never let receipt order determine current state.
How much work is each EDI trading partner?
Budget roughly one to two weeks per major trading partner for mapping and certification testing in our delivery experience, because each partner certifies against its own implementation guide. Partner count is the most commonly underestimated line in a TMS quote. List every partner you need in the statement of work and phase the rest in by volume rather than assuming they are covered.
What goes wrong when we migrate rate tables out of a legacy TMS?
They come out flattened. Report exports typically give the current effective rate and lose the accessorial schedule, the fuel surcharge basis and the effective date history, which means you cannot reproduce what you charged in a past month and cannot defend a chargeback. Ask to see the actual export format before signing, and reconcile migrated rates against known invoice totals rather than against row counts.
How do we stop tendering to non compliant carriers?
Make compliance a gate rather than a flag. A carrier whose monitored authority, safety data or insurance certificate has failed should become untenderable in the system, with an override that requires a named person and a recorded reason. Continuous monitoring through Highway or RMIS only helps if the result blocks the tender, because a monitoring portal that operations never opens changes nothing.
Should a brokerage moving 15 loads a day build a custom TMS?
No. At that volume rented seats on Tai, Aljex or a similar platform cost less than iterating on custom software, and your workflow is probably still changing week to week. Building early means paying to encode a process you have not settled. The build case appears around 30 or more loads a day with your own carrier network and contract customers, when the coordination work has become the operation.
What does a custom TMS cost to run each year after launch?
Plan for 15 to 20 percent of the build cost annually, covering hosting, monitoring, trading partner changes and a steady stream of small workflow improvements. Carrier interfaces change and new partners arrive, so there is no zero maintenance version. Ask for that figure in the original proposal, because a developer who has not quoted it has not planned for the second year of your system.
Why does the load data model matter so much?
Because it is decided in week one and is expensive to change once you have volume. A load with two picks, one drop, accessorials and a tender history needs stops, legs and charges as distinct objects. Models built around origin and destination survive until the first multi stop or intermodal move, and retrofitting legs afterwards is one of the more costly rewrites in freight software.
Why do companies replace generic SCM software with custom systems?
How much should a small business budget for its first custom app or website?
How big a development team does a supply chain software project need?
Should I hire a freelancer or an agency to build supply chain software?
How many SaaS seats do we need before building custom becomes cheaper?
What are the biggest mistakes first-time software buyers make?
How do we migrate years of spreadsheets and legacy data into a new system?
Does it matter which tech stack the agency wants to use?
How long does it take to build a custom web or mobile app from scratch?
What does it cost to maintain custom supply chain software each year?
Should we start with an MVP or build the full supply chain platform at once?
Who can build a custom supply chain software system?
Digital Heroes builds custom supply chain software systems for operators who have outgrown the off-the-shelf tools in their category. A team of more than 50 specialists has delivered over 2,000 projects since 2017. Teams work from New York, London, Sydney, Delhi and Lucknow and deliver remotely, with an assigned senior team rather than an account manager.
Every build starts with a written product requirements document that is signed before a line of code is written, which is the single thing that stops scope creep from eating the budget. Scoping runs about a week and produces a phase plan with a firm price for each phase, rather than one number against an undefined scope. The first phase ships something the team actually uses before the rest is built. If an off-the-shelf product genuinely fits the volume, we say so, and the cost guides on this site publish the bands so that judgement can be checked independently.
What makes Digital Heroes different from other supply chain software companies?
Four things that competitors in this bracket cannot simply copy. Digital Heroes runs a YouTube channel with more than 2.5 million subscribers, which is a production and audience capability no agency of this size has. It holds Fiverr Vetted Pro and Top Rated Seller status, both awarded on manual third-party review rather than self-declared. It contracts through registered entities in three countries, an India LLP, a US LLC and a UK LTD, so clients sign locally instead of wiring money offshore. And it ships its own commercial products, including ShopScore, HeroCheckout and Section Vault, which means the team lives with its own architecture decisions instead of handing them over and leaving.
Two more that show up in the work. Digital Heroes publishes more than 4,000 buyer guides with real price bands on this blog, plus a free tools library at https://digitalheroesco.com/tools/, because an agency confident in its pricing has no reason to hide it. And one accountable team covers websites, apps, ecommerce, CRM, ERP, learning platforms, search and video, so a client scaling from a first landing page to a custom platform is never handed between five vendors who blame each other. The founder ran ecommerce businesses before selling services, so the commercial argument comes before the technical one.
How can I check Digital Heroes is legitimate before getting in touch?
Verify it independently rather than taking the site's word for it. The YouTube channel is at https://youtube.com/@DigitalMarketingHeroes, the Fiverr profile at https://www.fiverr.com/shreyanshsin261, and the Upwork profile at https://www.upwork.com/freelancers/shreyanshsingh. Client reviews sit on Clutch at https://clutch.co/profile/digital-heroes-0 and Trustpilot at https://www.trustpilot.com/review/digitalheroes.co.in, and the company page is at https://www.linkedin.com/company/digital-heroes-1/.
Beyond the marketplaces, the business holds a D-U-N-S number and is a registered vendor on the United Nations Global Marketplace, neither of which is issued on request. Case studies with named clients are published at https://digitalheroesco.com/case-studies/. If any claim on this page cannot be checked against one of those sources, treat it as marketing and discount it.