How do I put a logo in a QR code without breaking it?
Keep the logo in the centre at 20 to 30 percent of the code's width, set error correction to High, and clear the dots behind the logo so its edges stay crisp. Then scan the printed result with three different phones before you order the run.
Why a logo works at all
QR codes are designed to survive damage. Up to 30 percent of the pattern can be missing at the highest error correction level and the scanner still rebuilds the content. A centred logo is simply controlled damage: you decide which modules to sacrifice. The centre is the safest place because the parts a scanner needs to find the code, the three big corner squares and the thin timing lines between them, all sit near the edges.
Size: the 30 percent ceiling
Keep the logo at or under 30 percent of the code's width. In QReative the logo size slider runs from 0.1 to 0.5, and 0.2 to 0.4 is the range that scans reliably. At 0.3 the logo covers roughly a tenth of the modules, which leaves two thirds of the recovery budget for real-world wear. Push to 0.5 and you are gambling on perfect print and perfect light.
Dense content shrinks the budget faster. A long vCard already has small modules, so a logo that is fine on a short URL can tip it over. If the code carries more than about 150 characters, either shorten the content or drop the logo to 0.2.
Clear the dots behind the logo
A logo laid straight over the pattern has dots peeking around its edges, which looks messy and confuses edge detection. Turn on Clear the dots behind the logo and give it a margin of 4 to 8 pixels. The generator removes the modules under the logo entirely and leaves a clean pad. This is what a professionally designed branded code looks like, and it is also more robust, because the scanner treats the whole area as one known gap instead of a scatter of partial squares.
Contrast between logo and code
The logo does not have to match the dot colour, but it must not fight it. Two patterns that scan well:
- Dark dots, light background, full-colour logo on a white pad. The classic and the safest.
- Brand-colour dots on white, logo in the same brand colour. Cohesive, still high contrast.
Avoid a busy photographic logo, a logo with a gradient that runs into the dot colour, or a logo bigger than its pad. Simplify to a mark or a monogram if the full wordmark is too wide.
Use a vector logo when you can
Upload an SVG logo and export the code as SVG and the whole thing stays sharp at any print size. A 200-pixel PNG logo inside a poster-sized code will be visibly soft. If you only have a raster logo, use the largest clean version you have; QReative accepts files up to 5 MB.
The five-minute test
- Download the code and print it at the size it will actually be used, on similar paper.
- Scan it with an iPhone camera, an Android camera, and one third-party scanner app.
- Scan again from further away than you expect people to stand, and at an angle.
- Scan it once more under poor light or with a shadow across it.
- If any of those fail, shrink the logo one step or increase the print size, and repeat.
Every step is instant in the browser, so there is no reason to skip the last one.