This fleet maintenance cost spreadsheet is a free Excel template for recording completed service work, calculating maintenance costs, and reviewing preventive maintenance status in 2026. It organizes expenses in U.S. dollars, odometer readings in miles, and fluid quantities in gallons.
Four connected sheets cover reporting, service records, vehicles, and assumptions. Enter operating information in yellow input cells; blue calculated cells contain formulas and should generally remain unchanged. Red or amber formatting identifies records that may require review. The included sample rows show how information flows through the file and should be replaced or cleared before using the prepared blank rows.
In practice
What this workbook helps you do
- ✓Separates parts, labor, outside service, other costs, taxable amounts, and sales tax for each work order.
- ✓Summarizes maintenance spending by reporting period, service category, month, and vehicle.
- ✓Calculates mileage-based and date-based preventive maintenance targets from logged PM work.
- ✓Tracks invoices, payment status, assigned drivers or departments, and data-quality messages.
Instructions
How to use the file
Set the reporting period and cost assumptions
Start on Settings. Enter the Reporting Start Date and Reporting End Date, default labor rate, sales tax rate, due-soon thresholds in miles and days, and the high-cost threshold used by the Dashboard. Review the vehicle-type PM defaults and the lists for service categories, payment statuses, vehicle statuses, and vehicle types. The Settings Check reports invalid assumptions, reversed dates, or a reporting span whose monthly trend exceeds the first 12 months displayed.
Replace the sample vehicle records
On Vehicles, rows 9 through 16 contain populated examples. Rows 17 through 108 are blank operating rows with formulas prepared in the calculated columns. Enter a unique Unit ID, status, year, make, model, vehicle type, VIN, license plate, tracking-start odometer, current odometer, and assignment. Optional PM mile or month overrides replace the defaults for that unit. Current odometer readings are user inputs and are not derived from maintenance records.
Record each completed service event
Maintenance Log rows 9 through 18 contain sample work orders, while rows 19 through 108 provide blank operating space with formulas already present. Enter one row per completed event using Work Order, Service Date, Unit ID, Vendor or Shop, Odometer, Category, Service Description, Parts Cost, Labor Hours, optional Labor Rate Override, Outside Service Cost, Other Cost, Fluids Used, Taxable Amount, Invoice or Receipt, Payment Status, and Notes.
The applied labor rate, labor cost, sales tax, Total Cost, previous service odometer, miles since prior service, cost per service mile, and Data Check are calculated. Do not overwrite those formula columns. The data check can identify issues such as a missing service date, unknown unit, missing odometer, duplicate work order, or negative total.
Review calculated fleet results
Use the Dashboard after updating the source sheets. It reports maintenance cost, event count, average cost, cost per logged service mile, high-cost events, unpaid cost, and active vehicles that are overdue or due soon. Category, monthly, and vehicle summaries are calculated from the selected reporting dates.
Inside the file
Included features
Read the fleet maintenance cost dashboard
The Dashboard gives managers and dispatchers a reporting-period view without requiring manual subtotals. Reporting Maintenance Cost adds Total Cost from service dates inside the selected period. Maintenance Events counts dated log entries, while Average Cost per Event divides period cost by that count.
Additional indicators show events meeting the configured high-cost threshold and maintenance amounts attached to a nonblank Payment Status other than Paid. Two charts display total maintenance cost by service category and total cost by month. The monthly section covers the first 12 months beginning with the reporting start month.
Enter work orders and calculate service costs
Each Maintenance Log row connects a work order to a vehicle, date, odometer reading, category, and vendor. If Labor Rate Override is blank, Applied Labor Rate uses the Settings default. Labor Cost multiplies hours by that rate, and Sales Tax multiplies the entered Taxable Amount by the configured rate.
Total Cost adds parts, labor, outside service, other cost, and sales tax. Fluids Used records gallons but does not add a separate fluid charge automatically. Any fluid expense must be represented in an applicable cost field if it should be included in the total.
Monitor preventive maintenance by vehicle
Vehicles applies the default PM miles and months for the selected vehicle type unless unit-level overrides are entered. Last PM Date and Last PM Odometer come from Maintenance Log rows categorized as Preventive Maintenance. Next PM Date, Next PM Odometer, Miles Remaining, and Days Remaining are then calculated.
For active units, PM Status can display Current, Due Soon, Overdue, or No PM History. Non-active units display Not Active. Due Soon uses either the mileage or day threshold from Settings, and Overdue applies when either remaining value reaches zero or less.
Compare vehicle spending and service mileage
Reporting Period Cost on Vehicles sums maintenance totals for each Unit ID within the chosen dates. The vehicle summary on Dashboard brings together unit identification, vehicle status, current odometer, period cost, PM targets, and PM status.
Cost per Logged Service Mile divides maintenance cost by Miles Since Prior Service from qualifying log entries. It is a maintenance-event measure based on recorded service intervals, not a complete operating cost per fleet mile. Missing or unusable mileage intervals can produce a blank vehicle result or a zero dashboard result through error handling.
Common questions
About this workbook
Vehicles and Maintenance Log each have formulas prepared from row 9 through row 108, providing 100 source rows per sheet. Vehicles has sample entries in rows 9 through 16 and blank operating rows 17 through 108. Maintenance Log has sample events in rows 9 through 18 and blank operating rows 19 through 108.
Total Cost includes Parts Cost, calculated Labor Cost, Outside Service Cost, Other Cost, and calculated Sales Tax. Tax is based only on the Taxable Amount entered for that record. Fluids Used is a quantity field in gallons and is not directly added to cost.
For the same Unit ID, the formula looks for the highest odometer reading from service records dated before the current event. It also references the vehicle's Tracking Start Odometer. Miles Since Prior Service subtracts that prior value from the current event odometer.
The Dashboard sums maintenance totals within the reporting dates when payment status is populated and is not Paid. With the supplied status list, Pending and Disputed records are included. A blank payment status is excluded from this figure.
The status appears when an active vehicle does not have the required prior service information from a Maintenance Log record categorized exactly as Preventive Maintenance. Other repair categories do not establish the last PM date or odometer for the scheduling formulas.
No. It is a spreadsheet for maintenance recordkeeping, cost analysis, and PM status calculations from entered data. It does not replace accounting, legal, tax, DOT or FMCSA, safety, or compliance advice. Taxable amounts, rates, service decisions, and official records should be reviewed under the requirements that apply to the operation.
Editorial team
Prepared and checked with care

Casey Morgan
Fleet operations editorCasey turns dispatch, driver, vehicle, and delivery workflows into clear workbook guides.
About the editorial identities
Jordan Lee
Workbook quality editorJordan documents the automated formula, recalculation, download, and usability checks applied before publication.
About the editorial identities