Barcode Guides · 7 min read

Barcode vs QR Code: How to Choose the Right Code for Your Label

By Toolsque Team · August 30, 2026 · Updated September 5, 2026

Print a 1D barcode such as UPC-A or Code 128 when a retail checkout, a warehouse gun, or any legacy laser scanner has to read the label, and print a QR code when people will scan with phones or you need more than about 48 characters of data. That single rule settles most cases, and the rest of this guide covers the exceptions with actual numbers.

The barcode vs QR code question is really a question about the reader, not the code. A barcode talks to dedicated scan hardware that stores have been installing since the first pack of gum crossed a scanner in 1974. A QR code talks to the camera already in everyone's pocket. Frame it that way and most decisions make themselves.

One dimension vs two

A 1D barcode stores data in the widths of bars and spaces along a single horizontal line. The scanner sweeps across it once, all the information lives in one axis, and the symbol grows physically longer with every character you add. A QR code is a 2D matrix defined by ISO/IEC 18004: a grid of dark and light square modules that carries data in both directions. The grid runs from 21x21 modules at version 1 up to 177x177 at version 40, so capacity grows by area instead of length.

Error handling is the other structural gap. A 1D symbol carries at most a single check digit, which detects a bad read but cannot repair anything. If a bar is torn or smudged, the scan simply fails. A QR code embeds Reed-Solomon error correction at four levels, L, M, Q, and H, which can rebuild roughly 7, 15, 25, or 30 percent of the codewords. A QR label with a corner scraped off often still scans. A barcode with one damaged bar usually does not.

Capacity: the real numbers

SymbologyTypeCapacityTypical jobBest read with
UPC-A1D12 digits, fixedRetail checkout, US and CanadaLaser or imager
EAN-131D13 digits, fixedRetail checkout, most other regionsLaser or imager
ITF-141D14 digits, fixedShipping cartons and casesLaser or imager
Code 1281DAbout 48 characters, practicalLogistics, internal labels, serialsLaser or imager
QR code2D7,089 digits or 4,296 alphanumeric or 2,953 bytes, maximumURLs, asset tags, payments, Wi-FiImager or any phone camera

Code 128 has no hard limit written into the symbology, but physics imposes one. Each character adds 11 modules of width, so past roughly 48 characters the symbol gets too long for common label stock and too wide for a clean single sweep. QR tops out at 7,089 digits or 4,296 alphanumeric characters at version 40 with low error correction, though a grid that size is a dense 177x177 block that phone cameras struggle to resolve. Practical QR content is a 30 to 60 character URL, which fits in versions 2 to 4 and scans from arm's length.

Scanner hardware: laser vs camera

Laser scanners sweep a beam across the bars and read the reflected pattern. They are fast, cheap, roughly 25 to 100 dollars for a basic gun, and strictly 1D: a laser line cannot decode a matrix. Camera-based 2D imagers photograph the code and decode the image, so they read both barcodes and QR, and typically cost 50 to 300 dollars per unit. In-counter supermarket scanners are omnidirectional units tuned for UPC throughput, which is why a cashier can drag a can past one at any angle and get a beep in well under a second.

Phones flipped this equation for QR. Native camera apps have decoded QR codes with no extra install since about 2017, when iOS 11 shipped it and Android followed, so the QR scanner base is now measured in billions of devices. Phones are noticeably worse at 1D: thin bars, glare on glossy labels, and focus hunting make UPC scanning with a camera slow and flaky. If your readers are customers with phones, QR wins by default. If your readers are employees holding scan guns, the gun decides.

The retail reality: checkout wants UPC or EAN

If the product sells through stores or distributors, the choice is made for you. Point of sale systems, distributors, and marketplaces expect a GS1-assigned 1D symbol: UPC-A with 12 digits in the US and Canada, EAN-13 with 13 digits nearly everywhere else. A QR code on the box will not ring up a sale, and neither will a barcode built on a number you made up, because the register matches those digits against a database of registered products. Real numbers come from GS1: in the US a single GTIN currently runs about 30 dollars one time, while a company prefix costs a few hundred dollars up front plus an annual renewal. While you wait on registration, the free UPC-A barcode generator is the right way to prototype packaging and check how a barcode block sits on your label.

Wholesale adds a quality layer. Distributors often require verified print quality, graded under ISO/IEC 15416 for 1D symbols and ISO/IEC 15415 for 2D, and many reject anything below a C grade. GS1 is also pushing its Sunrise 2027 program to get retail checkouts reading 2D codes, but until that scanner base actually turns over, the 1D symbol stays mandatory on retail packaging. Plan for UPC or EAN now, treat 2D at checkout as a bonus later.

Where QR wins

  • Anything a phone opens. Menus, manuals, payment links, review pages. A 1D symbol cannot hold a usable URL at any practical size.
  • No scanner budget. Every phone on your crew is already a reader. A small shop can label 200 tools with a QR asset tag generator and spend zero dollars on hardware.
  • Damage tolerance. Error correction level H survives about 30 percent damage, which is why QR keeps working on scuffed, dusty, or oily equipment where a 1D label would be dead.
  • Footprint. A 2 cm square QR holds data that would need a Code 128 strip 10 cm or longer. On a small label, the square wins.
  • Payloads past 48 characters. vCards, Wi-Fi credentials, and serialized records simply do not fit in a practical 1D symbol.

Where a 1D barcode wins

  • Retail checkout. UPC or EAN is the requirement, not a preference.
  • Sweep speed at volume. Laser hardware and omnidirectional in-counter scanners are tuned for thousands of 1D reads per shift.
  • Legacy systems. Warehouses run decades of installed 1D-only guns, conveyors, and WMS software that nobody will replace to accommodate your label.
  • Human-readable fallback. The digits printed under the bars can be keyed in by hand when a read fails. A QR payload cannot.

If you land on 1D for internal labels, the free barcode generator covers Code 128, UPC-A, EAN-13, Code 39, and ITF-14, calculates check digits on the retail formats, and Code 128 is the sensible default for anything that never leaves your building.

Using both on one label

The two formats coexist fine, and retail packaging pairs them constantly: UPC-A for the register, QR for the manual, warranty registration, or reorder link. Three layout rules keep both scannable. First, protect the quiet zones: UPC-A needs 9 modules of clear space on each side, and a QR code needs 4 modules on all four sides. Second, separate the symbols, ideally on different panels or with at least a couple of centimeters between them, so a checkout imager never has both in one field of view. Third, respect minimum sizes: UPC-A is specified at 37.29 x 25.91 mm at 100 percent magnification and may print anywhere from 80 to 200 percent, while a QR code needs an edge length of roughly one tenth of its intended scan distance.

Test both symbols on the actual printed label before committing to a batch. Blurry edges kill 1D and 2D alike, and the fixes in our guide to QR codes that will not scan apply to the print side of barcodes too.

The one-line decision

Retail shelf: UPC-A or EAN-13, registered through GS1. Internal logistics with existing scan guns: Code 128. Anything a customer or coworker scans with a phone: QR. Both audiences on one product: both codes, separated, with quiet zones intact. For more testing-first walkthroughs like this one, browse the rest of our guides or the full QR tools collection.

Related: UPC vs EAN · how to make a barcode for a product

About Toolsque
Every tool and guide here is built and tested by hand. Formulas are checked against published sources, and QR tools are verified with a real scanner before release. Read how we build and test.