QR Code Generator with Logo
Add your logo to the center of a QR code without breaking its scannability. High error-correction, composited entirely in your browser; download as PNG.
100% in your browser — your text and logo never leave your device.
How to add a logo to your QR code
- Type or paste the text or URL you want the code to open.
- Upload a logo image — a square PNG or JPG works best.
- Your logo is centered on top automatically, behind a white pad.
- Click Download PNG to save the finished, branded code.
Why put a logo in a QR code
A plain black-and-white QR code is anonymous — nobody can tell whose code it is until they scan it. Dropping a company logo, app icon or personal mark in the center turns the code into a recognizable piece of branding in its own right: on packaging, a menu, a poster or a business card, a branded code signals legitimacy before anyone even scans it, and it reinforces the brand at the exact moment someone is about to interact with it. It is a small design touch that a plain generic code cannot offer.
Why high error correction keeps a logo-covered code scannable
A QR code stores the same data multiple times over using Reed-Solomon error correction, so a scanner can rebuild the full message even if part of the pattern is missing or covered. The QR standard defines four error-correction levels, and level H — used for every code this tool generates — reserves the most redundancy of the four, tolerating roughly 30% damage or occlusion. Covering the center with a small, centered logo eats into only a fraction of that budget, which is why this tool never lowers the error-correction level to save space: doing so would remove the very safety margin that makes a logo overlay possible.
Keep the logo small and centered
The center of a QR code is the safest place to place an overlay because the corner "finder" squares a scanner locks onto first stay untouched. This tool sizes your logo to roughly a fifth of the code's width and centers it for exactly that reason — enlarging it further starts eating into the data modules a scanner needs, and pushing it off-center risks overlapping a finder pattern. If you plan to print the code small, keep the logo simple: a busy, high-detail mark becomes an illegible smudge at business-card size even before you add a QR pattern underneath it.
Related tools
- QR Code Generator — generate a plain text or URL QR code without a logo.
- vCard QR Code Generator — encode full contact details instead of a single link.
Frequently asked questions
- Does my logo or text get uploaded to a server?
- No. The QR code and the logo compositing both happen entirely in your browser using the Canvas API. Nothing you type or upload is sent anywhere — you could disconnect from the internet after the page loads and it would still work.
- Will a QR code with a logo still scan reliably?
- Yes, as long as the logo stays small and centered. This tool always encodes at error-correction level H, the highest level the QR standard defines, which lets a scanner reconstruct the code even with roughly 30% of it obscured. The logo here covers well under that, leaving a comfortable margin.
- What size and format should my logo be?
- A square logo works best — this tool sizes it to about a fifth of the QR code's width and centers it automatically, so you do not need to pre-crop it. PNG or JPG both work fine; a simple, high-contrast mark reads better at small size than a busy or highly detailed image.
- Can I use a logo with a transparent background?
- Yes. Upload a PNG with transparency and the tool still draws an opaque white rounded pad behind it first, so the logo sits on a clean white square regardless of what is behind it in your source image — no transparent pixels blend into the QR pattern underneath.
- What file format does the download use?
- The finished QR code — with the white pad and your logo already composited in — downloads as a single PNG file, ready to drop into a document, a slide or a print layout.
- Is there a limit on the logo file size or dimensions?
- No hard limit is enforced, but this runs in your browser rather than on a server, so extremely large source images (many megabytes, very high resolution) may take a moment longer to decode. A typical logo export — well under a megabyte — loads instantly.
- Why does this use error correction level H instead of the default?
- Lower error-correction levels leave less redundancy in the code, so covering even a small area with a logo can make the code unreadable. Level H is the one level in the QR spec with enough built-in redundancy to survive a centered logo overlay, which is why this tool always generates at H rather than the M level used for plain text QR codes.