Skip to content
Spellkit

QR Code Generator

Turn URLs and text into QR codes.

Center logo (optional)

Type something to generate a QR code.

What is QR Code Generator?

QR Code Generator is a free online tool that turns any URL or text into a QR code you can download as a PNG, right in your browser. The code updates live as you type — choose a size from 128 to 1024 px and an error-correction level, then save a print-ready image.

Key features

  • Live preview updates as you type
  • Sizes from 128 to 1024 px for screen or print
  • Error-correction levels L, M, Q, H (up to ~30% recovery)
  • Custom colors and an optional center logo
  • Downloads as a high-resolution PNG

How to generate a QR code

Type a link or any text and a scannable QR code appears instantly, updating live as you edit. When it looks right, download it as a PNG. It works for a website, a Wi-Fi string, a phone number, a plain message — anything a QR reader can hand back as text.

Size: screen vs print

Sizes run from 128 to 1024 pixels. For a code on a screen, 256 is plenty. For anything printed, choose a size to match the physical dimensions and scanning distance — a poster read from across a room needs far more pixels than a business card. A rough rule for print is that the code should be at least a tenth of the distance it'll be scanned from. The exported PNG includes a small quiet-zone margin around the code (about two modules), which scanners need to lock on, so don't crop right up to the edge.

Error correction — and what the logo does

Error correction adds redundant data so a code still scans when part of it is dirty, wrinkled, or covered:

  • L ≈ 7% recoverable — smallest, densest.
  • M ≈ 15% — the default, a solid all-round choice.
  • Q ≈ 25%.
  • H ≈ 30% — most robust.

Higher levels pack in more modules (the little squares), so the pattern gets denser for the same size. This directly ties into the logo option: the moment you add a center logo, the tool forces the level to H and locks the selector, because the logo hides part of the code and you need that ~30% headroom to keep it scannable. The logo sits in a box about 22% of the code's width, on a solid backdrop so it doesn't bleed into the pattern. Keep a logo small and central — cover too much and no error-correction level will save the scan.

Color gotchas

You can set custom foreground and background colors, but scanners rely on contrast, and they expect dark modules on a light background. Keep strong contrast, and don't invert to a light pattern on a dark field — many readers won't recognize it. Test any colored code with a real phone before you print a batch.

Things worth knowing

  • The code is generated locally from the text you type; nothing you enter is transmitted to a server.
  • These are static codes — the content is baked into the pattern. You can't edit the destination later or track scans; changing the text produces a brand-new code, so reprint if you've already distributed one.
  • Longer text makes a denser code. A short link scans more reliably than a long one, so shorten URLs before encoding when you can.
  • The download is a high-resolution PNG named qrcode.png, ready to drop into a design or send to print.

Frequently asked questions

Why did the error-correction option lock to H when I added a logo?
A center logo hides part of the code, so the tool forces level H (about 30% recoverable) to keep it scannable and disables the selector while a logo is set. The logo covers roughly 22% of the code's width on a solid backdrop, so keep it small and central or the scan will fail.
Can I change where the code points after printing it?
No. These are static codes with the destination baked into the pattern, and there's no scan tracking. Editing the text produces a completely new code, so reprint if you've already handed copies out.
What size should I use for print?
Sizes go up to 1024 px; 256 is fine on screen, but print needs more pixels the farther away it's scanned, roughly a tenth of the scanning distance as a guide. The PNG keeps a small quiet-zone margin around the code, so don't crop right to the edge.
Can I make a light code on a dark background?
It's risky. Scanners expect dark modules on a light background, and many won't read an inverted code. You can set custom foreground and background colors, but keep strong contrast and test with a real phone before printing a batch.
Does a longer URL change the code?
Yes. More data means more modules, so the pattern gets denser and harder to scan at small sizes. Shorten long links before encoding when you can. The finished code downloads as a PNG named qrcode.png.

Privacy

The QR code is rendered locally from the text you type; nothing you enter is transmitted to a server.