Article

How QR Codes Still Scan Even When Part of Them Is Damaged

Published 2026-09-14

An unlikely origin story

QR codes were invented in 1994 by Denso Wave, a subsidiary of Toyota, to track automotive parts through the manufacturing process faster than the barcodes of the time allowed. The "QR" stands for "Quick Response" — the entire design goal was to be scanned and decoded almost instantly, which is also why it can hold far more data than a traditional 1D barcode in the same physical space, by encoding information in two dimensions instead of one.

The trick that makes damaged codes still work

You've probably seen a QR code with a logo stamped in the middle, or one that's slightly scratched or dirty, and it still scans fine. This isn't luck — it's a deliberate feature called error correction, based on a mathematical technique (Reed-Solomon error correction) that adds redundant data to the code. Depending on the error-correction level chosen when the code is generated, a QR code can lose up to roughly 7%, 15%, 25% or even 30% of its total data and still be fully readable, because the redundant portions let a scanner reconstruct what was lost.

Why there's a size trade-off

Higher error correction means more of the code's area is spent on redundancy rather than your actual data, which is why a high-error-correction QR code with the same content looks visually denser (more small squares) than a low-error-correction one. That's the real reason our tool lets you choose a level rather than always using the maximum: a code for a screen that won't get damaged can stay small and simple, while a code destined for a sticker or outdoor sign benefits from higher correction.

What's actually inside the pattern

Beyond your data and the error-correction bits, every QR code contains three large square "finder patterns" in three corners, which is what lets a scanner instantly recognize the code and figure out its orientation, even if the code is rotated, viewed at an angle, or partially outside the camera frame.

Choosing the right level for your use case

Medium error correction is a sensible default for a code that will live on a screen or a well-protected printed page. If you're printing on a label, sticker, or anything that might get scuffed, bent, or exposed to weather, bump it up to High. Our QR Code Generator lets you pick the level and download the result as a PNG at the size you need.

Ready to try it yourself?
Open the QR Code Generator →