A QR code is a grid of black and white squares that encodes data with enough redundancy to survive damage, dirt and a logo in the middle.
Short answer: a QR code stores data as a pattern of dark and light modules on a square grid. Finder patterns in three corners tell the scanner where the code is and how it is oriented. Error correction adds redundant data so the code still reads even when part of it is damaged, covered or dirty.
QR codes use Reed–Solomon error correction, which stores recovery data alongside the payload. There are four levels, and they determine how much of the code can be lost:
| Level | Recoverable damage | Typical use |
|---|---|---|
| L (Low) | ~7% | Clean digital display, maximum data |
| M (Medium) | ~15% | General print default |
| Q (Quartile) | ~25% | Print with some wear, small logo |
| H (High) | ~30% | Logo overlay, harsh environments |
This is the mechanism behind logo embedding. A logo covering up to about 30% of the code can still scan — but only at level H, and only if the logo sits away from the three finder patterns. It is also why a scuffed or partially covered code often still works.
| Data type | Maximum (approx.) |
|---|---|
| Numeric | 7,089 characters |
| Alphanumeric | 4,296 characters |
| Binary / bytes | 2,953 characters |
| Japanese kanji | 1,817 characters |
These maximums apply at error-correction level L on the largest grid size. In practice, keep payloads short: every extra character adds modules, and more modules at a fixed print size means smaller physical dots and a higher chance of a failed scan.
Almost always one of these: too small, too little contrast, no quiet zone, printed on a curved or reflective surface, damaged beyond the error-correction budget, or a payload so dense that the modules blur together at the printed size. Notice that none of these are software faults — they are design and print decisions.
Up to about 7,089 numeric characters or 4,296 alphanumeric characters at the lowest error-correction level. Practical codes hold far less to stay scannable at small sizes.
The scan itself works offline because decoding happens on the phone. If the code points at a website, that page still needs a connection.
They are finder patterns. Three are enough to determine position, size and rotation, and leaving the fourth corner empty tells the scanner which way is up.
Up to 30% at error-correction level H, provided the three finder patterns remain intact.
Generally yes, but a code can point anywhere. Preview the destination before opening it, and be cautious with codes on stickers pasted over legitimate ones.
Any content type, high-resolution PNG or SVG, no account needed.
Create a free QR code