You have probably seen QR codes with a brand logo sitting right in the middle and wondered how that can possibly scan. After all, the logo covers part of the pattern. The short answer is yes, a QR code can have a logo, and it works because QR codes are designed to survive damage. This guide explains why, how big the logo can be and how to add one without making the code unreliable.
Why a logo does not break the code
Every QR code includes error correction: extra data, calculated with Reed–Solomon codes, that lets a scanner rebuild missing or unreadable parts. It was designed so codes keep working when they are scratched, smudged or partly torn.
A logo in the middle is, from the scanner's point of view, just a damaged area. If the damage is small enough, the error correction fills in the gap and the code reads normally.
There are four error correction levels. Each one can recover roughly this share of the code's data:
| Level | Approximate recovery |
|---|---|
| L (Low) | about 7% |
| M (Medium) | about 15% |
| Q (Quartile) | about 25% |
| H (High) | about 30% |
For a logo, you want level H, which gives the most room for the covered area. The trade-off is that higher error correction uses more of the code's capacity, so the same link produces a denser pattern with more modules (the little squares). Our guide to QR code error correction levels goes deeper on that trade-off.
The recovery figures are a ceiling, not a target. Error correction also has to cope with real-world problems like glare, a curved surface or a shaky hand, so you should never use it all up on a logo.
How big can the logo be?
Keep the logo small and in the center. A good working rule is to cover well under the recovery limit so the code still has spare error correction for everything else.
In QR Studio, when you upload a logo the generator automatically switches to level H error correction and limits the logo to about 22% of the code's width, drawn in the center on a small solid pad in your background color. Because area grows with the square of the width, that covers only a small fraction of the code's total area, which leaves plenty of margin.
If you are designing a code in another tool, aim for a similarly modest size and test it. A logo that looks a little too small on screen is usually the right size for reliable scanning.
Parts of the code a logo must never cover
Some parts of a QR code are structural, and error correction cannot rescue them if they are hidden:
- The three finder patterns, the big squares in three corners. Scanners use them to find and orient the code.
- The quiet zone, the blank margin around the code. See what the QR code quiet zone is.
- Timing and alignment patterns, the small regular marks that help the scanner map the grid. Larger codes have alignment patterns in other spots, not just the corners.
That is why logos go in the center: it is the area least likely to hit these structures.
Make a free QR code for a link, WiFi or contact card — generated in your browser.
Open the free QR code generator →How to add a logo with QR Studio
- Open the generator and choose the type of code you need, such as a website URL, plain text, WiFi network or contact card.
- Enter your content. Shorter links produce simpler patterns, which leave more room for a logo.
- Upload your logo in the logo slot. The generator switches to high error correction and centers it for you.
- Pick colors with strong contrast: dark foreground on a light background.
- Choose a size and download the PNG.
- Test it with at least two different phones before you print or publish.
Everything runs in your browser, so your logo file is not uploaded to a server.
Choosing a logo file that works
The logo itself matters as much as its size.
- Use a simple mark, not the full wordmark. An icon or initial reads better at small sizes than a long company name.
- Use a square or near-square image. Wide logos get scaled down to fit, so they end up tiny.
- Prefer a transparent PNG. QR Studio adds a solid pad behind the logo in your background color, so transparency blends cleanly.
- Keep good resolution. A blurry logo makes the whole code look low quality, even if it scans.
- Avoid logos that look like QR modules. Square, pixelated or checkerboard patterns can confuse a scanner near the edges of the pad.
Common mistakes that stop scanning
- Logo too large. The most common problem. If a code scans slowly or only from certain angles, shrink the logo first.
- Low error correction. A logo on a level L or M code has very little margin. Use level H.
- Low contrast colors. A logo encourages brand colors, but a light foreground or a dark background can make the code hard to read. Our guide to QR code colors that scan covers safe combinations.
- Printing too small. A logo code is denser at level H, so it needs a little more size to keep each module crisp. Check the minimum QR code size for your scanning distance.
- Covering the corners or quiet zone. Decorative frames and borders that crowd the code can break it even when the center logo is fine.
- Not testing the final print. Test the printed piece, not just the screen version. Paper texture, lamination glare and curved packaging can change how a code reads.