Troubleshooting
Barcode labels won't scan: 6 fixes
Dead barcodes are a physical problem: work through size, quiet zone, contrast, print scaling, density and truncation — in the order most likely to fix yours.
7 min read · Published July 9, 2026 · Updated July 9, 2026
A barcode that will not scan announces itself at the worst possible moment: at the register, with a customer waiting, while the cashier types a twelve-digit number by hand. And unlike a software bug, it produces no error message — the scanner just stays silent. The good news is that scan failures are physical, and the physics is short: in practice, almost every dead label traces back to one of six causes.
Before fixing anything, gather two facts. First: does the same barcode scan from your screen? Point the scanner, or a phone camera app, at the on-screen preview. If it reads there but not on paper, the code itself is fine and the problem lives in printing. Second: does the scanner read the label but ring up the wrong product? That is not a scanning failure at all — it is a duplicate number, and the fix is in How to generate unique barcode numbers for your products.
With those two answers in hand, work through the six fixes below. They are ordered by how often each one is the culprit and how quickly you can test it — most dead labels come back to life at step one or two.
The six fixes, in order
- 1
Print at 100% — never 'Fit to page'
Scanners read a barcode by measuring the relative widths of bars and gaps, and those widths print at whole-dot precision. Any scaling — including the quiet 96-97% that 'Fit to page' applies — redistributes bar widths unevenly and can blur narrow bars into their neighbors. Reprint with scaling set to 100% or 'Actual size'; on label sheets this also fixes row drift.
- 2
Restore the quiet zone
Every barcode needs clear, empty space before its first bar and after its last — that margin is how the scanner locates the code's start and stop patterns. A long product title crowding the code, a decorative border, or a code that runs to the label's edge all eat the quiet zone. Leave clear space on both sides: as a rule of thumb, at least ten times the width of the narrowest bar, and more never hurts.
- 3
Make the code physically bigger
Below roughly 10 mm of height or width, ordinary retail codes stop scanning reliably — the bars fall below what the printer can render distinctly and the scanner can resolve. If your label is tiny (jewelry tags are the classic case), give the barcode the label's longest dimension, encode less data, or move up one label size.
- 4
Fix the contrast
Scanners need dark bars on a light background. Black on white is the reference; very dark blue or green on white also reads. Red or orange bars are effectively invisible to laser scanners, which illuminate in red light — red reflects it just like white does. Avoid printing codes over colored backgrounds, photos or patterns, and prefer matte label stock: glossy surfaces bounce the scanner's own light back at it.
- 5
Sharpen the print
Fuzzy edges kill narrow bars. On thermal printers, clean the print head and raise the print density if the driver allows it. On lasers, replace a fading toner cartridge. On inkjets, check that the label stock is not soaking up ink and letting it bleed. Print label runs at the driver's higher quality setting — a barcode is a small precision graphic, not text.
- 6
Stop truncating the code
When the encoded text is too long for the label, some tools clip the barcode at the label edge or squeeze the bars below printable width — either way the code cannot scan. Encode less (a short internal code instead of a long name), use a denser symbology (Code 128 packs more into the same width than older symbologies like Code 39), or switch to a wider label.
Symptom → most likely cause
| Symptom | Most likely cause | Where to start |
|---|---|---|
| Scans on screen, not on paper | Print scaling or print quality | Fixes 1 and 5 |
| Reads on one scanner but not another | Marginal size or quiet zone | Fixes 2 and 3 |
| Never reads anywhere, even on screen | Truncated or malformed code | Fix 6, then regenerate the code |
| Beeps, but rings up the wrong product | Duplicate barcode in the catalog | Not a scan problem — generate unique codes |
| Scanned fine when printed, fails weeks later | Direct thermal fade from heat, sunlight or friction | Reprint; keep thermal labels away from heat |
If several symptoms apply at once, resist the urge to change five things together. Fix one variable, print one label, scan it, and move on — otherwise you will not know which change worked, and the failure will come back the next time any setting resets.
Why these failures happen
A scanner reads ratios, not pictures
A barcode is a sequence of bar and gap widths measured relative to each other. The printer renders those widths in whole dots — at 300 dpi, a narrow bar may be exactly three dots wide. Scale the page to 97% and some three-dot bars become two dots while others stay at three: the ratios the scanner depends on are now wrong. That is why scaling damage is invisible to the eye but fatal to the read, and why 'it looks fine' proves nothing.
The quiet zone is part of the code
The blank margins are not wasted space; they are how the scanner separates the code from everything around it. Without a clean quiet zone, the start and stop patterns cannot be located and the whole label reads as noise. Designs that 'tidy up' a label by boxing the barcode inside a border are the classic self-inflicted version of this failure.
Thermal labels age
Direct thermal labels — the kind most desktop label printers use — form their image with heat, and keep responding to heat, friction and sunlight after printing. A label that scanned on day one can fade past readability after months on a sunny shelf. If labels must stay scannable for a long time or in harsh conditions, reprint them periodically or choose media rated for longevity.
Doing this with Solvi Barcode Labels
Solvi Barcode Labels is built so that most of this page never applies. Label presets keep a proper quiet zone around every code; label sizes below the 10 mm readability threshold trigger a warning before you print; and a code too long to render scannably at your label's width is flagged line by line instead of being silently squeezed or clipped.
Scaling — the most frequent culprit — is attacked from both ends: the PDF embeds the exact page size of your media so no scaling is ever needed, and the download screen repeats the one instruction that matters: print at 100%, never 'Fit to page'. Duplicates are prevented at the source, since generated codes are checked against your whole catalog before being saved to your variants in Shopify.
Printer-specific setup lives in the two companion guides: How to print Avery 5160 barcode labels from Shopify for laser and inkjet sheets, and How to print barcode labels on a Dymo printer from Shopify for thermal rolls.
Frequently asked questions
Why does the barcode scan from my phone screen but not from the printed label?
Because the code data is fine and the print is not. Screens render the code with high contrast and perfectly sharp edges; paper adds print scaling, density and label material into the chain. Reprint at 100% scale on a higher quality setting — those two changes resolve most scans-on-screen-but-not-on-paper cases.
Is there a minimum size for a barcode label?
As a practical rule, a retail barcode narrower or shorter than about 10 mm becomes unreliable with ordinary printers and scanners. The true minimum depends on the symbology, the amount of data encoded and the printer's resolution — so treat 10 mm as the floor and always scan-test a printed sample before committing to a full run.
Can I print barcodes in color?
The safe answer is black bars on a white background. Very dark blue or green bars on white usually read; red or orange bars do not, because laser scanners illuminate in red light and red bars reflect it the way white does. Colored backgrounds, gradients and images behind the code all reduce contrast and are better avoided.
The scanner beeps and finds a product — just the wrong one. What is happening?
Two variants in your catalog share the same barcode, and the register returned whichever one it matched. This is a data problem, not a printing problem: audit the barcode field for duplicates, decide which variant keeps the number, and generate fresh unique codes for the others. Our guide on generating unique barcode numbers covers how to prevent it structurally.
Do thermal labels stop scanning over time?
They can. Direct thermal media forms its image with heat and keeps reacting to heat, sunlight and friction after printing, so contrast degrades — sometimes past the point of readability — after months in poor conditions. For long-lived labels, keep them away from heat and direct sun, or reprint periodically.
Does it matter whether I use Code 128 or a UPC for in-store labels?
For your own store, both scan equally well — the choice is about data, not scannability. Code 128 is denser and encodes letters as well as digits, which makes it the practical pick for internal codes; UPC and EAN belong to products with GS1-registered numbers. What decides whether a label scans is the printing: size, quiet zone, contrast and 100% scale.
Related guides
How-to
How to print Avery 5160 barcode labels from Shopify
The exact Avery 5160 geometry — 2.625″ × 1″ labels, 30 per sheet — plus the step-by-step workflow and print settings that keep all thirty barcodes aligned.
8 min read
How-to
How to print barcode labels on a Dymo printer from Shopify
Rolls are not sheets: set the PDF page size to the label size, print at 100%, and use die-cut media — barcode printing on a Dymo LabelWriter, step by step.
8 min read
How-to
How to generate unique barcode numbers for your products
When an internal Code 128 code is enough, when you need GS1-registered UPC or EAN numbers, and how to keep every barcode in your catalog unique.
8 min read
Do this in minutes with Solvi Barcode Labels
Print barcode labels right the first time: unique codes, true-size sheets, ready in minutes.