Good inventory labeling uses five kinds of label, each answering one question: shelf labels say where things go, item labels say what something is, lot labels say which batch it came from and when it expires, case labels say what's in a box a customer will receive, and status labels say whether you're allowed to use it. Put a short location code on every shelf, a barcode on anything you count often, and a big, readable date on everything perishable. Then the person who started last week can find the flour, take the oldest bag and know the tub on the top shelf is on hold. Below is what goes on each label, a location code scheme, color ideas, and which printer to use.
The short version
- Shelf labels: a location code in large print, like DRY-A-2, and a barcode if you scan.
- Item labels: the name, the SKU, the unit you count in, and a barcode.
- Lot labels: the lot code and the best-by or use-by date, readable from a step away.
- Case labels: what a customer's warehouse needs to scan: product, count, lot and date.
- Status labels: HOLD, USE FIRST, OPENED with the date. Bright and impossible to miss.
- TaroStack prints shelf, item and lot labels from the stock it already knows. More below.
The five labels
| Label | Answers | What goes on it |
|---|---|---|
| Shelf (location) | Where does it go? | Location code, the zone's name, a barcode |
| Item | What is it? | Name, SKU, unit (bag, kg, each), a barcode |
| Lot and date | Which batch, and until when? | Lot code, best-by or use-by, item name, quantity |
| Case | What's in this box? | Product, count per case, lot, date, the case barcode |
| Status | May I use it? | HOLD, QUARANTINE, USE FIRST, OPENED + date |
Plenty of small businesses start with item labels and skip the rest. The lot label is the one that pays for itself, because it's what makes the oldest stock go first and what a recall runs on. How to build the code itself is in how to create lot numbers.
A location code anyone can read
A location code is a short address: zone, then rack or shelf unit, then shelf, then position if you need it.
| Code | Means |
|---|---|
| DRY-A-2 | Dry store, rack A, second shelf |
| WALK-B-1 | Walk-in, rack B, bottom shelf |
| FRZ-1 | Freezer, top shelf |
| PACK-C-3-04 | Packaging store, rack C, third shelf, fourth spot |
Rules that keep it working: number shelves from the bottom up, the same way everywhere; keep codes short enough to say out loud; and never reuse a code for a different place. Put the label on the shelf edge, not on the box, because boxes leave and shelves don't.
Lot and date labels that get read
A date label only works if it's read at the moment someone reaches for the box. So make the date the biggest thing on it, in a format nobody can misread (DEC 21 2026 rather than 12/21/26, which reads as two different dates in two different countries), and put it on the side that faces out. If a supplier's own date is printed small on the bottom of a case, relabel it at receiving rather than relying on everyone to turn the case over.
For products you make, the lot label goes on the package itself. What a food lot code and date should look like is in the lot number on food packaging, and how best-by, use-by and sell-by differ is in best by date format.
Case labels for wholesale
If a store or distributor buys by the case, the outer box needs its own label: the product, how many are inside, the lot and the date, and often a barcode for the case itself, separate from the one on each unit. A barcode that carries the product code, the use-by date and the lot together is a GS1-128 barcode, and the codes behind it are explained in GS1 barcodes for small food producers.
Status labels and color ideas
| Idea | How it works |
|---|---|
| Day-of-week colors | A colored dot for the day it was opened or made; the color tells you its age at a glance |
| HOLD in red | Anything suspect, damaged or waiting for a test gets a red label and its own shelf |
| USE FIRST in yellow | One shelf per area for anything due in the next few days |
| OPENED + date | Every opened tub or bag gets the day it was opened and its new use-by |
| One color per zone | Shelf labels in the walk-in one color, dry store another, so a box in the wrong place stands out |
Keep the colors few and the same everywhere. Five colors with five meanings is a system; twelve is decoration.
Which printer, which labels
| Option | Good for | Watch out for |
|---|---|---|
| Sheets of labels on an office printer | Shelf and item labels, printed once | Smudges in the cold; slow for daily lot labels |
| Direct thermal printer | Lot and date labels printed every day, shipping labels | Fades in heat and sunlight; fine for months, not years |
| Thermal transfer printer, with a ribbon | Case labels and anything that must last | Costs more, ribbons to buy |
| Hand-written | A stopgap | Unreadable dates are how old stock gets used last |
For daily lot labels, a direct thermal printer and a roll of labels around 2 by 1 inches or 4 by 6 inches covers most small producers. Industrial printers such as Zebra models read a label language called ZPL, which is worth knowing when you choose software that prints to them.
Where this stops working
Labels go wrong in one quiet way: they stop matching the records. Someone hand-writes a lot code at receiving and types a different one into the spreadsheet. A relabelled case carries yesterday's date. The shelf label says DRY-A-2 and the count sheet calls it "top shelf by the door". Each label looks fine, and the system only falls apart the day you need it, when a recall names a lot and the label on the tub doesn't match anything on paper.
How TaroStack does it
In TaroStack, labels come from the records, so the label and the stock can't disagree.
Lot labels print from the lot itself, with the lot code, the item and the date, and a GS1-128 barcode carrying the product code, the use-by date and the lot when the item has a GTIN. They print in a sheet on an ordinary printer, or as a ZPL file for a Zebra printer. Shelf labels print for every location, so stock can be found by shelf, and item labels print for anything you scan. Delivery notes, goods-received notes, count sheets and batch records print from the same records too.
And the labels do work once they're on. Every screen that takes a code takes a scan: receiving, counting, picking and recording a batch, with the phone's camera or any USB or Bluetooth scanner. Scanning a supplier's GS1 case label at receiving fills in its lot and use-by date for you, so the lot on your shelf is the lot in your records from the first minute. Stock is kept per site and per shelf, so the shelf label and the record name the same place, and counting works with no signal in the walk-in.
The status labels are statuses. Stock on hold or in quarantine sits apart from what's available to sell, so the red label and the system say the same thing, and nobody picks it by accident. Oldest date goes first everywhere stock is picked, so the USE FIRST shelf is the system's default rather than a habit to remember. And when a lot is about to expire, TaroStack tells you what will be left over unsold and what it'll cost, while there's still time to use it.
| The label | Hand-made | In TaroStack |
|---|---|---|
| Lot label | Written at receiving, maybe | Printed from the lot, barcode and date included |
| Shelf label | A marker on tape | Printed per location, scannable |
| HOLD | A red sticker someone has to notice | A status that keeps it out of picking |
| USE FIRST | A shelf and a habit | Oldest date first, everywhere, automatically |
Lots, lot labels, shelf labels and holds are on every plan, from $49 a month, and the first 30 days are free, with no credit card. If you'd like a hand setting up, ask, and we'll do it with you.
