# How to add a logo to a QR code

> Set error correction to Q or H, place the logo centrally at under about 20% of the code area, give it two or three modules of clear space, and verify the result decodes. Never let it touch a corner square — those are not protected by error correction.

Source: https://useqr.app/docs/how-to/how-to-make-a-qr-code-with-a-logo · Last reviewed 2026-08-21 · UseQR is free forever, MIT licensed, no signup.

---

## 1. Shorten the payload first

A logo consumes error-correction budget, and raising the level pushes the version up. Start
by making the payload as short as you reasonably can, so the code stays low-version and the
modules stay large.

## 2. Set error correction to Q or H

| Level | Damage tolerated | Practical centre logo |
|---|---|---|
| M | ~15% | up to ~10% of area |
| Q | ~25% | up to ~18% |
| H | ~30% | up to ~25% |

Q is usually enough and produces a less dense code than H. Reach for H only if the logo is
large or the code will be scuffed.

## 3. Place it centrally

The centre of a QR code is data, and data is what error correction protects. Never let the
logo touch:

- the three **corner squares**,
- the **strip beside each corner square** (format information),
- **row 6 or column 6** (timing patterns),
- the **four-module quiet zone**.

## 4. Give the logo a clear panel

Put it on a solid light rectangle with two or three modules of clearance. A logo sitting
directly on the pattern produces half-covered modules at its edge, and ambiguous modules are
worse for a decoder than cleanly missing ones.

## 5. Keep the logo simple

At the size a centre logo occupies — often 8–12 mm printed — fine detail is lost anyway. A
monochrome mark or a single letter reads better than a full lockup and costs less of the
budget.

## 6. Verify

This is the step that matters. UseQR rasterises the finished artwork and reads it back with
a real decoder before you can download it, so a logo that has crept past the budget fails
immediately. The [validator](/validate) reports how much margin remains.

Do not trust a preview. A code that looks fine and does not decode is the most expensive kind
of mistake, because you only discover it after printing.

## 7. Print a proof

Scan the physical proof from the real distance under realistic lighting. A logo consumes
budget that print imperfection and glare also draw on.

## When to skip the logo

If the code will be printed small, scanned in poor light, or exposed outdoors, plain is the
better engineering choice. A logo is worth its cost where trust matters — a payment standee,
a charity appeal — and not much elsewhere.

## FAQ

### Can I put my logo in a QR code?
Yes, centrally, at up to roughly 20–25% of the code area with error correction Q or H. It must not touch the corner squares or the quiet zone.

### What error correction level do I need for a logo?
Q for most cases, H for larger logos. Shorten the payload first, because higher levels push the version up and shrink every module.

### Why does my logo QR code not scan?
Either the logo is too large for the error-correction level, it overlaps a structural region such as a corner square, or it sits directly on the pattern creating ambiguous half-covered modules.

### How do I know the logo has not broken the code?
Decode the finished artwork with a real decoder. UseQR does this automatically before download rather than leaving you to find out after printing.

## Try it

- https://useqr.app/url
- https://useqr.app/validate
