QR Code Error Correction Levels Explained (L, M, Q, H)
Updated June 2026 · ~4 min read
Every QR code carries a little spare data so it still scans even if part of it is dirty, scratched, or covered. That redundancy is called error correction, and it comes in four levels.
The four levels
- L (Low) — recovers about 7% of the code. Densest, but least forgiving.
- M (Medium) — about 15%. A sensible default for screens and clean prints.
- Q (Quartile) — about 25%. Good for codes that may get handled or smudged.
- H (High) — about 30%. Most robust, and required if you place a logo in the middle.
The trade-off
Higher correction means more modules packed into the same space, so the pattern looks busier and needs to be printed slightly larger to stay scannable. Lower correction gives a cleaner, simpler code but less tolerance for damage.
Which should you pick?
Use M for most digital and clean print uses. Step up to Q or H for codes exposed to wear — outdoor signage, packaging, stickers — or whenever you add a centre logo. If you are placing a logo, see our guide on adding a logo without breaking the code.
Try the free tools
Advertisement
Ad space — in-article