If you need to identify a product at a checkout, a one-dimensional barcode is still the right answer. If you want people to open a link, a menu or a Wi-Fi login with the phone they already carry, use a QR code. If you want a tap-based interaction that works without opening any app or camera, an NFC tag is the better fit — as long as you accept its short range and small storage.
Those three sentences cover most decisions, but the details matter when you are printing thousands of labels or ordering hardware. This article walks through how each technology works, where it shines, where it fails, and how to combine them.
The three technologies in plain language
The classic barcode
A one-dimensional barcode is the row of black bars and white gaps you see on almost every product in a shop. It stores a short string of characters — typically a product code such as a GTIN/EAN or UPC number, or an internal SKU. The pattern encodes digits (and sometimes letters, depending on the symbology), not much else. A standard 12- or 13-digit retail barcode holds exactly that: a number that points to a record in a stock system.
Barcodes are read by shining a laser or an LED light across the pattern and measuring the reflections. Dedicated scanners do this instantly, even on a moving conveyor belt. Most modern phones can also read barcodes through the camera, though it is less natural than scanning a QR code.
The QR code
A QR code is a two-dimensional pattern of black and white squares. Because it uses both width and height, it holds far more data: a few thousand characters is a realistic ceiling, though in practice most QR codes carry a URL, a short text string, Wi-Fi credentials or contact details. The three squares in the corners let the reader find and orient the code at any angle.
QR codes are read by cameras. Every modern smartphone can scan them from the lock screen or camera app with no extra software. That single fact — no app needed — is why QR codes went from niche to everywhere.
The NFC tag
An NFC tag is a tiny passive chip with an antenna, usually embedded in a sticker, card or poster. It holds a small amount of data — typically a URL or a command — and has no battery. When a phone comes within a few centimetres, the phone's radio field powers the chip and reads it.
NFC is read by short-range radio, not light. The phone must be unlocked and held very close. Most modern smartphones — Android and iPhone alike — support reading NFC tags, though iPhones historically required an app or a specific gesture for third-party tags; recent iOS versions read background tags more readily. NFC's best-known consumer use is tap-to-pay, which uses the same radio technology with much stronger security layers.
What they can store
Storage is the clearest dividing line:
- Barcode: roughly 20–40 characters depending on the symbology. Enough for a product code, a serial number or a short member ID. Not enough for a URL with tracking parameters or any real text.
- QR code: up to a few thousand characters in theory; a few hundred in sensible practice. Enough for long URLs, full Wi-Fi credentials, vCards, plain paragraphs, or structured payloads.
- NFC tag: typically tens to a few hundred bytes on common tags. Enough for a URL or a small record. Not enough for documents or images.
A practical consequence: if your data grows — a long tracking URL, a JSON payload, a multi-line message — the barcode drops out first, and the NFC tag runs out sooner than you would expect.
How they are read
Barcodes need line of sight and a scanner that understands the symbology. Supermarket laser scanners are fast and reliable, but a phone camera scanning a tiny 1D barcode at an awkward angle can be fiddly. Barcodes also fail if the bars are smudged, torn or printed at low contrast.
QR codes need a camera and a bit of the code visible. They tolerate partial damage thanks to built-in error correction — a code with a logo covering part of it can still scan. They work at any rotation, from printed posters, screens, vehicle sides and wristbands. Distance depends on size: a code printed 2 cm tall scans from arm's length; a large code on a wall can scan from several metres away. A rough rule of thumb is that the scanning distance is around ten times the code's width.
NFC tags need proximity — a few centimetres — and an NFC-enabled, usually unlocked phone. No camera, no aiming, no lighting requirements. That makes NFC excellent in the dark, underwater-proof enclosures, or hands-free scenarios. But it also means one tag serves one person at a time, and a group of people cannot all "scan" a poster the way they can with a QR code.
Cost and effort
None of these technologies is expensive, but the cost profile differs:
- Barcodes are essentially free to generate and print. The main cost, if you want retail-standard codes, is the licensing of official GS1 numbers so your codes are unique worldwide. Printing adds nothing — the code is just ink.
- QR codes are free to generate (for example with a generator like QRCodeMax.Vip) and free to print. The only real decision is static versus dynamic: a static QR code encodes the destination directly and never changes; a dynamic QR code points through a redirect service so you can update the destination later, usually for a subscription.
- NFC tags are physical hardware. Individual blank stickers cost a small amount each; the price drops sharply at volume. You also need a phone or a dedicated writer to program them, and unlike print, a tag can be rewritten — an advantage or a risk depending on your use.
If you are printing 10,000 labels, barcodes and QR codes cost ink. NFC costs 10,000 chips.
Durability and environment
Barcodes are the most fragile of the three in plain paper form: a torn label or a grease smear can break the pattern. They are, however, easy to protect with laminates and are ubiquitous in industrial-grade formats.
QR codes are surprisingly tough. Error correction means a scuffed or partially covered code often still scans, and you can print them on almost anything — etched metal, embroidered fabric, engraved stone. Direct sunlight and wear matter less than for barcodes because the reader is looking for a pattern, not a precise reflection.
NFC tags are the most durable in one sense: a chip sealed inside a sticker, a card, a wristband or even under a surface keeps working for years with no visible wear, because nothing is read optically. Metal and liquid interfere with NFC, so tags meant for metal surfaces need special on-metal designs. Tags cannot be photocopied, which is a durability advantage of a different kind: the "original" is the only original.
Reading distance and throughput
- Barcode: centimetres to a metre or so with a dedicated scanner; fast, one item at a time, designed for high-throughput checkout.
- QR code: from centimetres to metres depending on printed size; many people can scan the same code simultaneously — ideal for a restaurant menu or event poster.
- NFC: a few centimetres, one phone at a time; deliberately short by design, which is a security feature as much as a limitation.
If you need many people to access the same thing at once, QR wins by a wide margin. If you need to identify items on a fast-moving belt, barcode wins. If the interaction is one person tapping one thing, NFC is the smoothest experience of all.
Security considerations
Barcodes carry no executable content — they are just numbers — so they pose no direct risk. The risk is upstream: a counterfeit product with a copied barcode looks legitimate to a scanner.
QR codes carry a bigger concern: they hide their destination. A person scanning a QR code cannot easily read the URL before opening it. Attackers have exploited this by sticking fake QR codes over real ones on parking meters and posters, leading people to phishing sites. Practical defences: use a reputable generator, physically secure printed codes (or check them), prefer dynamic QR codes from a provider you control so a compromised code can be retired, and encourage people to glance at the URL preview their phone shows before tapping.
NFC tags can also be rewritten by anyone with the right app unless you lock them. Most tags support permanent write-protection or password protection — set it before deployment. On the read side, NFC's centimetre range makes covert reading much harder than photographing a QR code from across a street. Note that tap-to-pay security comes from the payment system's cryptography, not from NFC itself; a plain NFC tag has no such protection, so never treat a tag as proof of anything valuable on its own.
For all three: the technology identifies or points; it does not authenticate. If a use case requires proving identity or authorisation, that logic must live in the system behind the code or tag.
Typical uses today
- Retail checkout: barcodes, everywhere, because scanners are fast, cheap and integrated into every point-of-sale system.
- Marketing, menus, posters, packaging: QR codes, because every phone can scan them, many people can scan one code at once, and the destination can be updated (with dynamic codes) when a campaign changes.
- Tap-to-pay, smart posters, asset tags, access cards, product authentication stickers: NFC, because the tap is fast, works without aiming a camera, and the tag can be locked against rewriting.
- Event tickets and transport: a mix — a QR code on the screen for scanning at a gate, NFC cards or phone wallets for tap-and-go.
A decision guide
Ask these questions in order:
- Is a fixed scanner reading fixed product codes at speed? Use a barcode. Example: supermarket inventory, warehouse bins, library books.
- Does the data need to be more than a short code — a URL, credentials, text? Use a QR code. Examples: restaurant table menu, Wi-Fi sharing card, link on a flyer, "scan to pay" sticker, instructions on packaging.
- Is the interaction one person tapping, hands-free, or in poor lighting — and does it need to survive years of handling? Use an NFC tag. Examples: smart poster with a tap-to-open link, tap-to-reorder button on a machine, NFC business card, asset tag on equipment.
- Do you need to update the destination after printing or deployment? Dynamic QR codes and NFC tags can both be repointed; printed static QR codes and barcodes cannot.
- Is phone support the deciding factor? QR codes work on essentially every modern smartphone with no app. NFC works on most modern smartphones but requires the reader to be enabled and the phone close. Barcodes work on phones, but the experience is less seamless than QR.
Combining them
The technologies are not rivals. A product box can carry a barcode for the warehouse, a QR code for the consumer, and an NFC tag inside the cap for authentication or reordering. A poster can have a large QR code for the crowd and an NFC tag at hand height for a smoother tap. Common real-world pairings:
- QR + NFC on the same sign: QR for reach, NFC for convenience.
- Barcode + QR on packaging: logistics scans the barcode, customers scan the QR.
- NFC + QR on a product label: the tag for the owner who registers the product, the QR for anyone with any phone.
When in doubt, put a QR code and an NFC tag side by side and let the user choose. The marginal cost is small and the coverage is nearly total.
Conclusion
Choose by interaction, not by fashion. Barcode when a scanner and a short code do the job — checkout, stock, logistics. QR code when any phone, any distance up to a few metres, and shared access matter — menus, links, campaigns. NFC when a single tap should just work — payments, smart posters, durable tags. All three are cheap, mature and can live on the same item, so the real decision is simply: who is reading it, from how far away, and how often?