AI agents for SMEs - now running in production. See how the pilot works →

Your fleet reports one number a month. It should report sixteen.

In short

Per-vehicle fleet profitability requires costs recorded against the individual vehicle as they occur, not allocated from a monthly total. In Saudi operations that means at least sixteen categories: vehicle acquisition, registration (Istimara), insurance, driver visa, MOL fees, documentation, TGA fees, GOSI, driver salary, driver commission, maintenance, fuel, tyres, repairs, cleaning and general operational expenses. A fleet reporting one net figure per month cannot show which vehicle earned it or why.

Ask a fleet owner what a particular vehicle earned last month and you usually get a single number. Ask how it was arrived at and the conversation ends.

This is not usually dishonesty. It is that the arrangement was never built to answer the question. Revenue arrives as a lump sum, costs are paid as they come up, and somebody nets them off at month end. The result is arithmetic on aggregates, and aggregates cannot be interrogated.

Why one number is not an answer

A single monthly figure fails three tests that matter.

It cannot be checked. If the owner cannot see the entries behind the number, the only thing supporting it is the relationship. That works until it does not, and by then a year of figures is in dispute.

It hides variance between vehicles. Two vehicles of the same class running similar routes routinely differ substantially in net contribution – one has a driver on higher commission, the other spent eleven days off the road. Netted into a fleet total, both disappear.

It cannot support a decision. Whether to renew a vehicle, move it to a different service class or sell it requires knowing what that unit costs to run. A fleet-level average tells you nothing about the unit.

The sixteen lines

These are the cost categories we track per vehicle in a Saudi fleet operation. The list is specific to the Kingdom – a UK or UAE fleet would drop several and add others – but the principle transfers: every cost that can be attributed to a vehicle should be recorded against that vehicle when it occurs.

Acquisition and compliance. Vehicle acquisition or lease. Registration and Istimara renewal. Insurance. Transport General Authority fees. These are predictable and usually the only ones tracked properly.

Driver-related. Driver visa. Ministry of Labour fees. Passport and documentation. GOSI contributions. Driver salary. Driver commission. Six lines, and in most arrangements they collapse into one called “driver cost” – which is why nobody can tell whether a vehicle is unprofitable or its driver is on the wrong commission structure.

Running. Fuel. Maintenance. Tyres. Repairs. Cleaning. General operational expenses.

Sixteen lines is not bureaucracy for its own sake. It is the resolution at which the question “is this vehicle earning?” becomes answerable rather than estimable.

The part that is a database problem

Recording sixteen categories is straightforward. Making the resulting figure trustworthy is not, and it is where most implementations stop short.

The test: can anyone type a number into the report? If a monthly result can be entered, adjusted or corrected in place, then the report is an assertion rather than a calculation, and the owner is back to trusting rather than checking.

We built Kingdom Drive so a figure can only ever be the sum of the entries behind it. Each entry carries who recorded it and when. Records are append-only and hash-chained, so a correction is a new forward entry rather than a silent rewrite of history. There is no screen anywhere that writes a result directly.

That is the same discipline as a double-entry general ledger, applied to vehicle economics rather than accounts – and for the same reason. A ledger is not more accurate than a spreadsheet because it is more careful. It is more accurate because it structurally cannot be edited without leaving a trace.

Separation, which is not a permissions checkbox

A managed fleet has several parties looking at one operation who must not see each other. A vehicle owner sees their own units. A driver sees their own payroll. A corporate account sees their own trips. Operations sees everything.

Implemented as a settings screen, this is one missed condition away from a partner seeing another partner’s revenue. Enforced at the data layer – where a query for records the requester is not entitled to returns nothing rather than being filtered afterwards – it is a property of the system rather than a promise about it.

The difference only becomes visible on the day it fails, which is the wrong time to discover which one you have.

What to ask before you build anything

  • Can you see the entries behind a number? Not a filtered report – the individual records, each with an author and a timestamp.
  • Can a result be typed in? If yes, every figure downstream is an assertion.
  • Is driver cost one line or six? One line means you cannot separate an unprofitable vehicle from an expensive driver arrangement.
  • What happens when a figure is wrong? Corrected forward with a record, or edited in place with none.

When not to build this

Below roughly five vehicles, a well-structured spreadsheet with one row per cost event does most of this, and the discipline matters more than the software. The signals that it is time are the ones in the spreadsheets piece: someone reconciles for a living, an external party needs scoped visibility, or two people can hold different versions of the truth simultaneously.

A fleet with outside partners hits the third one immediately, because a partner who cannot verify what they are told has no reason to believe it. That is usually the moment the arrangement needs records rather than reporting.

Free, no email required

Score whether your operation is ready

Open the tool

Related reading

Leave a comment

Your email address will not be published. Required fields are marked *

Book a consultation