# A fleet vehicle maintenance log in SharePoint

> For the full documentation index, see https://250highstreet.com/llms.txt

> Replace paper mileage and service sheets with two SharePoint lists, a Due soon view and one daily reminder email for a small fleet.

Track a small fleet with two SharePoint lists: one row per vehicle with next service date and miles, and one row per trip, fuel stop or service with the odometer reading. A Due soon view and a daily email tell you which vehicle needs service before it breaks.

This page covers the lists, one view and a date reminder. It does not say what you must service, how often, or to what standard. Take those numbers from the maker's manual, your own policy and any rules that apply to your vehicles. Exact names may differ on your screen. Microsoft's help pages are linked at the end.

## Why mileage and service slip on paper

A small fleet might be three vans, a truck and a pool car. Each one has a sheet or a notebook. It works until it does not.

Causes:

- The sheet is in the vehicle. The person who plans service is in the office.
- Handwriting is hard to read, and a digit read wrong gives a wrong mileage.
- Nobody adds up the sheets. The next service point passes with no one noticing.
- Service receipts end up in a drawer, in a pocket or in a driver's email.
- When a driver leaves, the notes leave too.

A list fixes all five. A reminder adds one more thing: the due date cannot pass quietly.

## Signs this is happening in your team

- You find out a van is overdue when it makes a noise.
- Two people give two different mileages for the same vehicle.
- You cannot say who drove a vehicle on a given day without calling around.
- The last service date is "sometime in the spring."
- The only person who knows the schedule is on leave.

## Plan the data before you build

Keep the log about the vehicle. Write down the plate or an ID you made up, the mileage, the date, the type of entry and short notes. Do not write more about people than you need.

One way to start: pick one vehicle and walk through a week of its life. Write down what you would want to look up later. Build only those columns.

## Step 1. Build the Vehicles list

This list has one row for each vehicle.

1.  Create a new blank list in Microsoft Lists or on your SharePoint site. Name it "Vehicles".
2.  Use the Title column the list already has. Rename the Title column "Plate or ID". Example: "Van 2".
3.  Add a column named "Make". Type: Single line of text.
4.  Add a column named "Next service date". Type: Date and time, date only.
5.  Add a column named "Next service miles". Type: Number. Example: 60000. Take this number from the maker's manual and your own policy, not from this page.

Microsoft's page on lookup columns says a lookup column can show a Single line of text, Number, Date and Time or single-value Lookup column from the source list. The Title column is single line of text, so it works. You will use it in the next step.

## Step 2. Build the Trips and service log

This list has one row for each trip, fuel stop or service.

1.  Create a second list named "Trips and service log".

2.  Use the Title column. Rename it "Entry". Give each row a short name, such as "Van 2 delivery run".

3.  Add a column named "Vehicle". Type: Lookup. Pick the Vehicles list as the source and "Plate or ID" as the column to show. Microsoft says lookup columns must be created and used within the same site, so build both lists on the same site.

4.  Add a column named "Date". Type: Date and time, date only.

5.  Add a column named "Driver". Type: Person or Group.

6.  Add a column named "Odometer". Type: Number. This is the reading at the end of the trip, the fuel stop or the service.

7.  Add a column named "Type". Type: Choice. Use number prefixes:

    1 Trip

    2 Fuel

    3 Service

8.  Add a column named "Notes". Type: Multiple lines of text.

Our advice, not a Microsoft rule: the numbers in front give each Type choice a fixed look in every view.

If you want a service receipt on file, add it as an attachment to the row, if the Attachments feature is on for the list. The exact names may differ.

## What to record per vehicle and per entry

Per vehicle (Vehicles list): Plate or ID, Make, Next service date, Next service miles.

Per entry (log): Entry, Vehicle, Date, Driver, Odometer, Type, Notes. For services, add Service type, Cost and Vendor as extra columns (Single line of text for Service type and Vendor, Currency for Cost).

A sample entry: Entry "Van 2 oil service", Vehicle Van 2, Date 2026-10-14, Type 3 Service, Odometer 61200, Service type Oil and filter, Cost 180, Vendor your usual shop.

This guide has no file to download. Build the lists from these columns.

## Step 3. Make logging fast

A log works only if the driver fills it in. Keep the form short. A driver needs to pick the vehicle, the date, their name, the odometer and the type. Notes are optional.

One way to start: put a link to the new-entry form in the team chat, and on a card in the vehicle. A short form takes less time than a paper sheet.

## Step 4. Update the Vehicles list after a service

When a row of type "3 Service" is logged:

1.  Open the Vehicles list.
2.  Set "Next service date" and "Next service miles" for that vehicle, using the maker's manual and your own policy.

This step is manual on purpose. It keeps the build small and is easy to check.

To compare mileage with the next service point, open the log, sort the Odometer column from high to low, and look at the top row for each vehicle. Compare it with "Next service miles" on the Vehicles list. A flow can read dates from a list, but this guide does not build a mileage flow.

## Step 5. Make a Due soon view

A view can show only the vehicles due for service in the next 30 days. This is the page the person who plans service checks each week.

A calculated column cannot do this. SharePoint blocks \[Today\] in calculated column formulas, and Microsoft's TODAY page says you can use the function only as a default value. A view filter can use \[Today\].

1.  Open the Vehicles list.
2.  Use the classic view editor. Microsoft says you cannot use \[Today\] or \[Me\] when you filter from a column header. In the view menu choose Edit current view, then scroll to Filters.
3.  Choose Show items only when the following is true.
4.  Set: Next service date is less than or equal to \[Today\]+30.
5.  Save the view and name it "Due soon". Sort it by Next service date, oldest first.

A date that has passed is also less than \[Today\]+30, so late vehicles show here too. That is what you want.

## Step 6. Make views of the log

In the Trips and service log, make these views:

1.  Latest by vehicle: group by Vehicle and sort by Odometer, high to low.
2.  Service history: filter Type equals 3 Service, sorted by Date.
3.  Cost by vehicle: our advice, not a Microsoft rule: export the Service history view to Excel (Export menu on the command bar, then Export to Excel) and total the Cost column for each vehicle there. Microsoft says the export covers the items shown in the current view.

Filtering a Choice column by a value works from the column header. If you later want a view of "my entries" with \[Me\], use the classic view editor (Edit current view, then Filters), as Microsoft says for \[Me\]. Our advice, not a Microsoft rule: use it for blank-value filters too.

## Step 7. Build the reminder flow

A view helps only when someone opens it. A flow can open it for them. This is the same pattern as the page "[Send a reminder before a due date in a SharePoint list](/guides/send-reminder-before-due-date/)". This version sends one summary email, not one email for each vehicle.

1.  Sign in to Power Automate. Select My flows, then the Cloud flows tab, then Create from blank.

2.  Select Add a trigger, search for Recurrence and select it. Set Interval to 1 and Frequency to Day. Pick the time zone and the hour, so the email arrives early.

3.  Add the SharePoint action Get items. Pick your site and the Vehicles list.

4.  Open Advanced options. Microsoft says the default item limit is 100 and that you can raise it up to 5,000 with Top Count. Set Top Count to a number above your vehicle count, such as 500. In the action settings, turn Pagination on. Without these settings, the flow returns only the first 100 rows.

5.  In Filter Query, use Microsoft's OData pattern with the internal column name. Spaces become \_x0020\_. A filter for service dates up to 14 days away looks like this:

    Next_x0020_service_x0020_date le 'formatDateTime(addDays(utcNow(),14),'yyyy-MM-dd')'

    Microsoft's example shows a date comparison written with formatDateTime and utcNow in the same way. Add the formatDateTime part from the Expression tab. Do not type it as plain text. Change 14 to the days of warning you want. Test it with sample rows, because date and time zone handling can shift an item by one day.

6.  Add the action Create HTML table. Set From to the value output of Get items. Pick only the columns you need, such as Plate or ID, Make and Next service date.

7.  Add a Condition so you do not send an empty email. One way to start: check that length(body('Get_items')?\['value'\]) is greater than 0.

8.  On the yes side, add Send an email (V2) from Office 365 Outlook. Put the person who plans service in To. In Body, add one sentence, the HTML table output and a link to the Due soon view.

9.  Save the flow. Run it once and read the run results.

Name a backup person who can open and fix the flow. If the person who owns it leaves, the flow may stop. Which licenses these actions need depends on your plan, so check with your admin before you build.

## Driver privacy and who can see the log

A trip log records where people were and when. Treat it with care.

- Collect only what you will use. A driver, a date and an odometer reading are enough to start. Do not add start and end places unless you need them.
- Tell drivers what the log holds and who reads it. This is our advice, not a Microsoft rule.
- Views are not security. A filtered view only changes what shows on the screen. It does not stop someone with access to the list from opening the full list.
- If only some people should see the log, change who has access to it. Microsoft's page on list permissions says a list can be given its own permissions, and it recommends using the built-in SharePoint groups where you can because unique permissions make administration harder. Ask your admin before you change access.

## What to avoid

- Do not copy service intervals from a web page, including this one. Use the maker's manual and your own policy.
- Do not use a calculated column for "days to service." SharePoint blocks \[Today\] there. Use the Due soon view and the flow.
- Do not skip Top Count and Pagination on Get items. The default returns only 100 rows.
- Do not send one email for each vehicle. One summary is easier to act on.
- Do not leave Type as free text. Use a Choice column.
- Do not log more about people than you need.
- Do not trust a view as security. Change list access if the log must be private.
- Do not delete old entries. They are the history.

## Honest limits

A reminder does not make the service happen. It makes the due date hard to miss. The date reminder is only as good as the person who updates the next service date, and the mileage check in this guide is manual. If nobody updates the Vehicles list, the reminders will be wrong. A list also does not read the odometer for you. It stores what a driver types.

If you are still on a spreadsheet, see "[Replace a spreadsheet tracker with a SharePoint list](/guides/replace-spreadsheet-with-sharepoint-list/)". For who has a shared item out today, see "[Equipment checkout with no record: how to track who has what](/guides/equipment-checkout-no-record/)". For service dates on lab or clinic equipment, see "[An equipment maintenance log in SharePoint for a clinic or lab](/guides/equipment-maintenance-log-clinic-lab/)".

## When to get help

You can build all of this yourself in Microsoft 365. If you would rather have it built and tested for your team, I do that. A tracker like this is a fixed price: \$5,000 for one, built in 2 weeks. See "[What a SharePoint tracker costs to build](/guides/what-a-sharepoint-tracker-costs/)". Bring one example of the problem to a free call.

I am Al Davies. I run 250 High Street LLC and build SharePoint trackers and Power Automate flows for operations teams. I work remotely. The first call is free, and I will not try to sell you anything.

See trackers I built: [Tools I built](/portfolio/)

## FAQ

### Is there a fleet vehicle maintenance log template for Excel?

Not as a file. The columns are listed above. Build the two lists from them, then export any view to Excel from the Export menu.

### What belongs on a fleet vehicle maintenance checklist?

Take the checks from the maker's manual and your own policy. The log stores the entry type, date, odometer reading, notes and any receipt as an attachment.

### How do I set up a commercial truck maintenance schedule?

Put each truck in the Vehicles list with its next service date and miles, taken from the maker's manual, your own policy and any rules that apply to your trucks. The Due soon view shows trucks due within 30 days.

### How do I keep a fleet maintenance schedule current?

Update Next service date and Next service miles on the Vehicles list each time a service is logged. A daily reminder email reads those dates.

### Can the reminder watch mileage too?

This guide builds a date reminder only. For mileage, sort the log by Odometer and compare the top row for each vehicle with Next service miles. That check is manual.

### Can a driver see other drivers' entries?

Anyone with access to the log can open the full list, even if a view hides rows. A view is not security. Change list access if the log must be private.

## Sources

- [Microsoft Support, Create list relationships by using lookup columns](https://support.microsoft.com/en-us/sharepoint/lists/data-and-lists/create-list-relationships-by-using-lookup-columns)
- [Microsoft Support, Use filtering to modify a SharePoint view](https://support.microsoft.com/en-us/office/use-filtering-to-modify-a-sharepoint-view-3d8efc52-0808-4731-8f9b-3dfaeacea3d4)
- [Microsoft Support, TODAY function](https://support.microsoft.com/en-us/sharepoint/functions-data/today-function)
- [Microsoft Support, Edit permissions for a list or library](https://support.microsoft.com/en-us/office/edit-permissions-for-a-list-or-library-02d770f3-59eb-4910-a608-5f84cc297782)
- [Microsoft Learn, Run a cloud flow on a schedule in Power Automate](https://learn.microsoft.com/en-us/power-automate/run-scheduled-tasks)
- [Microsoft Learn, In-depth analysis into Get items and Get files SharePoint actions](https://learn.microsoft.com/en-us/sharepoint/dev/business-apps/power-automate/guidance/working-with-get-items-and-get-files)
- [Microsoft Support, Export to Excel from SharePoint or Lists](https://support.microsoft.com/en-us/sharepoint/lists/data-and-lists/export-to-excel-from-sharepoint-or-lists)

## Related guides

- [An equipment maintenance log in SharePoint for a clinic or lab](/guides/equipment-maintenance-log-clinic-lab/)
- [A mileage log in SharePoint for a small team](/guides/mileage-log-sharepoint/)
- [A property maintenance request tracker in SharePoint](/guides/property-maintenance-request-tracker/)

Source: https://250highstreet.com/guides/fleet-vehicle-maintenance-log/
