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.

Updated 22 September 2026 5 min read By HuCortex

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:

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

  1. Download the code and print it at the size it will actually be used, on similar paper.
  2. Scan it with an iPhone camera, an Android camera, and one third-party scanner app.
  3. Scan again from further away than you expect people to stand, and at an angle.
  4. Scan it once more under poor light or with a shadow across it.
  5. 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.

Questions people also ask

Up to about 30 percent of the code's width with error correction set to High. Beyond that the code starts failing in poor light or when slightly damaged.

In the centre. The corners hold the finder patterns the scanner uses to locate the code, and the lines between them carry timing information. Cover those and nothing scans.

Slightly, because it uses part of the error correction budget. With the logo at 0.3 or smaller and the level set to High, the remaining budget covers normal wear and tear.

Yes. Keep it on a clear light pad, keep the dots dark or in a single strong brand colour, and avoid gradients that blend into the dot colour.