How to Add a Logo to a QR Code (and Keep It Scannable)

How to Add a Logo to a QR Code (and Keep It Scannable)

A QR code with a logo in the middle looks professional and instantly tells people which brand it belongs to. But there is a catch: a logo covers part of the code, and if you do it wrong, the code stops scanning. The good news is that QR codes are built to handle exactly this, as long as you follow a few rules. This guide shows you how to add a logo that looks great and still works every time.

You can do all of this for free with the Custom QR Code Generator, which supports a logo overlay alongside custom colors and export to PNG or SVG.

Why a Logo Can Break a QR Code

A QR code is a grid of small squares called modules. The scanner reads those modules to reconstruct your data. When you drop a logo onto the center, it hides the modules underneath it. As far as the scanner is concerned, those hidden modules are damaged.

QR codes survive damage thanks to error correction — redundant data that lets a scanner rebuild missing modules. A logo works precisely because error correction fills in what the logo covers. The whole skill of adding a logo is staying within the limit of what error correction can recover.

Step 1: Raise the Error Correction to Level H

This is the single most important step. QR codes have four error correction levels — L, M, Q, and H — that recover roughly 7%, 15%, 25%, and 30% of the code respectively. To make room for a logo, you need the highest recovery margin, so always set the level to H before adding one.

At level H, the code can lose up to about 30% of its modules and still rebuild the data. That headroom is what a centered logo consumes. If you leave the level on the default M, a logo will almost certainly push the code past its recovery limit and it will fail. For a deeper explanation of the levels, see QR code error correction levels explained.

Step 2: Keep the Logo Small Enough

Even at level H, you cannot cover the whole code. A safe rule is to keep the logo within 25 to 30% of the code's total area. In practice that means a logo roughly one-fifth of the width sitting in the dead center.

A few guidelines:

  • Center it. QR codes tolerate a covered center far better than covered corners. The three large corner squares (the finder patterns) must always stay completely visible — never let a logo touch them.
  • Leave a small margin. A thin band of clear space around the logo helps the scanner separate it from the code.
  • Bigger is not better. When in doubt, shrink the logo. A slightly smaller logo that always scans beats a large one that fails half the time.

Step 3: Choose the Right Logo Image

The logo file itself matters:

  • Use a high-contrast, simple logo. Bold shapes and solid colors read better against a busy code than thin lines or fine detail.
  • Prefer a transparent or solid background. A logo on a small solid (often white) badge reads cleanly. A logo with a busy or patterned background can confuse the scanner.
  • Use a sharp source file. A blurry or pixelated logo looks worse the larger you print. Start from a clean PNG or, ideally, a vector.

Step 4: Mind the Colors and Contrast

Branding often tempts people to recolor the whole code, but contrast rules still apply. The code's modules must stay clearly darker than the background. Keep the foreground dark and the background light, and make sure the logo does not blend into the surrounding modules. A code can fail not because of the logo's size but because a low-contrast color scheme made the whole thing hard to read. Test any custom palette before committing.

Step 5: Export in the Right Format

Once the logo looks right, download the code in the format that fits its destination:

  • PNG for screens, documents, social posts, and most standard printing.
  • SVG for large or high-quality print — posters, packaging, banners — because it scales to any size without losing sharpness, logo and all.

Step 6: Test on Real Devices

This step is non-negotiable for branded codes. A logo introduces the highest risk of a code that looks fine but does not scan. Before you publish or print:

  1. Scan with at least one iPhone and one Android phone.
  2. Test from different distances and under different lighting.
  3. If you printed it, scan the actual printed copy, not just the screen.

If it fails, the fix is almost always the same: raise error correction to H if you have not, make the logo smaller, increase contrast, or move the logo fully to the center away from the corners.

Common Mistakes

  • Leaving error correction on M or lower. The top cause of unscannable branded codes. Always use H.
  • Logo too large. Covering more than about 30% overwhelms the recovery margin.
  • Covering a corner pattern. The three corner squares must stay fully visible.
  • Low contrast. A stylish but faint color scheme can fail on its own.
  • Skipping the test. Never assume — always scan the finished code on real phones.

Quick Checklist

  • Error correction set to H.
  • Logo within 25-30% of the code area, centered.
  • Corner patterns fully visible.
  • High-contrast, simple logo on a clean background.
  • Dark modules on a light background.
  • Exported as PNG (screen) or SVG (large print).
  • Tested on at least two phones, including the printed version.

Follow that checklist and your branded code will look polished and scan reliably. Ready to try it? Open the Custom QR Code Generator, upload your logo, set the level to H, and download your code.

FAQ

Will adding a logo stop my QR code from working?

It can if you do it wrong, but not if you follow the rules. Set error correction to level H, keep the logo within about 30% of the code area and centered, maintain strong contrast, and test the result. Done correctly, the code scans normally.

What error correction level do I need for a logo?

Level H, the highest. It recovers up to about 30% of the code, which is the margin a centered logo consumes. Lower levels do not leave enough room and the code will likely fail.

How big can the logo be?

Keep it within roughly 25 to 30% of the code's total area, placed in the center. Larger logos exceed what error correction can rebuild. When unsure, make it smaller.

Can I add a logo for free?

Yes. The Custom QR Code Generator lets you upload a logo, set error correction, choose colors, and download a PNG or SVG at no cost, with no signup or watermark.

Why does my logo QR code scan on screen but not when printed?

Print is harsher than a screen: ink can spread, contrast can drop, and size shrinks. Scan the actual printed copy, raise error correction to H, enlarge the code, and keep the logo small. Always test the physical print before mass production.

Should I use PNG or SVG for a branded QR code?

Use PNG for screens and everyday printing. Use SVG for large or premium print like posters and packaging, because it scales to any size without blurring the code or the logo.

Create a Branded QR Code

Add custom colors and a logo overlay, set error correction, and download PNG or SVG.

Open Custom QR Code Generator

Related Articles