QR Code Generator
Type text or a link and get a QR code in real time. Customize colors, size and error correction, overlay a logo at the center, and export PNG or SVG.
Higher levels survive more damage or occlusion, but produce denser codes.
Optional. Overlays an image at the center with a white backing so the code stays scannable.
Preview
About custom QR codes
QR codes survive damage thanks to Reed–Solomon error correction: level L recovers about 7% of the code area, level H up to 30%. That redundancy is exactly what makes center logos possible — the covered modules are reconstructed mathematically. So whenever you add a logo, pick level H and keep the logo under 25% of the code width.
Colors are free-form with one hard rule: foreground and background need strong luminance contrast. Dark modules on a light background are always the safest; inverted codes work with many scanners (this tool's decoder handles them) but are less compatible. Export PNG for screens and SVG when the code will be printed and scaled up.
What this tool does
Custom appearance
Tune foreground and background colors, size, margin and error correction, overlay a logo at the center, and export PNG or SVG.
Structured decoding
WiFi, URLs, email, phone, SMS, geo, contact cards and calendar events are parsed automatically — extract and copy a WiFi password in one click.
Nothing leaves your device
Generation and decoding run locally in your browser. Images, passwords and text are never uploaded anywhere.
Frequently asked questions
Should I export PNG or SVG?
PNG for screens and chat sharing; SVG whenever the code will be printed or enlarged — vectors stay sharp at any size.
Which error correction level should I pick?
M is fine for clean digital use. Pick H when you add a logo or print on surfaces that wear out. Higher levels make denser codes, so lower levels look cleaner for long content.
How much content fits in one QR code?
Up to roughly 2,900 characters at the lowest correction level. But denser codes scan worse — stay under ~300 characters in practice, and shorten long URLs first.
Why won't my colored QR code scan?
Almost always a contrast problem: the foreground is too light or too close in luminance to the background. Switch to a darker foreground and it will usually work.