Which level for which job
L (7%): codes that live on screens — presentations, app links, digital tickets. Nothing touches them, so the correction budget can go to a sparser, faster-scanning pattern.
M (15%): the default for print — flyers, cards, packaging, menus. Handles the odd scuff and print imperfection.
Q (25%) and H (30%): whenever something covers the code (a centre logo) or attacks it (weather, grease, abrasion, industrial environments). A centre logo is effectively a hole in the pattern, which is why this generator automatically raises correction to Q or higher when you upload one.
The density cost
Moving from L to H roughly doubles the redundant data, and the extra modules make each individual module smaller at the same physical size. A dense H-level code printed small can be harder to scan than a sparse M-level code, even though it's 'stronger'. If you raise the level, print a little larger or shorten the content to compensate.
Correction doesn't fix design mistakes
Error correction repairs missing modules. It cannot repair low contrast, an inverted colour scheme, a cropped quiet zone or a code that's simply too small for the distance. Get those right first; then choose the level for the environment the code will live in.
Mistakes to avoid
- Don't crank everything to H by default — the density cost can hurt more than the correction helps.
- A logo without raised correction is the classic dead code; this tool prevents it, but only if you don't override the level back down.
- Remember correction protects against damage, not bad contrast.
Common questions
Does higher error correction make the code bigger?
It adds modules, so at the same size the pattern gets denser. Print slightly larger or shorten the content to compensate.
What's the default here?
M for plain codes — the right balance for most print. When you add a logo it's raised to Q or H automatically.
Can error correction save a code with a big tear?
Up to its percentage, yes, if the damage is spread out. A tear through a corner marker is usually fatal at any level.
Do scanners need to support the level?
No — all QR readers handle all four levels; it's a property of how the data is stored.