Excel Inventory Template Generator
Build a stock list with per-item value, a reorder flag that watches your minimum level, and a category sheet for dropdowns.
| A | B | C | D | E | F | G | H | I | |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Inventory | ||||||||
| 2 | |||||||||
| 3 | SKU | Item name | Category | Location | Supplier | Qty on hand | Min level | Unit cost | Stock value |
| 4 | =IF(COUNT(F4,H4)=2,F4*H4,"") | ||||||||
| 5 | =IF(COUNT(F5,H5)=2,F5*H5,"") | ||||||||
| 6 | =IF(COUNT(F6,H6)=2,F6*H6,"") | ||||||||
| 7 | =IF(COUNT(F7,H7)=2,F7*H7,"") | ||||||||
| 8 | =IF(COUNT(F8,H8)=2,F8*H8,"") | ||||||||
| 9 | =IF(COUNT(F9,H9)=2,F9*H9,"") | ||||||||
| 10 | =IF(COUNT(F10,H10)=2,F10*H10,"") | ||||||||
| 11 | =IF(COUNT(F11,H11)=2,F11*H11,"") | ||||||||
| 12 | =IF(COUNT(F12,H12)=2,F12*H12,"") | ||||||||
| 13 | =IF(COUNT(F13,H13)=2,F13*H13,"") | ||||||||
| 14 | =IF(COUNT(F14,H14)=2,F14*H14,"") | ||||||||
| 15 | =IF(COUNT(F15,H15)=2,F15*H15,"") | ||||||||
| 16 | =IF(COUNT(F16,H16)=2,F16*H16,"") | ||||||||
| 17 | =IF(COUNT(F17,H17)=2,F17*H17,"") | ||||||||
| 18 | =IF(COUNT(F18,H18)=2,F18*H18,"") | ||||||||
| 19 | =IF(COUNT(F19,H19)=2,F19*H19,"") | ||||||||
| 20 | =IF(COUNT(F20,H20)=2,F20*H20,"") | ||||||||
| 21 | =IF(COUNT(F21,H21)=2,F21*H21,"") | ||||||||
| 22 | =IF(COUNT(F22,H22)=2,F22*H22,"") |
Preview of the first 22 rows. Cells shown as =SUM(...) are live formulas in the downloaded workbook, not pasted numbers.
What you get
- •One row per SKU with quantity, unit cost, and a Stock value formula.
- •A Reorder? column that flags any item at or below its minimum level.
- •A Categories sheet you can point a data-validation dropdown at.
- •A totals row summing quantity on hand and total stock value.
About this template
This is a stock list: one row per SKU, the quantity you have, what it cost, what that stock is worth, and a flag that tells you when a line has fallen to its reorder point. It is the sheet a business keeps when the alternative - a full inventory system - would cost more attention than the stock is worth.
It suits a shop, a workshop, a maker selling online, a studio tracking equipment, or anyone doing a periodic count for the accounts. It is a snapshot rather than a movement ledger: there is no goods-in and goods-out history, and when you recount an item you type over the quantity. That is a limitation worth knowing before you build a process on it, and it is also why the sheet stays readable.
The Inventory sheet puts the title in row 1 and the column headers in row 3: SKU, Item name, Category, Location, Supplier, Qty on hand, Min level, Unit cost, Stock value and Reorder?. Forty blank item rows follow by default, and row 44 totals the quantity, the stock value, and the number of lines flagged for reorder. The header row and the first two columns are frozen, so the SKU and name stay visible when you scroll right.
A second sheet, Categories, holds your category list. It exists so the Category column can point a data-validation dropdown at a stable range that you can extend without touching the main sheet.
How to use it
- Decide the columns before generating - Location and Supplier are optional and the row count is set here. Dropping a column you do not use is easier now than hiding it later, because the formulas are written to fit the columns you keep.
- Fill one row per SKU - SKU, name, category and any location or supplier, then the three numbers that matter: Qty on hand, Min level, and Unit cost. Stock value and Reorder? are formulas and should be left alone.
- Turn Category into a dropdown - Select C4:C43, then Data > Data Validation > List and enter =Categories!$A$2:$A$5 as the source - that is the range your categories were written to. Extend the range if you add more on the second sheet.
- Set a real minimum level per line - The Min level is what the reorder flag compares against, so a blank one means that line will never flag. A useful starting point is the quantity you get through in the time it takes a supplier to deliver.
- Work the reorder list - Select row 3 and turn on Data > Filter, then filter the Reorder? column to REORDER to see only what needs ordering. The count in the totals row tells you how many lines that is before you filter anything.
- Add stock lines inside the block - Insert a row between the first and last item row so the SUM and COUNTIF in the totals row stretch to include it, then copy the Stock value and Reorder? cells down from the row above - an inserted row has no formulas of its own.
Formulas in this workbook
Every formula below is written into the workbook itself, exactly as shown. The cell references are the ones the default options produce; change the row or column counts and they shift to match.
=IF(COUNT(F4,H4)=2,F4*H4,"")- Stock value on each row: quantity on hand times unit cost, but only when both are numbers. Rows you have not filled in yet stay blank instead of showing a zero value against a nameless item.=IF(COUNT(F4,G4)=2,IF(F4<=G4,"REORDER",""),"")- The reorder flag, guarded twice. The outer IF checks that both the quantity and the minimum level have been entered; the inner one compares them and writes REORDER when the quantity is at or below the minimum. Without the outer guard every empty row would flag, because a blank counts as zero.=SUM(I4:I43)- Total stock value in the totals row - the number your accountant asks for at year end. The quantity column is summed the same way, one column to the left.=COUNTIF(J4:J43,"REORDER")- How many lines are currently flagged. COUNTIF counts the cells whose value is exactly REORDER, and the blank strings the other rows return are not counted.
Customising it
- Make a flagged line impossible to miss: select A4:J43, add a conditional format with the formula rule =$J4="REORDER", and give it a red fill. The rule follows the flag as quantities change.
- Add a reorder quantity column with something like =IF(J4="REORDER",G4*2-F4,"") so the sheet suggests how much to buy, not just that you should.
- Add a Last counted date column and fill it in as you count. On a snapshot sheet, knowing how old a number is matters as much as the number.
- Record movements by adding Received and Issued columns and making Qty on hand a formula that adds and subtracts them from an opening figure - that converts the snapshot into a running balance.
- Extend the Categories sheet as your range grows, then widen the data-validation source range to match; the two sheets are deliberately independent so this never disturbs the item rows.
Frequently Asked Questions
The formula checks with COUNT that both the quantity and the minimum level have been entered before it compares them. Excel treats an empty cell as zero, so without that check every unused row would read REORDER and the flag would be worthless.
At the minimum. The comparison is quantity less than or equal to minimum level, so an item with a minimum of 10 flags when 10 are left, not when 9 are. Set the minimum to the level you want to act at.
Not as generated. The workbook holds a current count, and recounting means typing over the quantity. If you need movements, add Received and Issued columns and turn Qty on hand into a formula over them - the totals row and the reorder flag will keep working on the result.
It is a source range for a dropdown. Excel's data validation needs its list to live somewhere stable, and keeping it on its own sheet means you can add categories without inserting rows into the stock list. The sheet also carries the instructions for pointing the validation at it.