// No account · No expiry · 100% client‑side

Free QR Code Generator with Logo or Image

Add your logo or any image to a QR code and keep it scannable. Free, private, no sign-up, with the real size limit per error correction level.

50QR code types
61Frame styles
6File formats
1 Complete the content
Direct Destination
Direct link encoding without intermediary redirects, countdowns, or expiration.
2 Design your QR
Shape style
Border style
Center style
3 Download your QR
Example preview

Example QR code preview shown. Enter content to create your code.

Excellent
High contrast and optimal density. 100/100
px
px

Need to change it after printing? Make a dynamic URL QR code

No recent history found. Create and download a QR code to see it here.

A QR code with a logo works because QR codes carry redundant data: the generator hides the modules under your logo, and the error correction rebuilds them when the phone scans. The logo cannot be any size you like. This generator sets a limit based on the error correction level, and choosing Level H (which the generator selects automatically when you add a logo) gives the logo the most room.

How do you make a QR code with a logo?

  1. Enter your content (a URL, text, or any other type) and open the Design options.
  2. In the Logo tab, pick a preset or upload your own PNG, JPG, or SVG.
  3. Check that the Level tab shows H. The generator selects it when you add a logo and shows a "Logo Protection Active" note. You can change it, but the scannability score will warn you if you drop to L or M.
  4. Download the SVG for print or PNG for screens, and scan the downloaded file.

How large can the logo be?

Error correction levels are quoted as percentages (7%, 15%, 25%, 30%). Those describe how many of the code's data blocks can be recovered, not how much of the surface you can cover, so "30% error correction" does not mean a logo can cover 30% of the area. The QR library in this generator applies its own rule: the modules hidden behind the logo are capped at 40% of the level's correction capacity.

LevelRecovery capacityMax. hidden modules (40% of capacity)Logo width, approx. share of code width
L7%2.8%17%
M15%6%24%
Q (the default)25%10%32%
H30%12%35%

The table follows from the rule in the generator's library. The last column is the square root of the hidden share, and it ignores the blank margin drawn around the logo, so treat it as an upper bound. In practice a logo around a third of the code's width is the ceiling, and smaller is safer. The unused correction budget is not spare: print defects, glare, a curved surface, or a worn sticker all consume it.

Why does a logo make some codes fail?

  • Dense codes have small modules. A 100-character link at Level H is a 57 × 57 grid, and a logo covering 12% of it removes roughly 390 modules. A longer link raises the grid size but not the fraction, so a big logo on a long link often scans worse than the numbers suggest, because each visible module is smaller.
  • The finder patterns must stay clear. The three corner squares are how the phone locates the code. The generator keeps the logo away from them, but a frame or sticker placed over them defeats it.
  • Print size interacts with everything. Read the print size guide, then test at the final size.

Can you use a photo or other image instead of a logo?

Yes. The Logo tab takes any PNG, JPG or SVG, so a headshot, a product shot or a pet photo works the same way a logo does. A photo has more to lose than a logo, though, because the space in the middle of the code is small:

  • Crop it square and tight around one subject. A face or a single object reads at print size; a group photo or a landscape turns into a blur.
  • Prefer a plain or removed background, saved as a transparent PNG, so the picture doesn't sit in a white box that covers extra modules.
  • Keep contrast between the picture's edge and the dark modules around it, and scan-test the result as you would with any logo.

If the goal is for the code to open photos rather than show one, that's a different tool: an image QR code links to a hosted gallery.

Which logo file works best?

  • SVG or a transparent PNG for a clean edge on top of the pattern.
  • A simple, high-contrast mark rather than a detailed badge. Fine detail turns to a smudge at 8 mm.
  • JPG with a white background works, but the white box covers modules the plain shape would have left visible.

What about colors?

Keep the code dark on a light background and check contrast rather than trusting a fixed number: guides quote different minimum ratios, and no single one is an official rule. Our contrast checker shows the ratio and the scanner-safety verdict for your exact pair. The QR color design guide explains why inverted or low-contrast codes fail on some readers.

When should you skip the logo?

  • On very small prints (a 1 cm sticker).
  • On payment or authentication codes, where a failed scan costs more than a missing brand mark. EPC payment codes, for example, are specified with error correction level M.
  • On screens viewed from a distance, where the logo is unreadable anyway.

How do you test it?

Scan with two phones, in good and poor light, at the final printed size. Use the scannability tester to simulate glare, blur, and low light, and the QR validator for a pass/fail on the exported file. More on branding in QR code logo best practices and error correction levels.

Want the code to open photos rather than show a picture in its centre? That is an image QR code: it links to a hosted photo gallery.

References

// FAQ

Frequently Asked Questions

Clear, direct answers to common questions about generating and deploying QR codes.

Yes. In the Logo tab, upload any PNG, JPG or SVG, including a photo. Crop it square around one clear subject, because fine detail is lost at print size, and the generator keeps it within the area error correction can rebuild. If you want the code to open a set of photos, make a dynamic image QR code instead.

Unlikely, if it stays within the limit. The generator's library caps the modules hidden behind the logo at 40% of the level's correction capacity: about 10% of modules at Q and 12% at H, which is roughly a third of the code's width at most. Still scan-test the finished code.

No. The percentages describe how many data blocks can be recovered, not how much surface you can cover. Print defects, glare, and curved surfaces use up the same budget.

Level H. Adding a logo selects it automatically and shows a Logo Protection note. You can change it, but the scannability score warns you if you drop to L or M.

SVG or a transparent PNG with a simple, high-contrast mark. A JPG with a white background works but its box covers more modules. Fine detail turns to a smudge at small sizes.

On very small prints, on payment or authentication codes where a failed scan costs more than a missing brand mark, and on screens read from a distance.

Scan with two phones in good and poor light at the final printed size, and use the scannability tester to simulate glare, blur, and low light.