qrhue

Error correction, and how much of a QR code you can cover

The budget a logo spends, the parts of the code you can never touch, and the settings that keep a decorated code reliable.

6 min read · updated 29 October 2026

What error correction does

Every QR code carries extra data so that a damaged or hidden part can be reconstructed. The amount is set when the code is made: level L recovers up to 7 percent of the data, M 15 percent, Q 25 percent, H 30 percent. The price is size: the same link needs more modules at H than at L, roughly a version or two larger.

That budget is what a logo, a picture or a scuff spends. A clean code at level H can lose nearly a third of its data modules and still read. One at L can lose a sliver.

The parts you can never cover

Everything else is data plus error-correction codewords, and that is the area a logo may eat into. Our generator never knocks out the patterns above; the logo plate only clears data modules.

  • The three big squares in the corners (finder patterns). Cameras find the code by them. No logo, no decoration, no cropping.

  • The thin alternating lines joining the squares (timing patterns), which tell the decoder the grid pitch.

  • The small square near the bottom-right in codes of 25 modules and up (alignment pattern), used to correct perspective.

  • The two strips of format information beside the finder patterns, which say which error correction level and mask were used.

  • The quiet zone around the code.

How much logo, in numbers

Why does a logo covering 9 percent of the area threaten a 30 percent budget? Because the budget is counted in codewords (blocks of eight modules) and a square logo damages many codewords partially, which costs almost as much as damaging them fully. Real tolerance is around a third of the headline number. The scan check in the generator is the honest measure.

Logo width as share of code widthArea coveredMinimum levelComment
15 percentabout 2 percentMSafe anywhere
20 percentabout 4 percentQComfortable with a plate
25 percentabout 6 percentHFine on good phones, test the small-print case
30 percentabout 9 percentHFails on cheap cameras and small prints
35 percent and up12 percent and upnoneDo not

Pictures inside the code spend the budget differently

The picture mode does not cover modules. It shrinks each module to the centre of its cell and draws the picture in the rest. Decoders sample module centres, so in theory nothing is lost; in practice, blur and small prints let the picture bleed into the centres, which is why picture codes run at level H, print larger, and go through the blur and small-print tests before download.

Settings that keep a decorated code reliable

  • Level H for anything with a logo or picture; Q for a small logo on a short link.

  • Plate behind the logo in the background colour, so the decoder sees a clean light area rather than a half-covered module.

  • Logo under 22 percent of the code width.

  • Short content, so the modules stay large at print size.

  • Margin 2 or more, matte stock, dark dots on a light background.