← Blog QR Codes · 2 min read

Designing a branded QR code that still scans

Colour, logos and rounded modules are all possible. Each one spends part of your margin for error.

By ShortFreeURL Team · 16 August 2026

What you are allowed to change

A scanner needs three things: the finder patterns in the corners, sufficient contrast between dark and light modules, and a clear quiet zone. Everything else — module shape, colour, a logo in the middle, the eye styling of the corners — is decoration you can modify within limits. The limits are not published by any authority; they are found by testing.

Contrast is the rule that cannot be bent

Dark modules on a light background, with a large luminance difference. Two brand colours of similar lightness will look beautiful and fail on half of phones. Inverting the code so the modules are light on dark works on some scanners and not others, and there is no reason to take that risk on printed material you cannot recall.

Colour choices that survive

A single dark brand colour for the modules on white is safe. Gradients are usually fine if both ends stay dark. Avoid red on white for anything that might be photographed in low light, because some sensors handle red channel contrast poorly. Never place the code over a photograph or a textured background.

Logos belong in the centre and must be small

The middle of the code carries the least critical data, which is why a centred logo works at all. Keep it well within the redundancy your error-correction level provides, leave a small white border around it so it reads as an intentional gap rather than damage, and never let it touch the finder patterns.

Custom module shapes cost you resolution

Rounded or dot-shaped modules leave gaps between neighbouring dark modules, which reduces the effective contrast a camera sees, especially at small sizes or at a distance. They are fine on a screen or a page held in the hand. They are a poor choice for a poster read across a room.

Keep the quiet zone even when the layout is tight

Four modules of blank margin on every side. Designers reliably want to crowd this because the code looks like it has too much padding. It does not; that margin is how the scanner finds the code's boundary, and removing it is the most common cause of a beautiful code that nobody can scan.

Test the final artefact across devices

Print at final size on the final stock. Scan with several phones, including an older model, at the intended distance, in the intended light, and at an angle. Every step of styling you added should be validated against that test rather than against a preview on a designer's monitor.

Keep an unstyled fallback

Generate a plain version of the same code and keep it in the asset folder. If the styled one fails testing late in the process, swapping it in takes seconds, and the campaign does not slip.

Related posts

Start Free — no credit card

The free plan includes 1,000 links, 6 custom domains and 50,000 tracked clicks a month, free forever. Choose a free subdomain from six shared domains. Paid plans start at $4 a month when you outgrow it, and you keep everything you have built.