This one is for operators who already run a transport management system (TMS), and have collected a stack of tools around it. Ask a Transport Manager what the TMS costs and you will get a number inside ten seconds. Ask what the operation’s software costs, all of it, and the room goes quiet. Because the answer is spread across six systems: the TMS, the telematics, the ePOD app, the walkaround checks app, the route optimiser and the accounts package. Six logins across the working day. Six contracts. Six renewal dates. Six places the same job’s data lives, disagreeing gently with each other.
That gap between the licence line and the real number is what TMS total cost of ownership means. In a sector where the margin for error keeps shrinking, it deserves the same scrutiny as fuel. The RHA’s 2025 Annual Cost Movement Survey found operating costs excluding fuel rose 5.91% in a year while margins sit at around 2%, with employment costs up 6%. When the whole business runs on roughly 2p in the pound, a software stack nobody has totalled is not an IT detail. It is a margin question.
What TMS total cost of ownership actually includes
Four layers, and most operators only ever price the first.
Layer one: the subscriptions. Every tool, every month. This layer is the easy one, and it is still usually uncounted in aggregate, because each contract was signed by a different person in a different year for a sensible reason at the time.
Layer two: the one-offs. Setup fees, integration builds, training days, hardware. These hide in old invoices and get forgotten by renewal time, then get paid again with the next tool.
Layer three: the reconciliation labour. The cost no invoice shows. When the TMS, the tracker, the ePOD app and the accounts package do not share data, people become the integration: re-keying completed jobs into invoicing, chasing PODs from one app to bill in another, copying tracker mileage into a spreadsheet to work out cost per mile, reassembling compliance evidence from three systems before an audit. These are real hours at real office rates, every week, forever.
Layer four: the friction you cannot invoice. Data that disagrees between systems, so nobody fully trusts a report. The customer query that takes three screens to answer. The new planner who needs weeks to learn multiple interfaces instead of one operational platform. This layer resists a precise number, which is exactly why the first three need one.
A worked example: the TMS total cost of ownership of a six-system stack
Illustrative assumptions. The operator below is a worked example, not a benchmark: 40 trucks, 45 driver-device users, 8 office staff. Current tools priced at £950 a month for the TMS, £14 per vehicle per month for telematics, £10 per driver per month for a separate ePOD app, £5 per vehicle per month for a walkaround checks app, and £300 a month for a route optimiser. The accounts package, at £60 a month, is retained unchanged on both sides. Reconciliation labour is estimated at 12 office hours a week at £16 an hour across 46 working weeks, and integration one-offs at two connections from £500 each. All figures exclude VAT; substitute your own numbers, the method is the point.
The fragmented stack — annual run rate: illustrative assumptions, ex VAT
| Cost line | Working | Annual |
|---|---|---|
| Current TMS | 950 x 12 | £11,400 |
| Telematics | 14 x 40 x 12 | £6,720 |
| Separate ePOD app | 10 x 45 x 12 | £5,400 |
| Walkaround checks app | 5 x 40 x 12 | £2,400 |
| Route optimiser | 300 x 12 | £3,600 |
| Accounts package (retained) | 60 x 12 | £720 |
| Software subtotal | £30,240 | |
| Reconciliation labour | 12h x 16 x 46wk | £8,832 |
| Fragmented stack: annual run rate | £39,072 |
Notice what the total says. The three point tools being replaced, the separate ePOD app, checks app and route optimiser, cost £11,400 a year in this example, exactly the same as the current TMS licence. Add £8,832 of reconciliation labour and the cost of fragmentation becomes much clearer. The licence line was never the number.
The same operation, consolidated
Now price the alternative: one platform for planning, driver jobs, ePOD, verified walkaround checks, tracking views and invoicing, with the telematics contract kept and connected rather than replaced. Using HaulierMagic’s published rates, this operator is on the volume plan. 8 office users at £79 is £632 a month; 45 driver devices at £15 is £675 a month. That totals £1,307 a month, or £15,684 a year, for the core platform modules used in this comparison (NavigateMagic, truck-safe navigation, is a separate per-device add-on and is not included here). The tracker stays (£6,720 as before) and the accounts package stays (£720 as before), both connected to the platform. Connecting an existing supported system is a one-off quoted up front, from £500 per connection; for illustration, this example assumes both systems qualify as existing supported integrations and uses the published starting price of £500 per connection, or £1,000 in total. New one-way or two-way integrations are priced higher and quoted individually.
Reconciliation labour does not vanish, so do not let any vendor, including us, pretend it does. Assume, conservatively and illustratively, that only half of it goes away because jobs now flow from plan to POD to invoice in one system: £4,416 remains.
The consolidated stack — annual run rate: illustrative assumptions, ex VAT
| Cost line | Working | Annual |
|---|---|---|
| HaulierMagic subscription | (8x79 + 45x15) x 12 | £15,684 |
| Telematics (kept, connected) | 14 x 40 x 12 | £6,720 |
| Accounts package (retained) | 60 x 12 | £720 |
| Remaining reconciliation labour | half of 8,832 | £4,416 |
| Consolidated stack: annual run rate | £27,540 |
The annual run rates first: £39,072 less £27,540 is an illustrative £11,532 a year. But a run rate is not the whole of TMS total cost of ownership. For illustration, extend the comparison across a three-year period and bring the one-offs in:
Three-year cost comparison — stated assumptions only: add implementation, training and migration where they apply
| Line | Working | 3-year total |
|---|---|---|
| Fragmented stack, 3 years | 39,072 x 3 | £117,216 |
| Consolidated run rate, 3 years | 27,540 x 3 | £82,620 |
| Integration one-offs | 2 supported connections at the 500 starting price | £1,000 |
| Consolidated 3-year cost (stated assumptions) | 82,620 + 1,000 | £83,620 |
| Illustrative 3-year difference | 117,216 - 83,620 | £33,596 |
This is a three-year cost comparison based on the stated assumptions, not a complete TCO: add implementation, training and migration costs where they apply to your move, on both sides, before treating it as one. The one-offs barely move the picture on these assumptions, but on your numbers they may matter more, particularly if a connection has to be built rather than switched on. That is the point of doing both views. The run rate answers “what does each month cost”. The contract-period comparison answers “what does this decision cost”, and an FD will want the second. Your numbers will differ, which is why the method matters more than our example. And none of these figures includes the fourth layer: operational friction.
Running the exercise on your own stack
An afternoon, one spreadsheet, three steps, and at the end of it your own TMS total cost of ownership figure rather than ours.
Pull every contract. One row per tool: monthly cost, renewal date, notice period, owner. Include the tools finance pays for that operations forgot about. Include the ones operations signed that finance never saw. The row count alone is usually a finding.
Time the re-keying for one week. Ask the office to log, honestly, every task that exists only because two systems do not talk. Multiply the hours by the loaded rate, then by 46 weeks. This is the number that turns a software discussion into an FD discussion, and it is the same method we walk through in the real cost of not having a TMS, applied to a stack instead of a spreadsheet.
Price the consolidated alternative honestly. Which tools genuinely collapse into one platform, which stay and connect (the tracker and the accounts package usually stay, and should connect rather than be replaced), what the one-off integration work costs, and a conservative, not heroic, estimate of the labour that disappears. If a vendor’s cost story only works when every re-keying hour vanishes on day one, it is a brochure, not a business case.
The six logins were never the real problem; they were the visible symptom of a cost nobody owned. Total the stack once, properly, and the renewal conversation changes shape: from “what does the TMS cost” to “what does running the operation this way cost”, which is the question the 2% margin was always asking. If consolidation is where your sheet points, here is how HaulierMagic makes the case to a Transport Manager, and the demo below is where we price it on your fleet rather than our example.
TMS total cost of ownership: what operators ask
Which tools should stay when we consolidate?
Usually two: the accounts package, because finance’s processes and history live there, and the vehicle tracker, where hardware is fitted and the contract has term left to run. Both should connect to the platform rather than be replaced, and the connection cost belongs in your comparison as a one-off. Tools that typically collapse into the platform are the separate ePOD app, the standalone walkaround checks app and a bolt-on route optimiser.
Should I calculate TMS TCO over one year or the full contract term?
Both, and keep them separate. The annual run rate shows what each month of the new shape costs and is the number operations recognises; the contract-period TCO adds the one-offs, implementation, integrations, training, and spreads them over the term you are actually signing, which is the number finance signs off. Comparing vendors on year one alone flatters whoever front-loads least, so always put the full-term figure beside it.
What costs should I ask a TMS vendor to disclose before comparing quotes?
Six lines, in writing: the subscription and exactly what it covers; any separately priced add-ons or modules you would actually use; implementation and setup, including data migration; integration costs for your specific accounts package and tracker, distinguishing existing supported connections from new builds; training and any repeat-training terms; and the contract term, notice period and what happens to your data on exit. A quote missing any of these is not comparable yet.
Our six systems each do their one job well. Why change what works?
If the stack genuinely works, meaning nobody re-keys, the data agrees, and the aggregate cost is known and accepted, then keep it; consolidation is a means, not a virtue. The exercise exists because most operations discover the opposite: each tool is fine alone and the seams between them are where the hours and the errors live. Run the sheet first. Change nothing until the sheet says so.