Error correction: L, M, Q or H

One setting decides whether a code survives scratches, dirt and a logo. Explained without the maths.

Updated · 2 min read

What it is

A QR code stores not only data but also redundant information to rebuild it. If part of the code is damaged or covered, the scanner restores the content. The level sets how much of the code can be lost.

LevelRecoversWhen to choose
Labout 7%screens, clean conditions, very long data
Mabout 15%normal print without a logo
Qabout 25%print with a small logo, outdoor materials
Habout 30%large logo, packaging, risk of damage

The cost of reliability

The higher the level, the more space redundancy takes — and the denser the pattern for the same data. A level H code with a long link may come out small and need large printing.

How to choose

  1. No logo, on screen or indoors — M.
  2. A small logo or print that may rub — Q.
  3. A large logo, packaging, outdoors, dirt and scratches — H.

If an H code gets too dense, shorten the link first and only then lower the correction level.

Error correction restores data but cannot save the corner squares: if a finder pattern is covered, the camera will not find the code at all.

FAQ

Which level is the default?

In QR Studio it is Q — a good balance of reliability and density.

Does the level affect scanning speed?

Indirectly: a denser pattern takes slightly longer to read in low light.

Read next

Your first code — in a minute

No sign-up. No watermarks. Forever.

Open generator