# Food truck inventory tracker in SharePoint

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

> Build a food truck inventory tracker in SharePoint: stock counts per shift, par levels and a low stock view you can open on your phone before you shop.

Short answer: keep one SharePoint list where each row is one item you stock, such as buns, propane or napkins. Use the Title column for the item name. Add a par level, which is the amount you want on the truck at the start of a shift, and a count for what is on hand now. Add a Yes/No column called Reorder. Then build a "Low stock" view that shows only the rows marked Yes. Open the list on your phone before you shop, and the shopping list is already there. The exact names of menus and buttons may differ on your screen, because Microsoft changes them from time to time.

This guide is for a small truck or cart with a short list of items and one or two people counting. It is about stock on hand and what to buy next. If you run a larger shared pantry with donated goods and dates, see "[A food bank inventory tracker in SharePoint](/guides/food-bank-inventory-tracker/)". If you want a general approach to counting stock for a team, see "[Inventory tracking for a small team without new software](/guides/inventory-tracking-small-team/)". This guide does not repeat those.

## Why a notebook or a text thread falls short

Picture the end of a shift. You are parked, the grill is still warm, and the only count of the cooler is a smudged sheet clipped inside the cab. By the time you reach the commissary the next morning, that sheet is in a different place from where you need it, and the order gets written from memory.

- A text thread buries a count under photos of the menu board, so the latest number for the propane tank is hard to find.
- A notebook shows one truck's night. It says nothing about what you used between two commissary trips.

A list gives each item one row with a par, a count and a Yes or No. You update it from your phone in the cab, and the commissary run starts from the same screen.

## What you are building

- A list named "Truck Stock", with one row per item.
- Columns for category, unit, par level, on hand, reorder flag, vendor and the date of the last count.
- A "Low stock" view that shows only the items marked Reorder = Yes.
- A "By category" view for counting on the truck, one group at a time.
- An optional small flow that sets the Reorder flag for you when on hand falls below par.

## Step 1. Create the list

From [https://www.microsoft365.com](https://www.microsoft365.com), open SharePoint and go to the site your crew shares. Microsoft's help page on creating a list says: "Or, you can create a new list from your SharePoint site home page or the Site contents page, select + New \> List." Pick Blank list, call it "Truck Stock", and select Create. Exact names may differ.

The Title column is required by default. Use it for the item name, such as "Hot dog buns, 8 pack". You can rename the column to "Item" in the column settings, or turn off Require for it. Keeping it as the item name is the simplest start.

Write item names the same way every time. "Buns" and "Hot dog buns" will show up as two rows, and the list will not know they are the same thing.

## Step 2. Add the columns

Add these columns with "+ Add column".

1.  Category: a Choice column with numbered choices so they stay in your order: 1 Protein, 2 Produce, 3 Dry goods, 4 Drinks, 5 Paper and packaging, 6 Fuel and supplies. Use your own categories if these do not fit.
2.  Unit: Single line of text. Write how you count the item: "case", "bag", "tank", "sleeve". Pick one unit per item and keep to it.
3.  Par level: a Number column. This is the amount you want on the truck at the start of a shift. Our advice, not a Microsoft rule: set par from a few real shifts, not a guess, and change it when your menu changes.
4.  On hand: a Number column. This is the amount you counted most recently.
5.  Reorder: a Yes/No column. Set the default to No. This is the flag the "Low stock" view will read.
6.  Vendor: Single line of text, or a Choice column if you only use a few.
7.  Last counted: a Date column, date only.
8.  Counted by: a Person column.
9.  Notes: Multiple lines of text, for things like "buy the 12 pack, not the 6".

A note on price. If you want to store a cost per unit, use a Number column and not a Currency column that you try to show elsewhere through a lookup. Currency columns cannot be shown through a lookup. Keep cost out of the first version if you only want a shopping list.

Why Category and Reorder are set columns and not free text: the words are exact when you filter. A typo such as "Prodce" cannot get in.

## Step 3. Count at the end of each shift

At close, open "Truck Stock" on your phone and update On hand for the items you used. You do not need to count everything every time. Count the items that run out first, such as buns, ice, propane and your top two proteins, and count the rest once a week.

Three habits keep the numbers honest:

- Count what you can see, not what you think you have.
- Update On hand before you leave the lot, while the shelf is in front of you.
- Set Last counted when you change a count, so the next person knows how old the number is.

## Step 4. Decide what "low" means

There are two ways to mark an item as low. Both are our advice, not a Microsoft rule.

Way one, by hand. The person counting looks at On hand and Par level and sets Reorder to Yes when the item is at or below par. It takes a few seconds per item and needs no flow. It is the simplest start.

Way two, by comparing two numbers. A flow compares On hand with Par level and sets Reorder to Yes when On hand is lower. This removes the need to remember. It does not know about upcoming events, a holiday weekend or a slow week, so a person still decides what to buy.

Start with way one. Move to way two when the list has settled and you trust the par numbers.

## Step 5. Build the "Low stock" view

This view is the shopping list. Open it before you leave for the store.

1.  Open the view menu and choose "Edit current view" to open the classic view editor. Create a new view named "Low stock".
2.  Under "Filters", choose "Show items only when the following is true".
3.  Filter Reorder to "is equal to" Yes.
4.  Show the columns Title, Category, Unit, Par level, On hand and Vendor. Sort by Vendor, then by Category, so the list follows the stops you make.

After you buy an item and restock the truck, update On hand and set Reorder back to No. The row drops out of the view. That is why the flag matters: a view that only compares numbers cannot be built from a plain filter, because a view filter compares a column to a value, not one column to another. Our advice, not a Microsoft rule: use the flag column so old rows drop off the list on their own.

Our advice, not a Microsoft rule: set blank and "is not equal to" filters in the classic view editor too.

## Step 6. Build the "By category" view

This view is for counting on the truck.

1.  Create a view named "By category".
2.  Group by Category.
3.  Show Title, Unit, Par level and On hand.

You count one group at a time and update the On hand number as you go. If you only count on a phone, a short list per group is easier to scroll than the whole list.

## Step 7. Optional: set the Reorder flag with a flow

A list cannot flip its own flag. Power Automate can do it for you when a count is saved. Button names may differ on your screen.

1.  Go to [https://make.powerautomate.com](https://make.powerautomate.com) and start an automated cloud flow. Pick the SharePoint trigger for a changed item, then point it at your site and the "Truck Stock" list.
2.  Add a Condition step. The test is whether the counted amount sits under the target. Microsoft's page on expressions in conditions says about the less function: "Takes two arguments and returns true if the first argument is less than the second argument." Insert On hand as the first value and Par level as the second, using the dynamic content picker. Add a second row joined by And that checks Reorder is equal to false, so a row already flagged is left alone.
3.  In the Yes branch, add the SharePoint "Update item" action and set Reorder to Yes. Title is required by default, so fill it with the item's Title from dynamic content. The No branch stays empty. When you restock, clear the flag by hand, as in Step 5.
4.  Save, then test with a row such as Item 12 where On hand is 2 and Par level is 6.

Two things to keep in mind. The flow weighs two numbers and nothing else. Also, a flow that edits the same list it watches fires again on its own edit, and the Reorder check in the Condition is what ends that chain. See "[Power Automate flow keeps running itself over and over](/guides/power-automate-flow-triggers-itself-infinite-loop/)". Ask your admin which Power Automate license your company holds.

## Who can see the list

A helper who only counts on the truck needs edit rights on this one list and nothing more. A view does not hide rows, so if a supplier price should stay private, see "[Keep one column private (like pay or notes) in a shared list](/guides/hide-a-column-from-some-people-sharepoint-list/)".

## A note on your own date views

If you add a view that shows items counted in the last week, that view needs the \[Today\] keyword. Microsoft's help page on filtering a view says: "It is not possible to use the \[Today\] or \[Me\] filters when filtering using a column header." It adds: "You must use the classic view editor to filter columns using these keywords." A calculated column cannot use today's date either. Microsoft's formulas page says: "The TODAY and ME functions are not supported in calculated columns but are supported in the default value setting of a column." So put date checks in a view filter, not in a column.

## What to avoid

Four slips are easy to make on a truck.

- Counting from the doorway of the cab. Open the cooler and the dry bins, then enter the number.
- Reusing one row for two pack sizes of the same item. If you move from a 6 pack to a 12 pack of cups, add a new row and type "Retired" at the start of the old row's Notes.
- Using a flag-less filter that sets On hand against Par level. The Reorder flag does that job.
- Putting today's date in a calculated column, or leaving Title blank when it is required.

## Honest limits

A guessed propane reading at close shows up the next morning as a real number. The list cannot tell a guess from a count.

The Low stock view knows nothing about the event calendar. Before a festival weekend, build the commissary order from the calendar, then use the view for the rest.

## 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

### Why is the item name in the Title column?

Every list has a Title column and it is required by default. Using it for the item name means no column goes unused. You can rename it to "Item", or turn off Require.

### Why a Yes/No flag and not a view that compares On hand to Par level?

Our advice, not a Microsoft rule: a view filter compares a column to a value, so a flag column is the simple way to make old rows drop off. Set it by hand or with a flow.

### Why does my \[Today\] filter not work from the column header?

Microsoft says it is not possible to use the \[Today\] or \[Me\] filters from a column header. Use the classic view editor: Edit current view, then Filters.

### Can I count on my phone during a shift?

You can open the list in a browser on your phone and edit a row. Keep the counting short: update the items that run out first and count the rest once a week.

### Does this replace my receipts or any records I must keep?

No. The list is your team's working record. Ask your local office which records you must keep, and keep the papers they ask for.

## Sources

- [Microsoft Support, Create a list](https://support.microsoft.com/en-us/sharepoint/lists/data-and-lists/create-a-list)
- [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 Learn, Use expressions in conditions in Power Automate](https://learn.microsoft.com/en-us/power-automate/use-expressions-in-conditions)
- [Microsoft Support, Introduction to SharePoint formulas and functions](https://support.microsoft.com/en-us/sharepoint/libraries/introduction-to-sharepoint-formulas-and-functions)

## Related guides

- [A food bank inventory tracker in SharePoint](/guides/food-bank-inventory-tracker/)
- [Dental office supply inventory with reorder alerts](/guides/dental-office-supply-inventory-sharepoint/)
- [Uniform inventory tracker in SharePoint](/guides/uniform-inventory-tracker-sharepoint/)
- [Chemical inventory log in SharePoint: location, amount, SDS link](/guides/chemical-inventory-log-sharepoint/)
- [Moving estimates and booked jobs in one SharePoint tracker](/guides/moving-company-estimate-job-tracker-sharepoint/)

Source: https://250highstreet.com/guides/food-truck-inventory-tracker/
