QR kod okuyucu ile barkod tarayıcı arasındaki fark nedir?
QR kod okuyucular ile barkod tarayıcılar arasındaki farkı keşfedin. Nasıl çalıştıklarını, benzersiz özelliklerini ve ihtiyaçlarınıza en uygun olanını öğrenin.
İçindekiler
The difference between a QR code reader and a barcode scanner is not really a difference between two apps. It is a difference between two families of symbology — one-dimensional linear barcodes and two-dimensional matrix codes — and between the hardware built to decode each. Get that distinction right and every practical question about which one to use answers itself.
A traditional barcode stores a small fixed number in the widths of vertical bars and spaces. A QR code stores an arbitrary block of data in a square grid of modules, with built-in error correction that lets it survive damage. These are genuinely different technologies with different capacities, failure modes and readers — and much of what is written about them online is wrong on the specifics.
The short answer
A barcode scanner is hardware that decodes printed symbols. Older and cheaper models use a laser and read only linear (1D) barcodes. Modern models use a camera sensor — a 2D area imager — and read both 1D barcodes and 2D codes including QR.
A QR code reader is usually software: a phone camera plus a decoding algorithm. Because it works from a captured image rather than a scanning beam, it can generally read linear barcodes too, though less reliably than dedicated hardware.
So the useful question is not "reader or scanner" but two separate ones: which symbology should my data live in, and what hardware will be pointed at it.
1D barcodes: what a linear symbology actually is
A linear barcode encodes data in one dimension. Information lives entirely in the relative widths of bars and spaces along a horizontal axis; the height carries no data and exists only so a scanning beam can find the symbol. That is why you can cut a barcode in half horizontally and it still scans.
UPC and EAN: fixed-length numbers
The barcode on retail packaging is almost always UPC-A or EAN-13. UPC-A holds exactly 12 digits. No letters, no punctuation, no variable length — and the last digit is a check digit computed by summing the odd-position digits, multiplying by three, adding the even-position digits, then taking the result modulo 10. UPC-E is a zero-suppressed six-digit variant for small packages, and EAN-13 is a superset: every UPC-A becomes a valid EAN-13 by prepending a zero.
The critical point is that these codes carry an identifier, not information. A UPC does not contain the product name, price or manufacturer. It contains a number a point-of-sale database looks up. Every article claiming "barcodes hold product information" has this backwards.
Code 128: the variable-length workhorse
Behind the scenes in logistics, Code 128 (ISO/IEC 15417) does the heavy lifting. It encodes all 256 single-byte characters through three code sets — Set A for digits, uppercase and control codes, Set B for the full printable ASCII range including lowercase, and Set C for numeric pairs, packing two digits into one symbol character. A single symbol can switch sets mid-stream, and ends with a check character derived from a modulo-103 weighted sum.
Code 128 is variable-length, which is where the repeated "barcodes only hold 20–25 characters" claim goes wrong. There is no character ceiling in the specification. The limit is physical: every extra character widens the symbol, and a barcode wider than the scanner's field of view or the label itself cannot be read. In practice a few dozen characters — a constraint of label geometry, not symbology.
Check digits are not error correction
This is the most consequential difference between 1D and 2D codes, and it is almost never mentioned. A UPC check digit and a Code 128 check character do one thing: detect that a misread occurred. They repair nothing. Scratch, smudge or tear a linear barcode and the scanner does not recover the data — it refuses to decode, and someone types the number in by hand.
2D matrix codes: what a QR code actually is
A QR code (ISO/IEC 18004) encodes data in both dimensions, as a grid of square modules. The three large corner squares are finder patterns that let a decoder locate and orient the symbol from any rotation — which is why you can scan one upside down. Smaller alignment patterns correct perspective distortion when the code is photographed at an angle or wrapped around a curve.
Versions and physical size
QR codes come in 40 versions: version 1 is a 21 × 21 module grid, version 40 is 177 × 177, each step adding four modules per side. More data means more modules, and more modules in the same printed area means smaller ones — which is why an over-stuffed QR code fails to scan from a distance or on a low-resolution camera. Capacity is not free.
Reed–Solomon error correction
Every QR code carries redundant data generated by Reed–Solomon coding, at one of four selectable levels:
| Level | Codewords recoverable | Use it when |
|---|---|---|
| L | About 7% | Clean indoor environments needing maximum data in the smallest symbol |
| M | About 15% | General-purpose default — the most commonly selected level |
| Q | About 25% | Print that will get dirty, scuffed or partly covered |
| H | About 30% | Industrial surfaces, or codes with a logo overlaid on the centre |
This is why a QR code with a coffee ring across it still works, and why a brand logo can sit in the middle of one. At level H roughly a third of the symbol can be destroyed and the decoder still reconstructs the data exactly. No 1D barcode has any equivalent.
What a QR code can and cannot store
At the largest version and lowest error correction level, a QR code holds at most 7,089 numeric digits, 4,296 alphanumeric characters, 2,953 bytes of binary data, or 1,817 kanji characters. Raise the error correction level and each figure drops substantially.
What a QR code cannot do is store a photograph or video, despite a persistent claim otherwise. At 2,953 bytes maximum it cannot hold any meaningful image file; what it holds is a URL pointing to the media. That distinction matters, because the content behind a code can be changed, tracked or taken offline without reprinting it — and because a scanned QR code is a link deserving the same caution as any other. To see where one leads before opening it, decode it with a QR code reader and inspect the destination, expanding it with a URL unshortener if it turns out to be a redirect.
Capacity and capability compared
| UPC-A / EAN-13 | Code 128 | QR Code | |
|---|---|---|---|
| Dimensions | 1D linear | 1D linear | 2D matrix |
| Character set | Digits only | All 256 single-byte characters | Numeric, alphanumeric, byte, kanji |
| Length | Fixed: 12 or 13 digits | Variable, limited by label width | Variable, up to version 40 |
| Maximum data | 13 digits | Practically a few dozen characters | 7,089 numeric / 4,296 alphanumeric / 2,953 bytes |
| Damage tolerance | None — check digit only detects errors | None — check character only detects errors | 7–30% recoverable via Reed–Solomon |
| Orientation | Must be roughly aligned with the beam | Must be roughly aligned with the beam | Any rotation; tolerates perspective skew |
| Standard | GS1 EAN/UPC | ISO/IEC 15417 | ISO/IEC 18004 |
| Typical use | Retail checkout | Shipping, warehousing, healthcare | Consumer links, payments, tickets, Wi-Fi |
QR is not the only 2D symbology. Data Matrix (ISO/IEC 16022) packs small payloads into a very compact square and dominates electronics and pharmaceutical marking. PDF417 (ISO/IEC 15438) is the stacked rectangular code on driving licences and boarding passes. Aztec (ISO/IEC 24778) needs no quiet zone, which is why transit tickets use it. QR won the consumer battle because phones read it natively.
The hardware: what can actually read what
This is where most comparisons go wrong. "Barcode scanners only read linear barcodes" was true fifteen years ago and is false now.
| Reader type | How it works | Reads 1D | Reads QR / 2D |
|---|---|---|---|
| Laser scanner | A laser sweeps a line across the symbol, measuring reflected light | Yes | No |
| Linear (CCD) imager | A single row of sensors captures one line | Yes | No |
| 2D area imager | A camera captures a full image, decoded in software | Yes | Yes |
| Phone camera | General-purpose camera plus a decoding library | Usually | Yes |
The dividing line is the sensor, not the label on the box. A laser physically cannot read a QR code, because sweeping one line across a two-dimensional grid captures a single row of it. A 2D area imager takes a picture and decodes anything it recognises — which is why supermarket checkouts swapped lasers for imagers once phone payment and loyalty codes arrived.
Phones are the convenient end and the unreliable end at once. Since iOS 11 the iPhone Camera app recognises QR codes natively with no app required, and Android does the same through its camera and Google Lens. But a phone is optimised for photographs, not decoding at speed. Point one at a warehouse shelf label in poor light a hundred times an hour and it will be slower and less accurate than a dedicated imager with its own illumination and aiming pattern.
Where each one wins
Choose a 1D barcode when you are looking up a record in a database and nothing else: retail checkout, inventory counts, asset tags, library books, shipping labels. The symbol is small, prints cheaply on anything, and hardware reads it in a fraction of a second. The retail supply chain runs on this and is not changing quickly.
Choose a QR code when a human with a phone is the reader, or the code must carry data rather than a pointer: menus, event tickets, payment requests, Wi-Fi credentials, vCard details, app links, product authentication. Error correction lets it survive real-world print, and phone-native scanning removes app-install friction.
Choose both more often than you would expect. A shipping label commonly carries a Code 128 symbol for the automated sorter and a QR code for the recipient's phone — not competitors, just different readers.
How to choose for your own project
- Decide what the code carries. An identifier a database resolves means 1D. Self-contained data — a URL, Wi-Fi credentials, a contact card — means QR.
- Identify the reader. Consumer phones point to QR; existing warehouse laser scanners point to 1D unless you replace them with imagers.
- Check whether a standard already governs your data. Retail product identification means GS1 EAN/UPC and you get no choice; regulated sectors often mandate a symbology.
- Size the symbol before designing the label. For QR, keep the payload short so the module count stays low — encode a short URL rather than one loaded with tracking parameters. Tidy query strings first with a URL parser and confirm special characters are escaped with a URL encoder.
- Pick an error correction level deliberately. M for general use; Q or H for anything handled, curved or logo-overlaid.
- Generate and test on real hardware. Produce the symbol with a QR generator, print it at the exact size you will use, and scan it with the devices your users actually have, in the lighting they actually have.
- Verify what the code resolves to. Decode your printed sample with a QR code reader and confirm the destination before committing to a print run.
Myths worth dropping
- "QR codes can store photos and videos." They cannot. A QR code holds at most 2,953 bytes — a link to media, not the media.
- "Barcode scanners can't read QR codes." Laser scanners cannot. 2D area imagers — the majority of scanners sold today — read both.
- "Barcodes hold 20–25 characters." UPC-A holds exactly 12 digits; Code 128 is variable-length with no specification ceiling, limited only by label width.
- "Barcodes contain product information." They contain an identifier. The information lives in a database.
- "QR codes always need a special app." Not since iOS 11, and not on modern Android. The camera handles it.
- "A damaged code just needs a better scanner." For 1D, damage is fatal regardless of hardware. For QR, damage within the error correction budget is recoverable by any decoder.
Frequently asked questions
Can a QR code reader scan a normal barcode?
Usually, yes. Because a QR reader works from a captured image, the same software typically decodes linear symbologies too. The caveat is reliability: a phone camera in poor light or at an angle is meaningfully slower and less accurate than a dedicated imager. Fine for occasional use, not for hundreds of scans an hour.
How much data can a QR code actually hold?
At version 40 with the lowest error correction level: up to 7,089 numeric digits, 4,296 alphanumeric characters, 2,953 bytes of binary data, or 1,817 kanji characters. Higher error correction cuts those figures substantially, and a symbol that large is hard to scan in practice. Real-world QR codes usually carry well under a hundred characters.
Why do QR codes still work when they are partly damaged?
Reed–Solomon error correction. Depending on the level chosen at generation, roughly 7% to 30% of codewords can be destroyed and the decoder still reconstructs the data exactly. Linear barcodes have no equivalent — their check digit detects an error but cannot repair one.
Are barcodes obsolete now that QR codes exist?
No. Global retail runs on GS1 EAN/UPC symbols: cheaper to print, smaller for the same identifier, and read instantly by existing laser hardware. QR is better for consumer-facing, data-carrying uses; 1D remains better for high-speed identifier lookup. Most supply chains use both.
Do I need to buy a barcode scanner, or is my phone enough?
Your phone is enough for occasional scanning or reading a consumer QR code. Buy dedicated hardware once volume, speed or environment matters — a warehouse, a checkout lane, a clinical setting — and choose a 2D area imager rather than a laser so it reads both families.
Is it safe to scan any QR code?
Treat a QR code like a link from an unknown sender, because that is what it is. You cannot read a URL by looking at the pattern, and criminals sticker malicious codes over legitimate ones on parking meters and payment terminals. Preview the destination first — decode the image, check the domain, and expand any shortened link.
The bottom line
A barcode scanner and a QR code reader answer different questions. Linear barcodes encode a short fixed identifier in one dimension with no ability to survive damage, and are read fastest by dedicated hardware. QR codes encode substantial self-contained data in two dimensions with 7–30% damage tolerance, and are read natively by every modern phone. Pick the symbology by what the data must do and who holds the reader — and remember the reader distinction is really about the sensor: lasers see lines, imagers see pictures, and only pictures can decode a matrix.
The UrwaTools Editorial Team delivers clear, practical, and trustworthy content designed to help users solve problems efficiently. Our articles focus on accurac...