QR Code Error Correction Explained
What error correction is, the four levels, and how it affects your QR code.
What is error correction?
Error correction is a built-in feature of the QR code standard that allows a code to remain readable even when part of it is damaged, smudged, or obscured. It works by adding redundant data to the code — extra modules that can be used to reconstruct the original information if some modules are missing or unreadable.
The four levels
The QR standard defines four error correction levels, each recovering a different percentage of the code's data:
- • L (Low) — recovers approximately 7% of data
- • M (Medium) — recovers approximately 15% of data
- • Q (Quartile) — recovers approximately 25% of data
- • H (High) — recovers approximately 30% of data
Why it matters
Higher error correction makes a code more resilient — it can tolerate more damage, dirt, or obstruction. This is especially useful when you add a center logo, since the logo covers part of the data area. Veyqora automatically switches to the highest level (H) when you add a logo.
The trade-off is density. Higher error correction requires more redundant modules, which makes the QR code grid larger and denser for the same amount of data. A denser code may be harder to scan at small sizes.
When to use each level
- • L — minimal data, clean digital display, no logo.
- • M — the default for most everyday use. A good balance.
- • Q — printed codes that may get slight wear.
- • H — codes with a center logo, or codes in harsh print environments.
Using error correction in Veyqora
In the QR code generator, open the customization panel and choose the error correction level from the dropdown. When you upload a logo, the level is automatically set to H so the code remains scannable with the logo covering the center. You can change it back manually, but doing so with a logo is not recommended.