How to put a logo in a QR code without breaking it

A logo covers real data in a QR code. Here's how much you can cover, why error correction saves you, and the design choices that keep a branded code scannable.

6 min readQR Studio

Dropping a logo in the middle of a QR code is not a cosmetic change. You are covering up data. The only reason it works at all is that QR codes were designed to survive damage, and a logo is a very tidy kind of damage.

Understanding that one fact tells you everything about how to do it well.

Why it works: Reed-Solomon error correction

Every QR code carries redundant information so a torn, smudged, or partially blocked code still decodes. Four levels, each trading redundancy against density:

LevelRecoverableWhat it costs
L~7%Smallest, densest data payload
M~15%Sensible default
Q~25%Noticeably more modules
H~30%Most modules, biggest code

At level H, roughly 30 percent of the code can be destroyed and the message still reconstructs. Your logo is just a deliberate, centrally located 15 percent.

The catch is that raising error correction adds modules. A code at H is denser than the same content at M, so at the same printed width every module is smaller. You buy damage tolerance with resolution. That tradeoff is the whole game.

The practical limit

Keep the logo under about 20 percent of the code's width. That's roughly 4 percent of the total area, well inside what level H can absorb, with headroom for print imperfection on top.

You can push to 25 percent at H if the code is printing large and clean. Past 30 percent you're gambling, and the gamble gets worse as the print gets smaller or the lighting gets worse.

Width, not area, is the number to think in. Doubling the width quadruples the area you're covering, which is why a logo that "looks a little big" is often way past the limit.

The three regions you must not cover

Not all parts of a QR code are equally expendable.

The finder patterns. Three big concentric squares in the corners. Scanners use them to locate and orient the code. Cover one and there is no error correction in the world that saves you, because the decoder never finds the code to begin with.

The alignment patterns. Smaller concentric squares scattered through larger codes. They correct for perspective distortion when the code is scanned at an angle. Covering them means the code only works dead-on.

The timing patterns. The alternating dashed lines running between the finder patterns. They establish the module grid.

All of these live at the edges and along fixed lines. Which is exactly why a centered logo is the safe choice, and why an off-center or corner logo placement is usually a mistake even when it looks better.

Design choices that make or break it

Give the logo a plate

A white or light plate behind the logo, with a few modules of padding, is not just a style choice. It creates a clean boundary that the decoder reads as one contiguous damaged region rather than a mess of half-covered modules.

Logos placed directly over the pattern with no plate tend to produce partially obscured modules around the edges, and partial modules confuse decoders more than fully missing ones do.

Simple logos survive, detailed ones don't

At the size a logo occupies in a QR code, a full wordmark is unreadable anyway. Use the mark, the monogram, the icon. Not the horizontal lockup with a tagline.

If your only asset is a wide horizontal logo, either use the isolated symbol or skip the center logo and put the wordmark in a caption frame under the code instead. That's the option most people don't consider and it usually looks better.

Solid colors beat photos

A flat logo with hard edges holds up. A photo, a gradient-heavy mark, or anything with soft transparency creates a region that's neither clearly dark nor clearly light, right in the middle of a pattern that's built on that distinction.

Match the code's darkness, or don't compete with it

A logo in a color close to your code's foreground color reads as part of the design. A bright contrasting logo draws the eye to the center, which is fine aesthetically but does nothing for scanning either way. Aesthetics can win this one.

Don't stack every customization at once

Heavy dot module shapes, a gradient that runs light, a tight quiet zone, a 25 percent logo, and a small print size. Each one is survivable. All five together is a code that scans on your desk and nowhere else.

Pick your two favorite customizations and keep the rest conservative. That's most of the craft here.

Doing it in QR Studio

Upload a PNG or SVG logo in the design panel. The controls that matter:

  • Logo size as a percentage of the code width. Start at 18, go up only if verification stays clean.
  • Padding around the logo before the plate edge. A little goes a long way.
  • Plate on or off, and rounded or square.
  • Error correction, which the studio nudges up when you add a logo. You can override it, but override upward, not down.

Then the part that matters most: before the download runs, the finished image is decoded again at a ladder of sizes from 420 pixels down to 80, with blur applied, imitating a camera that isn't perfectly still or perfectly focused. If it only reads at the largest sizes, the logo is too big or the contrast is too tight, and you'll see that before the file exists.

That step exists because "it scanned once on my phone at nine inches under a desk lamp" is not evidence that a code works.

What about frames and captions?

A frame with text around the code, something like "Scan to order" or "Menu," measurably improves scan rates in public spaces. People need to know the code is for them and what happens if they scan it.

Frames are also free from a technical standpoint. They sit outside the pattern and outside the quiet zone, so they cost you no data and no reliability. If you're choosing between a bigger logo and a caption, take the caption. It does more work.

FAQ

How big can a logo be in a QR code? About 20 percent of the code width is the safe limit at error correction level H. Up to 25 percent works for large, clean print. Beyond 30 percent, failures start.

Does adding a logo require higher error correction? Yes, level H in practice. It's also worth knowing that H adds modules, so a logo code needs to print slightly larger than a plain one to keep module size the same.

Can I put the logo in a corner instead of the center? Not recommended. The corners hold the finder patterns, which cannot be covered at all. Center is the only reliably expendable region.

Will a logo QR code work on old scanners? Usually, if you stay inside the size limit and use a plate. Older and cheaper scanners are less tolerant, so if the code is for retail checkout, test on the actual hardware.

Is adding a logo free? Yes. Logo embedding, gradients, custom module shapes, frames, and SVG export are all free here with no account and no watermark.


Add your logo and see it verified at gmqr.dev.

Keep reading