Krill KitsKrill Kits// A swarm of small, sharp tools for letters, numbers, and units.
§ 01 / ARTICLE

QR Error Correction. L, M, Q, H.

CATEGORY GENERATORSREAD 4 MINPUBLISHED APR 21, 2026

QR codes embed redundancy so they still decode when some cells are unreadable — dirty, smudged, covered by a logo. The redundancy budget is picked at encode time: four levels from L (7% recoverable) to H (30% recoverable). Here's when to pick which.

The four levels

  • L — Low: 7% recovery. Maximum data capacity. Fine for clean digital display.
  • M — Medium: 15% recovery. The default for most uses. Pragmatic choice for links in emails, slides, or web pages.
  • Q — Quartile: 25% recovery. Good for printed media at small sizes or codes that might get partially dirty.
  • H — High: 30% recovery. For embedded logos, wear-exposed surfaces (restaurant tables, storefront windows), or anywhere robustness matters.

The tradeoff

Higher correction means more redundant dots, which means fewer dots available for actual data at the same code size. Going from level L to level H reduces data capacity by roughly 50% — the extra bytes go to parity instead. That's why high- correction QRs with long URLs look busier: they need more cells to fit the data plus the redundancy.

The logo math

A centered logo typically covers 10–20% of the code area. At level H (30% recoverable) you have headroom. At level M (15%) you're cutting it close. At level L, a logo will often break the scan. Rule of thumb: always use H for codes with embedded branding. The slight density increase is invisible to most users.

When smaller is OK

For a short URL encoded at level M, you end up with a ~29×29 code that scans reliably down to about 1 inch printed. For the same URL at level H, you need a ~33×33 code and should aim for 1.25 inches minimum. If space is tight, pick M and save a few millimeters. If durability matters, use H.

// TRY THE TOOL
PICK YOUR LEVEL.

L, M, Q, H selector. PNG + SVG download. Preview updates live as you change settings.

OPEN →
§ 02 / FAQ

Questions. Answered.

What do L, M, Q, and H mean?+
The four error correction levels built into the QR standard. L (Low) recovers up to 7% of damaged cells, M (Medium) 15%, Q (Quartile) 25%, H (High) 30%. Higher levels produce denser codes with less data capacity for the same size.
Which level should I use?+
M is fine for most digital uses — pasting a QR into a slide or document. Q or H if the code will be printed at small sizes, covered by a logo, or exposed to wear. L only if you need maximum data capacity and robustness isn’t a concern.
Does higher correction mean slower scanning?+
No — scanning speed is essentially the same. Higher correction means more dots, so the camera has more to read, but decode speed is so fast on modern phones that it’s imperceptible.
How can a logo sit in the middle?+
Because error correction can recover the hidden cells. Level H tolerates 30% damage. A centered logo typically covers 10–20% of the code area, well within H’s recovery budget. Don’t push it with level L — the logo will break the scan.
§ 03 / TOOLS

Related calculators.

§ 04 / READING

Keep reading.