How to build a reseller inventory spreadsheet that still works at 2,000 items
Most resellers start with a list of what they bought. It breaks when items are cross-listed, stored in different totes, returned or sold months later. This guide shows a structure that holds up: where each item is, what it cost, where it sold, and what you actually kept after fees. You can build it yourself in 30 minutes, or download the free template with the formulas already in place.
1. Give every storage spot a code
A bin is anything you can walk back to: a tote, a shelf slot, a section of a clothing rail. Name them with short codes: A01, A02… or R2-S1-B4 (rack 2, shelf 1, bin 4). Write them in a Bins tab with a note of where each one is.
Label the bins. A printed QR code containing the bin code lets anyone confirm the right bin with a phone camera. You can make a whole sheet of them free with the bulk QR generator (paste a list, choose an Avery 5160 or A4 layout) — see Avery label templates.
2. One row per item, with a SKU that starts with its bin
Use a format like A01-0007: the bin, then a running number that never repeats. Put the same SKU in the listing's SKU or custom-label field on eBay, Poshmark or Mercari, so the sale notification tells you which bin to open.
SKU | Item | Bin | Source | Bought | Cost | Status | Listed on | List date | List price | Sold on | Sold date | Sale price | Shipping charged | Sales tax | Label cost | Fees | Net profit | ROI | Days to sell
Make Status a dropdown (Unlisted, Listed, Sold, Returned, Donated/Kept) so filters and totals stay reliable. If an item moves, change its Bin column; the SKU can stay.
3. Put platform fees in a table, not in your head
Create a Settings tab with one row per platform: fee %, whether the % also applies to shipping, any fixed per-order fee and any flat-fee rule. Then each sale looks up its platform. A simplified version of the rule used in our template:
Fee = IF(price < flat_threshold, flat_fee,
pct × (price + IF(pct_on_shipping, shipping, 0) + IF(pct_on_tax, sales_tax, 0))
+ fixed_fee
+ processing_pct × (price + shipping) + processing_fixed)Typical US defaults (verify — they change): eBay 13.6% of item + shipping + tax plus $0.30–$0.40; Poshmark $2.95 under $15, otherwise 20%; Mercari 10% of item + shipping; Depop 3.3% + $0.45 processing; Whatnot 8% + 2.9% + $0.30. Try them on one sale with the reseller fee calculator.
4. Profit, ROI and days to sell
Net profit = sale price + shipping charged − label cost − fees − item cost ROI = net profit ÷ item cost Days to sell = sold date − list date
Sum net profit by sold month for a simple P&L, and subtract supplies, storage and mileage from a separate Expenses tab.
5. Review aging stock every week
Add a "days listed" column for unsold items (TODAY() − list date) and colour anything over 90 days. Count items in 0–30, 31–90, 91–180 and 180+ day buckets. The older buckets are where your cash is stuck: drop the price, relist, bundle, or move it to another platform.
Free template
The Reseller Inventory Tracker LITE has all of the above set up: inventory rows with dropdowns, the fee table for eBay, Poshmark, Mercari, Depop and Whatnot, automatic fees, net profit, ROI, days to sell, a summary, and 30 printable QR bin labels (Avery 5160). It opens in Google Sheets and Excel.
Download the free LITE tracker (.zip) Compare with the full kit
Questions
Either. Google Sheets is free, works on your phone and is easy to share with a helper; Excel is faster with very large sheets. Avoid features only one of them has if you might switch.
Start with about a dozen: SKU, item, bin, cost, status, platform, list date, sold date, sale price, shipping charged, label cost, fees and net profit. Add more only when you actually use them.
Keep one row per physical item. Note every platform it's listed on, and record the one it sold on — that is the one that decides the fee.
When you have several people listing at once, need automatic delisting across platforms, or the sheet gets slow. Until then a spreadsheet is cheaper and you control the data.