ZAM

Track Fleet Costs Without SaaS: Fuel, Tolls, Maintenance

Skip expensive SaaS. Learn how small fleets can track fuel, tolls, and maintenance using simple tools to cut costs and stop data loss.

I've sat across from a lot of transport and logistics operators who have the same problem. They know their biggest variable costs are fuel, tolls, and keeping vehicles roadworthy — but they can't tell me what those costs actually are by vehicle, by route, or by week. They have receipts, maybe a folder in the cab, maybe a shared spreadsheet someone started in 2021 that nobody updates anymore. That's the whole system.

The industry answer is always "get fleet software." And sure, if you're running 80 trucks and want telematics, compliance dashboards, and driver scoring baked in, there's a case for it. But I work with owner-operators who have four vehicles, or twelve, or twenty-two. The economics of a $300-per-month SaaS contract look very different at that scale — especially when the tool still needs six weeks of setup, a training program, and someone to actually manage it before it gives you anything useful.

So here's what I've actually helped people build instead.

Why the receipt-pile problem is a data problem, not a discipline problem

The first thing I tell operators is to stop blaming their drivers. The receipts-in-the-glovebox situation isn't a discipline failure — it's a system design failure. You haven't given people a fast, frictionless way to log what they spend. So they don't. The data lives in their pockets and evaporates at month-end when you're trying to reconcile a card statement that shows "BP — $94.60" with no vehicle attached, no route, no context.

Fleet-software vendors sell you on solving this, and technically they do. But the solution usually involves hardware in the cab, a driver app that people have to be trained on, and an admin portal that someone has to check. That's real overhead for a small operation. I've seen operators pay for fleet software for eighteen months without ever logging in to the reporting side because nobody had time to learn it properly.

The underlying problem is simpler than the vendors make it. You need three things captured at the moment of spend: which vehicle, what category (fuel, tolls, service), and how much. Everything else — reports, averages, alerts — is downstream of that. If you fix the capture problem, the analysis becomes straightforward. You don't need a vendor to do that analysis for you.

What "good capture" actually looks like

Good capture is fast enough that a driver does it at the pump without a second thought. I've built this with a WhatsApp bot that accepts a photo of the receipt and a voice note, parses the amount and category, and writes it to a shared Google Sheet. I've built it with a one-screen Airtable form bookmarked on a driver's phone. I've built it with a simple Google Form with three fields. The specific tool matters less than the number of taps between the spend and the log entry.

The rule I work by: if it takes more than twenty seconds to log a transaction in the field, your drivers won't do it consistently, and you'll be back to the receipt pile within a month. Design for the person in the cab in a hurry, not for the person in the office who wants a tidy interface.

Structuring the data you're collecting

Once you've fixed capture, the structure of what you capture matters. Most operators I talk to track "vehicle costs" as a single bucket. That's not useful. You need at minimum three separate cost categories — fuel, tolls, and maintenance — because they behave differently, they're controllable in different ways, and when something goes wrong, you need to know which bucket is the problem.

Fuel costs move with utilisation and route. Tolls are largely fixed by geography but can often be optimised with route planning or multi-journey accounts. Maintenance is where the real surprises live — it's lumpy, it compounds when deferred, and it's the one cost that can be predicted if you track it properly. A vehicle that's spent $4,000 on repairs in eight months is telling you something about its remaining useful life. Without the data, you find out the hard way.

The fields that actually matter

When I set up a basic fleet cost tracker, I capture: date, vehicle ID, driver (optional but useful), cost category, amount, odometer reading at the time of the transaction, and a free-text note field. That's it. The odometer reading is the one field most people skip, and it's the one that makes everything else more powerful — because it lets you calculate cost-per-kilometre by vehicle over time, which is the number that actually tells you whether a vehicle is becoming more expensive to run.

You don't need a database to do this. A well-structured spreadsheet with consistent data entry does the job for most operations I work with. The key word is consistent. One person entering "fuel" and another entering "Diesel" and a third entering "petrol — BP" means you can't aggregate the category without cleaning the data first. Set a fixed list of categories and enforce it at the entry point. A dropdown in a form costs you nothing and saves hours of cleanup.

Tolls deserve their own row, always

Tolls get lumped into "other expenses" constantly, and it's a mistake. If you have vehicles on regular routes with tolls, those costs are predictable and recoverable — but only if you've tracked them separately and know what they add up to per route. I've worked with operators who were systematically undercharging clients because they hadn't quantified their toll exposure by job type. The data was there in bank statements, but nobody had ever isolated it. A few hours of back-categorisation revealed a material gap in their pricing model.

Building the reporting layer without a BI tool

Here's where people assume they need something complicated. They see a fleet-software demo with beautiful dashboards and think that's what reporting requires. It doesn't. If your data is clean and consistently structured, you can build everything you actually need in a spreadsheet or a free Airtable base — pivot tables, running totals, cost-per-vehicle by month, maintenance spend by quarter.

The reports that matter to most operators I work with are: total cost by vehicle per month, cost breakdown by category per vehicle, and maintenance history per vehicle with dates and odometer. Those three views answer 80% of the operational questions that matter. Which vehicle is costing me the most to run? Is that normal or is something wrong? When did it last get serviced and what was done?

You can produce all three from a single flat log sheet with the fields I described above. No specialist software needed. If you want it to update automatically, you can connect a Google Form or Airtable form to a Google Sheet and set up a handful of formulas once. That's a half-day of work. It runs itself after that.

Automation that's actually worth adding

Once the base is working, there are a few automation points that pay for themselves quickly. The first is a monthly email summary: total spend by vehicle, flagged vehicles where cost has jumped more than a set threshold versus prior month. I build this with a simple script or a no-code tool like Make — it runs on a schedule and lands in the owner's inbox on the first of the month without anyone having to remember to pull it.

The second is a service-due alert. If you're capturing odometer readings at each transaction, you can set a trigger that flags when a vehicle is approaching a service interval. This isn't telematics — it's just a formula watching a number. It catches the deferrals before they become expensive failures. The third is receipt parsing: a WhatsApp or email inbox that accepts a photo of a receipt, extracts the total, and writes it to the log without the driver touching a keyboard. That last one takes a morning to configure if you've done it before, a day if you haven't. It eliminates the most common reason drivers skip logging — it felt like too much effort.

What fleet software is actually for — and when you should consider it

I'm not anti-fleet-software. I'm against paying for a system that your business hasn't grown into yet, or that solves problems you don't have, while leaving the ones you do have untouched because nobody customised it for your operation.

Fleet software earns its place when you need real-time GPS tracking for driver safety or client proof-of-delivery, when you have compliance obligations that require auditable driver logs, or when you're running enough vehicles that manual capture — even frictionless manual capture — creates unacceptable reconciliation lag. If none of those apply to you right now, the software isn't solving your problem. It's adding overhead and a monthly invoice to a problem that a well-designed spreadsheet and a WhatsApp form would have solved for nothing.

The operators I see get the most value from fleet software are the ones who already had a manual system running cleanly. They knew their data, they knew their cost structure, and they were upgrading into the software from a position of understanding — not hoping the software would do the understanding for them. That sequence matters. You can't outsource the thinking to a tool you don't understand.

The ownership argument

This is where my broader point of view comes in. Generic SaaS is a template. It was built for a composite of your industry, not for your specific routes, your specific vehicles, your specific relationship with your clients. You bend your operation to fit the software, and then you pay monthly for the privilege of that compromise. When you build your own system — even a simple one — it reflects how you actually work. It's yours. It costs you a few hours to build and nothing to run. And when your business changes, you change it.

I rebuilt an entire operating system for a business that had been running on 21 separate SaaS tools. The rebuilt version runs on infrastructure the business owns, costs nothing ongoing, and does more than the tool stack it replaced. The fleet cost tracking component was not the hardest part. It was a Google Form, a structured sheet, and a monthly summary email. It took less than a day. The discipline was in deciding what mattered and designing for capture, not for feature count.

The practical starting point

If you're reading this because you currently have no system — just receipts and card statements — here is where to start. This week, not next quarter.

Open a Google Sheet. Create columns for: Date, Vehicle, Driver, Category (use a dropdown: Fuel / Tolls / Maintenance / Other), Amount, Odometer, Notes. That's your log. Create a Google Form with those same fields and bookmark it on every driver's phone. Tell every driver: every time you spend money on the vehicle, fill in the form before you drive away. Keep it simple. Keep the category list short and fixed.

At the end of month one, pivot the data by vehicle and category. You'll see your fleet costs for the first time in a form you can actually reason about. You'll probably also see at least one surprise — a vehicle that's costing significantly more than you thought, or a toll exposure you hadn't quantified. That surprise is the point. It tells you where to look next.

After month two, you'll have enough data to set a baseline. After month three, you'll start to see trends. By month four, you'll be making decisions you couldn't make before — route adjustments, pricing corrections, a disposal decision on a vehicle that's past its useful life — not because you bought a tool, but because you built the habit of capturing the data and looking at it.

The fleet software can wait. The data can't. Start with the form.