Learn QR error correction levels (L, M, Q, H), how much damage they tolerate, and which level to choose for print, logos, and real-world scanning.
QR codes are designed to survive real-world conditions—like minor scratches, print imperfections, or a logo placed in the center. That resilience comes from error correction, shown as four levels: L, M, Q, H.
Choosing the right level can make your QR scan faster and stay readable, but it also affects the QR’s complexity and size requirements.
1) What Is Error Correction in QR Codes?
Error correction allows a QR code to be decoded even if part of it is missing or damaged.
Think of it like “backup data” built into the QR pattern:
• Higher error correction = more backup data
• More backup data = a denser, more complex QR code
2) The 4 Error Correction Levels (L, M, Q, H)
Most QR standards use these typical recovery capacities:
Level Typical recovery Best for
L ~7% Clean screen use, short data, fastest scan
M ~15% General purpose (most common default)
Q ~25% Print materials, moderate risk of damage
H ~30% Logos, harsh environments, higher damage risk
Note: The exact behavior can vary by generator, but the percentages above are widely used reference points.
3) The Trade-Off: Higher Level = Harder to Scan (If Too Small)
Higher error correction increases the QR’s density (more tiny squares). That means:
• You may need a bigger QR size
• You need clean contrast and print quality
• Small QRs with level H can become hard to scan
Rule: If you increase error correction, consider increasing QR size too.
(Internal link: <a href="/articles/qr-code-size-guide">QR Code Size Guide</a>)
4) Which Level Should You Choose?
Here’s a practical recommendation:
Use L when:
• The QR is on a screen (website, app)
• The link/data is short
• The environment is clean and controlled
Use M when:
• You want a safe default for most use cases
• Flyers, emails, simple prints
Use Q when:
• Printing on posters/brochures
• The QR might get slight wear or imperfect printing
Use H when:
• You place a logo in the center
• The QR is on outdoor signs, packaging, or surfaces that may scratch
• The QR may be partially covered or damaged
5) If Your QR Won’t Scan After Raising Error Correction
If you set Q or H and scanning gets worse, it’s usually because the QR became too dense.
Fix checklist:
1. Shorten the data (use a clean URL)
2. Increase size (10:1 distance rule is helpful)
3. Improve contrast (dark on light)
4. Export high quality (SVG for print or large PNG)
5. Test on iPhone + Android
(Internal links: <a href="/articles/qr-code-not-scanning-fix">Not Scanning Fix</a>, <a href="/articles/best-qr-code-colors">Best QR Code Colors</a>)
6) Logo Tip: Don’t Overdo It
A logo can block QR modules.
Best practice:
• Keep the logo modest (don’t cover too much)
• Use H error correction if you must add a logo
• Increase QR size and test multiple devices
FAQ
Which error correction level is best for QR codes?
For most cases, M is a strong default. Use Q for print, and H for logos or higher damage risk.
Does higher error correction always scan better?
Not always. It can become too dense if the QR is small or low quality, reducing scan reliability.
Should I use H for everything?
Only if your QR is large enough and printed/screened clearly. Otherwise M or Q may scan faster.
What if my generator doesn’t let me choose L/M/Q/H?
Then focus on the essentials: short URL, larger size, strong contrast, and high-quality export.
Did you find this helpful?
Share this article with your team or start creating professional QR codes today