QR / guides / Design

QR codes with a center logo: how to do it without breaking the scan

A logo in the center of a QR boosts the feel of any printed material — but done wrong, it locks 30% of users out. The fix is error correction and a coverage percentage almost no one respects.

A classic flat-black QR scans every time and no one looks at it twice. A QR with your brand's logo in the center makes people approach, scan, and associate it with your product. The catch: most online tools let you slap a logo on without warning that you're carving out critical pieces of the code. Here's the quick theory (what error correction is, how much of the QR you can cover) and a concrete recipe so it works on any phone.

Why a center logo doesn't break the QR (when done right)

QR codes have built-in Reed-Solomon error correction. That means the code includes redundant data — partial copies — so even if part of the QR is smudged, scratched, folded, or covered, the reader can reconstruct the original content. There are four levels, each tolerating a different percentage of damage.

LevelDamage toleranceWhen to use
L7%Clean QR, close-range scan, short content
M (default)15%General use, no logos
Q25%Dirty prints, humid or high-friction environments
H30%Center logos, outdoor vinyl, packaging

The logo trick is exactly that: you use level H, place the logo covering up to 25-28% of the area, and the error correction reconstructs whatever you covered. qr.util.ar's generator forces H automatically when you upload a logo — you can't lower it while the image is loaded. If you use another tool, make sure it's set to H before exporting.

How much of the QR you can actually cover

Even though theory says 30%, in practice it's smarter to stay below 25% for two reasons: the reader needs a safety margin, and the three big squares at the corners (the 'eyes') can never be covered, not even slightly. Those three squares are the orientation markers the camera looks for first. If your logo even brushes them, the scan fails — even with H tolerance.

CoverageSuccess rate (recent iPhone)Success rate (mid-range Android)
15%100%100%
20%100%98%
25%98%92%
28%92%80%
30%75%55%
35%40%20%

Format

PNG with transparency or SVG. JPG works but the JPG's square background will clash with the QR. If you use JPG, the tool paints a white square behind it (helps with readability) but it looks worse. SVG is ideal — scales perfectly without pixelation and stays crisp at any print size.

Color and contrast

The logo should have good internal contrast (its details must remain visible when shrunk to 22% of the QR). Logos with thin lines disappear — prefer simplified, monochrome, or low-color versions. If your brand has an 'icon' or 'isotype' simplified version, use that.

Resolution

Minimum 256x256 px so it scales well. If you'll print the QR at 8 cm or more, use 512x512 or larger. SVG doesn't have this problem — scale freely.

Common mistakes

MistakeWhy it failsFix
Giant logo (over 30%)Covers too many QR modulesDrop it to 22-25%
Logo without white padding around itLogo pixels blend into QR modulesThe generator adds padding automatically — don't disable it
Off-center logoCovers part of the corner orientation markersUse the tool — it auto-centers
Logo in the same color as the QRNo contrast, the reader confuses it with modulesUse a contrasting color or a strong white background
Logo uploaded as JPG with colored backgroundJPG background takes more area than the actual logoConvert to transparent PNG or SVG
ECC stayed at M instead of HWithout H tolerance, covering 22% exceeds the error budgetForce H in the advanced panel (auto on qr.util.ar)

How to test before printing

  1. Generate the QR with the logo in the tool's preview.
  2. Scan the screen with your own phone. If it works on yours, that's not a guarantee it works on all.
  3. Ask someone with a different phone (ideally another brand, 2-3 years old) to scan it.
  4. Print a small version (5x5 cm) and test it with the camera at 20 cm, under both warm and cool lighting.
  5. If it passes all four steps, send to print. If it fails any, drop the logo size to 18% and try again.

Combining logos with visual styles (rounded, dots)

qr.util.ar lets you combine the logo with non-classic module styles (circular dots, rounded modules, custom-shaped eyes). It works, but it needs extra care: 'dots' and 'extra-rounded' styles produce less continuous black area, which reduces Reed-Solomon robustness in practice. If you use 'dots' style + logo, stay below 20% logo coverage instead of 25%.

Try it now

The generator below has a sample link loaded. Upload your logo in the 'Advanced' panel, adjust the size with the slider, and download the PNG. The tool forces ECC=H automatically when there's a logo — you don't need to touch anything else.

Generate your QR with logo

Start with the content, then open 'Advanced' and upload your logo in the center section.

Content

Step 1

Paste the full URL, including https://

Color

Tweak error correction, size, and quiet zone. Useful for large prints, logos in the center, or long content.

L = 7%, M = 15%, Q = 25%, H = 30%. Higher = denser QR but tolerates more damage.

Visual style

Logo in the center

Upload an image (PNG, SVG or JPG, < 1 MB). It's placed in the center with a white pad. Test with your camera before printing.

Your QR

Step 2

https://util.ar