Blog·October 18, 2026·10 min read
Inventory Management in Google Sheets (Free Template)
Short answer: yes, you can manage inventory in Google Sheets with three tabs: Products, Orders and Stock in. A SUMIFS formula adds up what you sold and what you received for each item, so the stock number goes down when you write an order. A conditional formatting rule colours anything that is running low.
This guide builds that sheet for a shop with roughly 20 to 200 items, including sizes and colours. Every formula is written out, so you can type it in yourself. It also covers returns, the monthly count, and the point where a sheet stops being enough. The formulas use standard Google Sheets functions, checked against Google's own help pages on 2 October 2026.
Can you manage inventory in Google Sheets?
For a small online shop, yes. The real job of an inventory sheet is to answer three questions before you say yes to a customer: do I have it, in this size, and when do I need to buy more? A sheet answers all three if two things are true:
- Every sale is written down, as soon as you confirm it.
- Every new delivery from your supplier is written down too.
That is the honest limit. A sheet only knows what you type into it. It is a good tool for one seller or a small team that takes orders in one place, such as a Facebook page and WhatsApp.
Which columns does a small shop's stock sheet need?
Make a new Google Sheet with three tabs. Name them exactly Products, Orders and Stock in.
The Products tab
| Column | Heading | What goes in it |
|---|---|---|
| A | SKU | A short code, one per size and colour: KRT-GRN-M |
| B | Product | Cotton kurti |
| C | Size | M |
| D | Colour | Green |
| E | Cost price | What you paid per piece |
| F | Selling price | Your price before delivery |
| G | Opening stock | How many you had on the day you started the sheet |
| H | Stock in | Formula: everything received since |
| I | Sold | Formula: everything sold since |
| J | In stock | Formula: what you have now |
| K | Reorder level | The number at which you buy more, such as 2 |
| L | Status | Formula: OK, Reorder or Check count |
The Orders tab
One row per item sold, not per order. If a customer buys two kurtis in different sizes, that is two rows with the same order number.
- A: Date
- B: Order number, such as 1042
- C: SKU
- D: Quantity
- E: Status: New, Confirmed, Shipped, Delivered, Returned or Cancelled
- F: Note, such as the customer's area or the courier tracking code
The Stock in tab
- A: Date
- B: SKU
- C: Quantity. Use a minus number to take stock out, such as -1 for a damaged piece.
- D: Note: the supplier, "damaged return" or "count fix"
How do you track sizes and colours?
Give every size and colour its own row and its own SKU. Skip this step and a sheet says "10 in stock" when the customer's size is gone.
A simple SKU pattern that you can read at a glance: product, colour, size.
| SKU | Product | Size | Colour | In stock |
|---|---|---|---|---|
| KRT-GRN-M | Cotton kurti | M | Green | 2 |
| KRT-GRN-L | Cotton kurti | L | Green | 5 |
| KRT-RED-M | Cotton kurti | M | Red | 0 |
The stock numbers above are an example. Three rules keep the codes useful:
- Use the same short words every time: GRN, not Green on one row and GR on the next.
- Never reuse an old SKU for a new product. Make a new one.
- Stop typos in the Orders tab with a dropdown. Select C2:C on Orders, open Data, then Data validation, click Add rule, and choose a dropdown from the range
Products!A2:A. Now an order can only use a SKU that exists.
Do the same for the Status column on Orders, with the six status words as the dropdown items. A formula cannot count "Cancled" as cancelled.
How do you make stock go down when you sell?
With SUMIFS, which adds up the numbers in one column where other columns match what you ask for. Google's help page gives the pattern as SUMIFS(sum_range, criteria_range1, criterion1, ...). Type these in row 2 of the Products tab, then copy them down to every product row.
Stock in (H2) adds up everything received for this SKU:
=SUMIFS('Stock in'!$C:$C, 'Stock in'!$B:$B, $A2)
Sold (I2) adds up every order row for this SKU, except cancelled and returned ones:
=SUMIFS(Orders!$D:$D, Orders!$C:$C, $A2, Orders!$E:$E, "<>Cancelled", Orders!$E:$E, "<>Returned")
In stock (J2) is what you started with, plus what came in, minus what went out:
=G2+H2-I2
A few things this gets right:
- An order takes the stock as soon as you write it, even while it is still New. That stops you from selling the last piece twice while you wait to confirm.
- A cancelled order gives the stock back. Change the status to Cancelled and the piece is counted as in stock again.
- A returned parcel comes back into stock when you mark it Returned. If it comes back damaged or used, add a Stock in row with -1 and the note "damaged return", so you do not sell it again.
Returns are part of the cost of selling with cash on delivery. Our courier charges comparison shows what each returned parcel costs in courier charges.
How do you get a low-stock alert?
Fill in the Reorder level column (K) for each SKU. A fast seller might reorder at 3, a slow one at 1. Then add the Status formula in L2 and copy it down:
=IF(J2<0, "Check count", IF(J2<=K2, "Reorder", "OK"))
"Check count" means the sheet thinks you sold more than you had. That always means a missing Stock in row or a wrong order row, so look for it the same day.
Now make the rows stand out:
- Select A2:L200 on the Products tab.
- Open Format, then Conditional formatting.
- Under Format cells if, choose Custom formula is, and type
=AND($A2<>"", $J2<=$K2). - Pick a fill colour, such as light red, and click Done.
Those are the steps on a computer, from Google's help page. The dollar sign before A, J and K keeps the rule looking at the same columns on every row, so the whole row turns red, not one cell. The $A2<>"" part skips empty rows. Without it, every blank row below your products turns red too, because an empty stock cell counts as 0, and 0 is not more than an empty reorder level.
For a shopping list, add a tab called Reorder and type =IFERROR(FILTER(Products!A2:D200, Products!L2:L200="Reorder"), "Nothing to reorder") in A1. It shows only the items to buy, and updates by itself.
One more useful number: what your stock is worth at cost. Anywhere on the sheet, type =SUMPRODUCT(Products!E2:E200, Products!J2:J200). If that number keeps growing while sales stay flat, you are buying faster than you sell.
How often should you count your stock?
Once a month is a good rhythm for a small shop, and before Eid or any big sale. The sheet and the shelf always drift apart a little: a piece given to a cousin, a return that was never marked, an order typed twice.
- Count every SKU on the shelf. Write the real number next to the sheet number.
- Where they differ, look for the reason in Orders and Stock in first.
- If you cannot find it, add a Stock in row with the difference, plus or minus, and the note "count fix". Do not overwrite Opening stock.
- Note how many count fixes you made. If the number grows each month, an order step is being skipped.
When does a sheet stop being enough?
A sheet starts to fail you in these cases:
- You sell the same stock in more than one place, such as a shop counter, Daraz and your Facebook page. The sheet does not know about a sale until someone types it, so the last piece can sell twice. A POS or a proper inventory app fits better here.
- More than one person takes orders and they type at different times of day.
- You spend more time fixing the sheet than selling. If the monthly count fixes keep growing, the process is too manual.
- Customers order while you sleep. Orders that arrive at night are not in the sheet until you type them in the morning.
The last two are where a store that counts stock helps. On Kommercly, which we make, a Kommercly store has an optional Stock field for each product, as of October 2026. Each order lowers it, the product shows as out of stock at 0, and a cart cannot hold more than you have. Cancelling an order on the Orders page puts the units back. Products set to Pre-order are not counted.
Be clear about its limits. The phone store keeps one stock number per product, not one per size or colour, so a shop with many sizes still needs a sheet like the one above. It does not count sales from your shop counter or Daraz either. The setup guide shows how to set up the phone store.
If you sell in one place and want to stay in control, the free sheet above does the job. Start with it, and move only when the count fixes start to pile up.
If you take orders with a Google Form, our Google Form order form guide shows the fields to use, and you can copy its rows into the Orders tab. If you sell clothes, our Bangla guide to starting an online clothing business covers size charts and exchanges.
Quick answers
Can Google Sheets be used for inventory management?
Yes, for a small shop. A sheet with a Products tab, an Orders tab and a Stock in tab can show how many of each item you have, lower the number when you write an order, and colour an item when it runs low. It only knows about orders and stock you type in, so it works best when one person keeps it updated every day.
How do I make stock go down automatically in Google Sheets?
Keep orders on their own tab, one row per item sold, with the SKU and the quantity. On the Products tab, a SUMIFS formula adds up the quantity sold for each SKU, and the stock column is opening stock plus stock received minus sold. When you add an order row, the stock number drops by itself. Nothing changes if you forget to add the order.
How do I track sizes and colours in an inventory sheet?
Give every size and colour its own row and its own code, called a SKU, such as KRT-GRN-M for a green kurti in medium. Count and sell by SKU, not by product name. Then you can see that you have two medium green kurtis left even though you still have ten green kurtis in other sizes.
How do I get a low stock alert in Google Sheets?
Add a Reorder level column with the number at which you want to restock, and a Status formula such as IF(J2<=K2, "Reorder", "OK"). Then use Format, Conditional formatting, Custom formula is, with =AND($A2<>"", $J2<=$K2), to colour those rows. A Filter on the Status column shows only the items to reorder.
When is a Google Sheet not enough for inventory?
When stock is sold in more than one place at the same time, such as a shop counter, Daraz and your Facebook page, or when more than one person takes orders. A sheet does not know about a sale until someone types it, so the same last piece can be sold twice. Then you need a POS or inventory app, or a store that counts stock for you.
Sources, checked 2 October 2026: Google Docs Editors Help, "SUMIFS function" and "Use conditional formatting rules in Google Sheets" (support.google.com/docs). Stock numbers and SKUs in the tables are examples.
Make your store from your phone. Orders come to your WhatsApp.
Free plan, no card, no code. Add your first product with a photo from your phone.
Create Free StoreSee live stores made with Kommercly:Dobby (opens in a new tab)Stellify (opens in a new tab)
