QRMapper
All posts

How Much Can You Brand a QR Code Before It Stops Scanning

Kevin Brady · · 6 min read

Designers hate QR codes for an understandable reason: a black square of noise stapled onto an otherwise careful layout. So they style it — brand colour, logo in the middle, softened corners — and most of the time it still works, which quietly teaches everyone that QR codes are infinitely forgiving.

They are not. They are specifically forgiving, in ways worth understanding, because the failure mode is invisible on screen and only shows up on paper in a customer's hand.

Where the tolerance comes from

QR codes carry redundant data. Every code is encoded with Reed–Solomon error correction at one of four levels, and the level determines how much of the pattern can be missing or wrong before the reader gives up:

LevelRecoverable damageWhat it costs
L (Low)~7%Smallest pattern
M (Medium)~15%Slightly denser
Q (Quartile)~25%Denser again
H (High)~30%Densest pattern

That redundancy exists for real-world damage — a scuff, a fold, a drop of coffee. Logo overlays are a deliberate use of the same budget. A logo in the middle of a code is, to the scanner, damage that it happens to be able to recover from.

Which leads to the rule that governs every branded code: your logo and any real-world wear are drawing from the same account. If you spend 25% of the budget on a logo, you have nothing left for the scratch on the sticker.

The three things you can change safely

Colour. Contrast is what matters, not hue. The dark modules must be clearly darker than the light ones — aim for a contrast ratio of at least 4:1, and treat 3:1 as the floor. A deep brand colour on white is completely safe. Two mid-tones together are not.

Two mistakes recur. First, inverted codes — light pattern on a dark background. Some readers handle it, plenty do not, and you will never hear from the ones that failed. Second, gradients that pass through mid-tone, which look excellent in the mockup and fall apart under a phone camera's automatic exposure.

Module shape. Rounding the dots or using a different corner-eye style changes the silhouette without changing the grid. Scanners locate a code by its three finder patterns and read it on a grid, so decorative shapes are fine as long as each module still sits in its cell and light and dark stay distinct. Very heavy rounding thins the connection between adjacent dark modules; if the pattern starts looking like scattered dots rather than a connected mass, back it off.

Background. A solid, light, uniform background. Not a photograph. Not a texture. Not a gradient sitting behind the pattern. The quiet zone — the clear margin of about four modules on all sides — is part of the code, not padding you can decorate.

The centre logo, with numbers

The safe budget for a centre overlay is up to about 20% of the code's area at error correction level H, and less at every other level. QRMapper generates at level Q by default, which puts a comfortable ceiling nearer 15% and keeps some redundancy in reserve for the physical world.

Practical translation: a logo occupying no more than a fifth of the code's width and height, centred, with a small light margin around it so it reads as a deliberate window rather than smeared ink. Not a logo across the middle third. Not a logo overlapping a corner — the three finder squares and the alignment patterns are structural, and covering any part of them breaks the code outright regardless of error correction level.

Error correction is a repair fund, not a design allowance. Spend it all on the logo and there is nothing left for the scratch.

The other reason to stay conservative: error correction protects the data, but a scanner has to find and lock onto the code first. Heavy central obstruction slows that lock-on even when the decode eventually succeeds — the code "works" but takes four seconds instead of one, and most people give up before then.

What actually breaks codes

In roughly the order we see them:

  1. No quiet zone. Text, a border, or an image butted right against the pattern. This breaks more codes than every other cause combined, and it is almost always a layout decision rather than a QR decision.
  2. Too small for the viewing distance. The working rule is 10:1 — scanning distance should be no more than ten times the code's width. A 2 cm code wants to be scanned from 20 cm, which makes it useless on a wall.
  3. Low contrast. Brand-on-brand, pale grey on white, dark on dark.
  4. Logo over a finder pattern. Structural, unrecoverable.
  5. Rasterised too small, then scaled up. A 240-pixel PNG blown up to fill a poster gives soft, blurry module edges. Export vector for print.
  6. Surface effects. Gloss laminate producing glare, dark fabric absorbing the light modules, curvature on a bottle or mug distorting the grid.

A workable process

  1. Design at level Q or H. Never L on anything printed.
  2. Keep the logo under a fifth of the area, centred, clear of the finders.
  3. Check contrast numerically, not by eye — a contrast checker takes ten seconds.
  4. Export vector for print, raster only for screens.
  5. Test-scan the proof on the real material, at the real distance, under the light it will live in. Two phones, ideally one iPhone and one Android.
  6. Test a slightly damaged copy. Scratch a corner of the proof. If that kills it, your logo has eaten the safety margin.

Doing it in QRMapper

Custom design is available on Pro and up — from $6 a month billed annually, with a 14-day trial. You get pattern and background colours, dot and corner styles, and a centre logo, with the preview updating as you change it, plus PNG and SVG export from the same panel. Use the SVG for anything printed.

The free plan generates standard black-and-white codes — fully functional, five of them, no card required, which is enough to confirm the redirect mechanics before you care about styling. Print-Ready QR Codes: Size, Contrast, and Placement Rules covers the sizing and placement side, and Why Did My QR Code Stop Working? is the diagnostic path when a code fails in the field. If you want to try the design panel, start free and upgrade when you need it.

A branded QR code is not a compromise between design and function — it is a budget. Know how much redundancy you have, spend some of it on the logo, and leave the rest for the coffee.

Print once. Point anywhere.

Create a dynamic QR code you can re-point anytime — free, no credit card.

Get started free