Barcodes vs QR codes for inventory: which belongs in your stockroom
“We should barcode everything” is a common goal and a vague one. Barcodes, in the everyday sense, actually cover three different things that solve three different problems: the manufacturer’s UPC or EAN, your own internal SKU, and the QR code. Knowing which to reach for saves a lot of wasted label printing.
UPC and EAN: the code already on the product
If you buy and resell finished goods, most of your stock already carries a barcode, the UPC (North America) or EAN (most of the rest of the world) printed on the packaging. You don’t need to create anything: store that number against the item and a scan jumps straight to it. The one thing to get right is validation. UPC and EAN include a check digit, a final digit calculated from the others, so a single misread can be caught instantly rather than silently pulling up the wrong item. A good system validates that check digit for you.
Code 128: your own SKU for everything else
Plenty of stock has no barcode at all: components, bulk materials, refurbished goods, internal supplies. For
those, you generate your own. Code 128 is the workhorse here: it encodes letters and numbers, so a code like
SHELF-A-0042 becomes a crisp, scannable label you print and stick on. Same scanner, same workflow,
no manufacturer barcode required.
QR codes: a link, not just an ID
A 1D barcode is just an identifier: it says “this is item 4938” and something has to look that up. A QR code can carry a whole link, so scanning it with any phone camera opens the item’s page directly, no special hardware and no app. That makes QR perfect for shelf labels and shared spaces where anyone might need to check or update stock.
The takeaway
Use the UPC/EAN that’s already there for retail goods, print a Code 128 SKU for everything else, and lean on QR where a phone-friendly link beats a scanner. You don’t have to choose one religion. The point is that scanning, by any of these, is faster and far more accurate than scrolling a list or typing a name.