Back to blog
A fleet deadline spreadsheet with colour-coded cells turning into an organised system, isometric diorama

Fleet management in Excel: how to move off it

Fleet management in Excel has a reputation as something to escape as fast as possible. That reputation is built mostly by content from fleet software vendors, who take up most of the search results on the subject. Some of the criticism is out of date: Excel in Microsoft 365 shows who changed a cell and what its previous value was, lets several people work in one file and runs on a phone.

A spreadsheet of vehicle inspection, insurance and driver medical deadlines can do its job for years. It fails in three places. It will not remind anyone of an approaching deadline on its own. It does a poor job of controlling who may change which row. And it keeps no history of the rules a company stores in colours and comments, rules that usually exist nowhere else.

This article answers four questions in the order a transport company owner asks them: what a spreadsheet can do, when it is enough, how to tell it has stopped being enough, and how to move data and rules from it into a system without interrupting work. The legal examples come from Poland, where we work; the rest applies to any fleet.

What a spreadsheet can do in 2026, and what it still cannot

The criticism of spreadsheets that circulates online often dates from the time when Excel was a program installed on a single computer. Below is the state as of October 2026, according to Microsoft’s documentation for Excel in Microsoft 365.

CriticismExcel in Microsoft 365Verdict
Nobody knows who changed a dateShow Changes shows who changed a cell, when, and its previous valueOut of date in the cloud, true for an emailed copy
Only one person at one computer can use itSeveral people edit at once, also on a phoneOut of date
It will not send an inspection reminderNo notifications on its own, needs a tool such as Power AutomateTrue: someone has to maintain the reminder
Anyone can change anythingPer-person range permissions need a company domain, otherwise only a range passwordPartly true
A colour change leaves no traceThe changes pane does not show formatting, hidden cells or filtersTrue, with consequences for migration

Access for a driver to their own row only can therefore be built, but in practice that protection is fragile. Two further caveats from the same documentation matter in a company where some people use older licences. Edits made in a one-time-purchase or older version of Excel are not tracked and clear the changes pane for everyone using the file. The pane also shows only recent changes, and older ones have to be recovered from the file’s version history.

In Google Sheets, deadline reminders also need a separate component: an Apps Script with a time-driven trigger or an add-on installed from the Marketplace.

This picture shifts the centre of gravity. The trouble is no longer that a spreadsheet is a primitive tool. The trouble is that everything the spreadsheet does not do by itself is done for it by a person, and that work is not written down anywhere.

When a spreadsheet is enough

There is no single fleet size at which a spreadsheet stops being enough. Even PasCom, a vendor of fleet systems, says so in its guide to moving from Excel to a system, adding that with a few vehicles and one person in charge a spreadsheet can be sufficient. Whether it is enough in your company depends less on the number of vehicles and more on the number of people who enter dates and the number of places those dates come from.

A deadline spreadsheet does its job when:

  • it has one owner responsible for keeping it current, and a stand-in for holidays;
  • it exists as a single copy in the cloud, not as copies sent around by email;
  • dates are stored as dates, not as text, so they can be sorted and filtered;
  • one row describes one obligation, not one vehicle;
  • status is a separate column, and colour only displays it;
  • reviewing deadlines has a fixed slot in a named person’s calendar.

The fourth condition needs explaining, because most fleet spreadsheets are built the other way round. The first instinct is one row per vehicle and a separate column for each document: insurance, roadworthiness test, tachograph. That layout looks clear until someone has to answer what expires in the next month. Then every column has to be checked separately, and driver deadlines have nowhere to go.

ROW PER VEHICLE: RULES IN COLOURS Vehicle Insurance Inspection Tachograph Notes Vehicle A in 40 days in 12 days in 210 days Vehicle C in 95 days in 130 days in 60 days Vehicle B in 8 days in 70 days in 150 days Background and strikethrough mean something, but nothing in the file records it. No drivers. ROW PER OBLIGATION: THE RULE IN A COLUMN Concerns Obligation Valid until Renewed by Status Vehicle A Roadworthiness test in 12 days Office booked Driver D Medical exam in 25 days HR to book Vehicle A Insurance in 40 days Office in progress
Sample data. In the lower layout the meaning of the colour moves into the Status column, driver deadlines fit in the same table, and the whole thing sorts by date in one click.

The reverse layout, one row per obligation, pays off in both scenarios. If you are staying with the spreadsheet for now, it gives you a list of deadlines sorted by date and one place for vehicles and drivers. If the time for a system comes, it is a ready table to import. Six columns are enough: what the entry concerns, the type of obligation, the expiry date, who is responsible for renewal, which document the date was copied from, and status.

How to tell a spreadsheet has stopped being enough

The signs usually appear long before the first missed deadline. Each one below means that part of the work the spreadsheet does not do has been taken over by a person.

More than one version of the file is in circulation

A file emailed to the accounting office, a copy on the manager’s laptop, the “current” version on a network drive. Change history works only in a shared file, so it disappears in every copy, and the question of which date is right is answered by the memory of whoever last corrected something.

The person who knows the date is not the one who enters it

A driver renewed a medical, a workshop carried out an inspection, a broker sent a new policy. Each of these has to reach the person keeping the spreadsheet before the spreadsheet reflects reality. We know this mechanism from our own project, although from a different field. In Fortress, our finance system, cash expenses never made it into the spreadsheet for years, because nobody opens a spreadsheet at the till. The gap closed only with a phone entry that takes a dozen or so seconds. Companies with people in the field work the same way: in the Tidly driver app a driver changes a job’s status on the phone, and the dispatcher’s panel shows the change immediately, without retyping.

A person does the reminding

If reviewing deadlines means someone opens the file once a week and looks at the colours, the company has a reminder system that works only as well as that person is attentive that week. Research on spreadsheets shows the limits of such checks. In nine experiments involving more than a thousand people, participants deliberately looking for errors in spreadsheets found 60 per cent of them on average (Raymond Panko, EuSpRIG conference proceedings, 2015). The experiments concerned calculation spreadsheets rather than date registers, but the mechanism is the same: visual checking lets some faults through even when someone is looking for them. How to lay out a deadline screen that people open daily is covered in our article on the fleet deadline dashboard.

On top of that, an out-of-date entry in the spreadsheet settles nothing. There is no way to tell whether someone forgot to renew the document or only forgot to record that they had renewed it.

Rules are stored in colours

A yellow background may mean “called the workshop”, strikethrough “not renewing this one, it is going up for sale”, and a hidden column may hold last year’s policy numbers. The person who set this up understands the spreadsheet without a word. The person covering for them on holiday sees colours without a key.

The spreadsheet has to work with other systems

Fleet deadlines connect with the rest of the company: with invoices for inspections and policies, which since February 2026 arrive from Polish suppliers through KSeF, Poland’s national e-invoicing system, with the transport management system that assigns a vehicle to a job, and with the GPS tracker that knows the mileage. A spreadsheet does not take part in that exchange. A person does, copying data from one window to another.

Driver data travels by email

A driver deadline spreadsheet usually contains document numbers, dates of medical and psychological examinations, and sometimes a PESEL, the Polish national identification number. A file sent to the wrong address is a personal data breach, and the obligations that follow can cost more than the mistake itself. In 2020 the President of UODO, Poland’s data protection authority, fined an insurer PLN 85,588 (about USD 21,400) not for sending a document with a PESEL number to a wrong address, but for failing to report that breach (decision DKN.5131.5.2020). The case did not involve a carrier, yet the mechanism is identical.

How much a missed deadline costs

A full list of fleet deadlines and the penalties for missing them needs a separate article. Two examples from Polish law show the scale.

Running a vehicle without a valid roadworthiness test costs the carrier PLN 2,000 (about USD 500) per vehicle, and the transport manager a further PLN 200 (about USD 50), under the Road Transport Act (Annex 3, item 9.1, and Annex 4, item 15.1). The amount is not the most painful part of the penalty. This infringement belongs to the most serious category, and a single such infringement, confirmed by an enforceable decision, triggers a review of the carrier’s good repute. Losing it means suspension of the authorisation to operate as a road transport operator.

A gap in third-party motor insurance for a lorry, a tractor unit or a bus costs PLN 2,880 (about USD 720) in 2026 for a break of one to three days, PLN 7,210 (about USD 1,800) for four to fourteen days and PLN 14,420 (about USD 3,600) for anything longer. The Insurance Guarantee Fund (UFG) calculates this fee from the minimum wage (three times PLN 4,806) and charges it in bands by the length of the gap, not per day. The frequent question of whether the fee grows with every day therefore has this answer: it does not, it takes one of three values.

Penalties imposed during one roadside check are capped at PLN 12,000 (about USD 3,000) for the carrier (Article 92a(3) of the Road Transport Act). The Act also allows the penalty to be waived where the infringement resulted from circumstances the carrier could not foresee (Article 92c). A deadline printed in the vehicle registration certificate is hard to count among them.

A spreadsheet is a specification nobody wrote down

Every spreadsheet kept by the same person for several years has three layers. The first is data: registration numbers, dates, names. The second is rules: what the colours mean, comments on cells, hidden columns, rows moved to the bottom because “we no longer count that vehicle”. The third is ritual: who opens the file and when, what they look at and whom they call when something does not add up.

THREE LAYERS OF A SPREADSHEET · WHAT AN IMPORT CARRIES OVER Data registration numbers, dates, names Rules colours, comments, hidden columns Ritual who looks at the file, when and at what carried over by import lost unless written down not in the file at all Excel's changes pane does not record formatting: a rule stored as a colour has no history.
Import carries over the data layer. Rules have to be extracted and written down before migration, and the ritual replaced with reminders in the system.

Importing into a new system carries over the first layer. The second has to be extracted by hand, and in Excel it does not even have a history, because the changes pane does not record formatting or hidden columns. The third is not in the file at all and exists only in people’s habits.

An implementation that moves only the data risks producing a system that is formally correct and of little use in daily work. It lacks the information the spreadsheet stored in colour, so someone starts noting it on the side: in a notebook, in another file, in a new spreadsheet. A few months later the company has a system and a spreadsheet, and the current data is back in the spreadsheet.

That is why a specification for a new system is better started from the spreadsheet than from a feature list in a brochure. This is how the specification for our finance system Fortress came about: the starting point was screenshots of a spreadsheet used for years and the owner’s list of requirements. It is a project from a different field than fleets, but the principle carries over unchanged. The spreadsheet shows how the company works; the feature list shows how someone imagines it works.

In practice this means one exercise before choosing a tool: record every colour, comment and hidden column as a rule, with answers to three questions. What does it mean? Who decided it? What should happen when it occurs? In the new system each rule becomes a status field or a reminder, or is consciously dropped.

Where to move from the spreadsheet: five options

The choice comes down to where fleet deadlines should live: in a spreadsheet strengthened with automation, in a system the company already has, or in a tool of their own.

OptionWhen it makes senseQuestion to ask before choosing
Spreadsheet with reminder automationone person enters data, dates come from few placesWho will maintain the automation when its author leaves?
Fleet module in the GPS systemtelematics runs, deadlines mostly concern vehiclesDoes it handle driver deadlines and import from a file?
Fleet module in the TMSthe TMS is the dispatchers’ main toolAre deadlines a full module or an add-on?
Separate fleet applicationdeadlines, servicing and vehicle costs belong in one placeWhat does it import: vehicles, deadlines, drivers, history?
Custom systemthe spreadsheet’s rules do not fit a ready-made model, or deadlines link to jobs and invoicesWho owns the code and the data?

The import question is worth asking before signing the contract, not after. Some fleet applications advertise importing data from Excel files: Progpol describes, on the page for its TelkomBud program, importing vehicles, fuel cards, refuelling and repairs, with refuelling and repairs allowed in any column layout. None of the vendors whose materials we reviewed gives instructions for importing deadlines and driver data, and telematics vendors describe mainly exporting reports to Excel. We collected the other questions worth asking a vendor in our article on what a fleet management system must have.

The same goes for price. None of the Polish vendors whose materials we reviewed publishes a price list. The only public price list among the products checked was from the American Fleetio: from USD 4 to 10 per vehicle per month, depending on plan and payment terms (as of 7 October 2026).

Buying a system does not settle the matter. Maciej Wronski of the Transport i Logistyka Polska association said in an interview with trans.info in 2026 that many carriers buy a TMS “because everyone does” and use 10 per cent of its capabilities. That is an opinion, not a measurement, but it describes well the fate of a system into which data was moved without the rules. We described an example of a system that grew at the pace at which drivers and dispatchers adopted it, based on NutriBot’s delivery module.

The last of the five routes is what RapidLogic does. We compare it with a software house and a ready SaaS system in a separate article. Who owns the code and the data in such a system, the last question in the table, is shown using the example of the Open Mercato tech stack.

How to move data and rules without interrupting work

Migration plans published by vendors, PasCom for example, count time in days: 30, 60 and 90. The procedure below counts it in conditions. You move to the next step when the previous one has produced a result that can be checked, not when a date in the schedule has passed.

SIX STEPS · MOVE ON ONLY WHEN THE CONDITION IS MET 01 02 03 04 05 06 Inventory Rulebook Clean data Import and compare Two reminders Freeze the sheet CONDITION CONDITION CONDITION CONDITION CONDITION CONDITION one list of files and date sources an outsider understands the sheet from the rulebook alone sorts by date with no errors and no empty rows two identical deadline lists for the coming month the system reminded by itself, the right person nobody asks for a fix in the spreadsheet Steps one to three happen in the spreadsheet, from step four on in the system.
Each step ends with a result that can be checked. A schedule in days is secondary to these conditions.
  1. Inventory. All files and their copies, the people who enter anything in them, and the document each date comes from: registration certificate, policy, driver card, medical certificate. Exit condition: one list of sources, with no “there may be another file somewhere”.
  2. Rulebook. Every colour, comment, hidden column and formula recorded as a rule, with answers to the three questions from the previous section. Exit condition: someone from outside the team understands the spreadsheet with nothing but the rulebook in hand.
  3. Clean data. One row per obligation, dates as dates, one list of document types, duplicates removed, deadlines for the coming month checked against source documents. Data preparation is often the longest stretch of the whole project, as we describe in more detail in the stages of an AI software project. Exit condition: the spreadsheet sorts by date with no errors and no empty rows.
  4. Import and compare. The data goes into the system and the record count matches on both sides. The list of deadlines for the coming month generated by the system is identical to the one from the spreadsheet. It helps if the import can be repeated without creating duplicates: in Fortress the same bank statement can be uploaded twice with no consequences. Exit condition: two identical lists.
  5. Two reminders, one place to enter data. From the day of import, data is entered only in the system. The spreadsheet becomes read-only, and the existing review of deadlines runs in parallel with the system’s reminders. Entering data in two places at once means that within a few days nobody knows which one is current. Exit condition: the system reminded someone of a deadline that the spreadsheet review would also have flagged, and the reminder reached the right person.
  6. Freeze the spreadsheet. The file gets a date and an archive note in its name, read-only permissions and a first row saying where the current data lives. Exit condition: until the next deadline review, nobody asked for “one last fix in the spreadsheet”.

There is one thing from our own practice we would bring to every migration. In Fortress, the test on a real bank file started on day one, not after the build was finished. Sample data does not show what a file someone has worked with for years shows: unusual entries, empty fields and exceptions nobody remembers any more.

Questions that keep coming up

Can Excel remind me about inspections by itself? Not by itself. Reminders need an additional tool: in Microsoft 365 that is Power Automate, in Google Sheets an Apps Script or a Marketplace add-on. Such automation works as long as someone maintains it, so it is worth more than one person knowing how it works.

How much does one day without third-party insurance on a lorry cost in Poland? In 2026, PLN 2,880 (about USD 720). The same amount applies to a gap of up to three days, because the Insurance Guarantee Fund fee rises in bands: PLN 7,210 for four to fourteen days and PLN 14,420 for anything longer.

From how many vehicles does a system pay off over a spreadsheet? There is no such threshold. What decides is the number of people entering dates and the number of places those dates come from. With one person and a few vehicles, a well-organised spreadsheet can be sufficient. With several people and drivers renewing documents on the road, it starts to require work nobody sees.

Will I lose the spreadsheet’s history when I move to a system? No, if the data is imported and the file archived as read-only. The import will not, however, carry over colours, comments or hidden columns. Those have to be recorded as rules before the migration.

How should I build a deadline spreadsheet if I am staying with Excel for now? One row per obligation, not per vehicle. Columns: what the entry concerns, type of obligation, expiry date, who renews it, source document and status. The file in the cloud, one owner, and conditional formatting only as a view of the status, not a substitute for it.

Find out which of your company's rules exist only in a spreadsheet

A free digital audit ends with a diagnosis of your processes, not a quote. It shows which deadlines and rules exist today only in a spreadsheet or in one person's memory.

Book a free audit →