QR Code with Logo: How to Add Your Logo and Keep the Code Scannable
How a QR code can carry a logo in the middle and still scan, the rules that keep it readable in print, and how to add your logo in CodeQR.


A QR code with a logo works because QR codes are built to survive damage. The logo hides part of the pattern, and the code's error correction rebuilds what is missing. To keep it scannable, use the highest error correction level, keep the logo small and in the center, clear the dots behind it, keep strong contrast and a blank margin around the code, and test a printed proof on more than one phone before you print the full run.
Facts about the QR code standard below come from qrcode.com, the site of Denso Wave, the company that created the QR code, as it read on October 28, 2026.
How a QR code can carry a logo and still scan
Denso Wave puts it simply: "QR Code has error correction capability to restore data if the code is dirty or damaged." A logo in the middle is, to a scanner, a deliberate patch of damage. As long as the hidden part is within what the error correction can restore, the scanner recovers the full content.
That margin is shared. The same error correction also has to absorb a scratch on a sign, a crease in a flyer or glare on a glossy menu, and whatever the logo uses is no longer available for those. So the goal is a logo that takes as little of it as possible.
Use the highest error correction level
QR codes come in four error correction levels, from L (lowest) through M and Q to H (highest). Denso Wave notes that "Typically, Level M (15%) is most frequently selected," and gives 25% as the rate that corresponds to Level Q. Its advice is that "various factors such as the operating environment and QR Code size need to be considered."
With a logo on top, choose H. The trade-off is density: Denso Wave explains that each QR code version, meaning each size of the grid, "has the maximum data capacity according to the amount of data, character type and error correction level." A higher level fits less content in the same grid, so keep the content short. A dynamic QR code does that for you, because it stores a short link rather than your full web address.
In the CodeQR editor, every code uses level H. If you create codes through the API, the default level is M, so send level H whenever the code carries a logo.
Keep the logo small and in the center
Put the logo in the middle of the code and keep it small. In the CodeQR editor the logo is centered and sized at about 15% of the code's width, and there is no size control, so it can't be stretched past that.
At that size, use your symbol or initial rather than a long wordmark. CodeQR's upload hint puts it plainly: square works best.
Clear the dots behind the logo
A logo laid straight over the pattern leaves fragments of dots around its edges. The cleaner result is to remove the modules under the logo first, so the logo sits in an empty square.
CodeQR does this automatically: the dots behind the logo are removed before the logo is drawn.
Keep strong contrast
Brand colors are fine for the code as long as the dots stay clearly darker than the background. Watch for two cases in particular: two colors too close in tone, and a light code on a dark background.
The CodeQR editor rates each design's scannability as Good, Fair or Poor, and it flags both. It warns when "the code and background colours are too close to tell apart," and when you use a light code on a dark background, which "fails on some scanners." The rating is a guide and never blocks a download, so a printed test is still the final check.
Leave the blank margin around the code
Denso Wave's FAQ says "a white space worth 4 modules is needed around it." A module is one of the small squares that make up the code. That margin, called the quiet zone, tells the scanner where the code starts.
Watch the edges as well as the center. A frame drawn too tight, a background pattern running into the code or a crop that trims the border all remove that margin, so keep it on every version you export.
Don't redesign the code itself
Denso Wave warns that "users of QR Code must be careful about deforming the code by overlaying it with an illustration." Its guide to generating codes adds that codes "distorted due to image processing or decorated ones may not be readable."
Keep the code square, don't stretch it to fit a layout, and don't run text or illustrations across it. If you also use styled dots or corners, test them together with the logo.
Prepare the logo file
- Use a square version of the logo, or the symbol on its own.
- In CodeQR, upload PNG, JPEG, WebP or SVG, up to 2 MB. An SVG is converted to an image when you upload it.
- Use a version that stays clear at small sizes, with no thin lines or fine text.
Print size and testing
Denso Wave recommends "that each module is made up of 4 or more dots" of the printer and that codes "be printed as large as possible within the available printing area." A logo makes size matter more, because it already uses part of the margin.
Before printing the full run, print one proof at the real size on the real material. Scan it with at least two phones, an iPhone and an Android if you can, from the distance people will actually stand. A test on your screen doesn't tell you how the code behaves on the paper, label or packaging you will print on.
How to add a logo to a QR code in CodeQR
- Create a QR code, or open one you already have.
- In the logo options, choose your workspace logo or upload one for this code.
- Adjust colors, then check the scannability rating.
- Download the code as SVG, PNG or JPG.
Uploading your own logo needs a paid plan, Starter included. Codes on the Free plan carry the CodeQR logo in the middle. Colors can be changed on any plan, while premium dot patterns and frames with text such as "Scan me" need a paid plan. See pricing for what each plan includes, and Add your logo, colors, and a frame to a QR code for the full steps, including the API.
Changing the logo after the code is printed
A dynamic QR code lets you change where it goes after printing, but not what the printed image looks like. A new logo, new colors or a new frame only affect the next file you export. Settle the design before the print run, and use the destination, which you can still change, for everything that may move later.
If a printed code stops scanning, Fix a QR code that is not scanning goes through the usual causes. For more on designing around QR codes, see QR code graphic design.
QR codes with logos: questions
Yes. QR codes have error correction, which restores data when part of the code is hidden or damaged. A small logo in the center, on a code with a high error correction level, still scans. Test a printed proof before printing the full run.