Barcode label printing: a practical guide
Barcode label printing sounds like a solved problem until you actually have to do it: suddenly you are choosing between printer technologies, label materials, barcode symbologies, and software, and a wrong pick at any step produces labels that peel, smudge, or refuse to scan at the till. This guide walks through the whole decision in order, from what you are printing on to why a finished label sometimes will not scan, with plain recommendations at each step.
The two ways to print barcode labels
Every barcode labeling setup falls into one of two camps, and most of your other choices follow from this one.
Dedicated label printers print one label at a time onto a roll. Desktop thermal printers like the DYMO LabelWriter and Zebra ZD series are the standard here. They use direct thermal printing, which means heat-sensitive label stock and no ink or toner at all. The cost per label is low, there is nothing to refill, and printing 1 label or 300 takes no setup. This is the right choice for any store that labels products continuously: new stock arriving weekly, price changes, shelf labels.
Sheet labels through an office printer put 30 or more labels on a letter-size sheet that runs through the laser or inkjet you already own. The Avery 5160 layout with 30 labels per sheet is the most common. There is no hardware to buy, which makes sheets the cheapest way to start, and they are unbeatable for big one-time batches like labeling an entire backroom before a stocktake. The tradeoffs are alignment (a whole grid has to line up, not just one label) and waste when you need 7 labels from a 30-label sheet.
A reasonable rule: if you print labels most weeks, buy a thermal printer; the time it saves pays for the hardware within months. If labeling is occasional or you are just getting started, begin with sheets and a free template, and upgrade when the routine sticks.
Choosing a barcode type
The bars themselves follow a symbology, and you only need to know three.
Code 128 encodes letters, numbers, and symbols, and every modern scanner reads it. Use it for anything internal: SKUs, bin locations, batch numbers. Because no registry controls it, you can encode any value you want, today, for free.
EAN-13 and UPC-A are the numeric codes on retail packaging. The digits are not arbitrary: real ones begin with a company prefix licensed from GS1. If your barcodes only ever meet your own scanner, you can mint your own numbers. The moment your products sell through another retailer or a marketplace, you need a GS1 prefix so your numbers cannot collide with someone else's product.
QR codes hold far more data and are read by phones, which makes them useful for labels that link to instructions or warranty pages. Most retail point-of-sale scanning still expects a 1D code, so treat QR as an addition, not a replacement.
You can try any of these in a browser with our free barcode generator, which produces scannable Code 128, EAN-13, and UPC-A codes as PNG or SVG.
Sizing the label and what goes on it
A product label needs three things: the barcode with its quiet zone, a human-readable product name, and usually a price. The barcode should get the most space. Two size guidelines cover most retail cases:
- On small thermal labels around 1" tall, run the barcode across the majority of the width and keep it at least 0.4" tall. Bars that are too short scan poorly at an angle.
- Leave the quiet zone alone. The blank margin either side of the bars is part of the code. Labels designed with bars running to the edge are the most common self-inflicted scanning failure.
Material matters less than people fear, with one exception: direct thermal labels fade with heat and sunlight. For products that sit in a bright window or a hot warehouse for years, choose thermal transfer (ribbon-based) stock or laser sheets instead.
The software step
Printing one label from the printer vendor's app is easy. The real workflow question is where the data comes from: names, prices, and barcode values live in your inventory system, and retyping them into a label app is where errors creep in.
If your store runs on Shopify, the barcode value belongs in the variant field named Barcode (ISBN, UPC, GTIN, etc.), and a label app reads it from there. LabelFast pulls the product name, price, and barcode for every variant, fills in missing barcode values if you ask it to, and prints to DYMO and Zebra rolls or Avery sheets with quantities matched to stock on hand. The Shopify barcode label guide covers that workflow step by step, including DYMO setup and Zebra setup.
Whatever system you use, the principle is the same: labels should be generated from your inventory data, never typed alongside it.
Why a printed barcode will not scan
Almost every unscannable label traces back to one of five causes, in rough order of likelihood:
- Print scaling. Fit-to-page or shrink-to-fit distorts bar widths. Always print at 100% or actual size.
- Missing quiet zone. The bars were cropped or run to the label edge. Reprint with margin.
- Low contrast. Grey bars from a fading ribbon, a low-toner laser, or an inkjet on glossy stock. Barcodes want solid black on white.
- Wrong data in the code. The label scans fine but the till does not recognize it, because the encoded value does not match the barcode field in your system. This is a data problem wearing a printing costume.
- Damaged or fading labels. Direct thermal stock that has been in the sun, or labels rubbed by handling. Reprint, and reconsider the material.
Test with the scanner you actually use at the counter. Phone camera apps are more forgiving than hardware scanners, so a label that passes on your phone can still fail at the till.
Getting started checklist
- Decide roll versus sheets based on how often you print. Weekly or more: thermal printer. Occasionally: Avery 5160 sheets.
- Pick Code 128 for internal SKUs, EAN or UPC with a GS1 prefix for products sold beyond your own store.
- Store barcode values in your inventory system and generate labels from it, rather than typing labels by hand.
- Print at 100% scale, black on white, and keep the quiet zone.
- Scan-test one label from each new batch with your real scanner before applying the rest.
For Shopify stores, LabelFast handles the generate-and-print half of this list from inside your admin, starting free.