← All Tips

Google Sheets Inventory Template: Track Stock, Costs, and Reorder Alerts

Build a free Google Sheets inventory tracker with low-stock alerts, a reorder dashboard, and total value formulas — no software required.

Published June 25, 2026

Paying for inventory software when you're running a small product business or side hustle doesn't make sense until you're moving serious volume. Google Sheets handles stock tracking, reorder alerts, and cost calculations for free — and a well-built spreadsheet can run for years without needing an upgrade. Here's how to set one up properly.


The 8-Column Inventory Log

Create a new Google Sheet and name the first tab Inventory Log. Set up these 8 columns starting in row 1:

| Column | Header | Format | |---|---|---| | A | Item | Text | | B | SKU | Text | | C | Category | Text | | D | In Stock | Number | | E | Reorder Level | Number | | F | Unit Cost | Currency | | G | Total Value | Formula (auto-calculated) | | H | Supplier | Text |

Column G formula — Total Value is In Stock × Unit Cost. In G2, enter:

=D2*F2

Copy this formula down for all rows. This gives you the current inventory value of each item at a glance.


Step 1: Calculate Total Inventory Value with SUMPRODUCT

At the top of your sheet (or in a summary section), add a total inventory value cell using SUMPRODUCT so it works even with blank rows:

=SUMPRODUCT(D2:D1000*F2:F1000)

This multiplies In Stock × Unit Cost for every row and sums the result, skipping blank cells automatically. No need to update the range as you add new items — just keep it wide.

Add a label in the cell to the left: Total Inventory Value.


Step 2: Conditional Formatting for Low-Stock Alerts

Highlight any item that's at or below its reorder level with a red fill:

  1. Select the range A2:H1000 (the full data range)
  2. Go to Format → Conditional formatting
  3. Under "Format rules", choose Custom formula is
  4. Enter this formula:
    =$D2<=$E2
    
  5. Set the fill color to red (or orange for a softer warning)
  6. Click Done

Now any row where In Stock ≤ Reorder Level turns red automatically. When you restock and update column D, the highlight clears on its own — no manual upkeep.


Step 3: Build a Reorder Dashboard Tab

Add a second tab called Reorder Dashboard. This tab auto-pulls every item that needs restocking, so you're not hunting through the full inventory list.

In cell A1 of the Reorder Dashboard, add a header row:

Item | SKU | Category | In Stock | Reorder Level | Supplier

In A2, enter this FILTER formula:

=FILTER('Inventory Log'!A2:H1000, 'Inventory Log'!D2:D1000<='Inventory Log'!E2:E1000, 'Inventory Log'!A2:A1000<>"")

This pulls every row from the Inventory Log where In Stock ≤ Reorder Level, and excludes blank rows. The result updates live — every time you edit stock levels in the Inventory Log, the Reorder Dashboard refreshes.

To show only specific columns (Item, SKU, In Stock, Supplier — columns A, B, D, H):

=FILTER(CHOOSE({1,2,3,4},'Inventory Log'!A2:A1000,'Inventory Log'!B2:B1000,'Inventory Log'!D2:D1000,'Inventory Log'!H2:H1000), 'Inventory Log'!D2:D1000<='Inventory Log'!E2:E1000, 'Inventory Log'!A2:A1000<>"")

Add a cell above the table showing the count of items to reorder:

=COUNTA(A2:A1000)&" items need restocking"

Step 4: Add a Last Updated Timestamp

It's useful to know when inventory was last updated, especially if multiple people edit the sheet. Add a Last Updated cell in a fixed location — for example, cell J1 of the Inventory Log:

Label in I1: Last Updated Manual approach (simplest): Update this cell manually whenever you do a stock count. Use:

=NOW()

…but note that NOW() recalculates every time the sheet recalculates, making it unreliable as a true "last edited" timestamp.

Better approach — static timestamp with a script:

  1. Go to Extensions → Apps Script
  2. Paste this function:
function onEdit(e) {
  var sheet = e.source.getActiveSheet();
  if (sheet.getName() === "Inventory Log") {
    sheet.getRange("J1").setValue(new Date());
  }
}
  1. Click Save

Now J1 updates with the current date and time every time anyone edits the Inventory Log — no manual entry required.


Step 5: Add Dropdown Validation for Category

Keep your Category column (C) clean with data validation:

  1. Select the range C2:C1000
  2. Go to Data → Data validation
  3. Choose List of items
  4. Enter your categories separated by commas: Electronics, Apparel, Packaging, Raw Materials, Finished Goods
  5. Check Show dropdown list in cell

This prevents typos that break your FILTER formulas and keeps reporting consistent.


Free Templates to Speed Things Up

Skip the setup time — grab free spreadsheet templates at notioncraft.madethis.app/free and get a head start on your business tracking system.


Want a Pre-Built Budget and Finance Tracker?

If you're tracking inventory, you're probably also tracking costs, margins, and monthly cash flow. The Monthly Budget Planner for Google Sheets is built for exactly this — expense categories, monthly summaries, and a clean dashboard, ready to fill in.

Monthly Budget Planner (Google Sheets) — $19 →

Pairs well with your inventory tracker for a complete financial picture of your business.

Free Resource

Not ready to buy? Grab our free Notion Quick-Start Template

A no-fluff starter workspace to get organized in 30 minutes. Free, no credit card required.

Ready to get organized?

Browse our Notion templates and find your perfect setup.