How a logo can sit inside a code
A logo placed over a QR code hides some of its modules, and the scanner treats those modules as damage. Reed–Solomon error correction can recover missing codewords up to the limit of the chosen level. That is why codes with logos are usually made at level Q or H, which recover about 25% or 30% of codewords.
The error correction budget is shared with every other kind of damage, such as smudges, glare and printing defects. A logo that uses most of the budget leaves little margin for real-world wear.
Rules of thumb for placement
Keep the logo well below the error correction budget, typically centered and covering only a modest part of the code. Never cover the three finder patterns, the timing patterns or the format information next to the finders, because the scanner needs those to read anything at all. A thin light border around the logo helps separate it from the modules.
- Use error correction level Q or H
- Keep the logo small and centered
- Leave finder patterns, timing patterns and format information uncovered
- Keep the quiet zone clear
- Test on several phones at the real print size
Testing matters more than any formula
Because error correction counts codewords rather than area, the same logo size can work on one code and fail on another. The only way to know is to test the final artwork on several phones, including an older one, at the printed size and in the lighting where it will be used.