jasper@bernaers: ~/QR
← terminal
// free tool — 100% client-side

QR code generator

Generate QR codes for URLs · text · email · phone · WiFi — instantly, free, no signup.
Custom colors · 4 sizes · PNG download · shareable links · offline-ready.

input — url, text, email, phone, wifi...
○ waiting for input
0 chars
H — recovers 30% data loss (recommended)
FG #00ff88
BG #0a0e0f
size:
chars:
ec: H
// what you can encode

URLs & links — paste any https:// URL
Plain text — notes, codes, passwords
Email — mailto: format
Phone — tel: format
WiFi — WIFI:T:WPA;S:name;P:pass;;
vCard — BEGIN:VCARD format

// error correction

L — 7% recovery, smallest QR size
M — 15% recovery, balanced default
Q — 25% recovery, good for print
H — 30% recovery, best for logos & damaged surfaces

// privacy & performance

100% client-side — your data never leaves the browser. No server, no tracking, no storage of your inputs. Works fully offline after first load.

How do I generate a QR code for a website URL?
Paste your URL into the input field above and the QR code generates instantly. Click "download PNG" to save it. The QR code will direct scanners straight to your website.
Can I customize the QR code colors?
Yes. Choose from 5 preset color themes (Terminal green, Cyan, Classic black/white, Ghost, Gold) or use the custom color pickers to set any foreground and background color. Make sure there is enough contrast for reliable scanning.
What file formats can I download?
Download as a high-resolution PNG at 128, 256, 384, or 512 pixels. You can also copy the image directly to your clipboard for immediate pasting into documents, slides, or social media posts.
How do I create a WiFi QR code?
Type or paste a WiFi string in this format: WIFI:T:WPA;S:YourNetworkName;P:YourPassword;; — replace the network name and password with your own. When scanned, most phones will automatically offer to connect to that network.
Is this QR code generator really free?
Yes, completely free with no signup, no ads, and no limits. QR codes are generated directly in your browser using JavaScript, so no data is ever sent to a server.