QR Code Generator
Create QR codes locally in your browser — no signup, no watermark, no tracking. Download as clean SVG or PNG.
🔒 Generated locally in your browser — nothing is uploaded, no watermark, no tracking.
What does this tool do?
QR Code Generator turns any text or URL into a QR code — the two-dimensional barcode that phones scan with their camera. Type or paste your content, choose an error correction level, and download the result as a clean SVG or PNG.
Everything happens in your browser. The content you type is encoded locally and never uploaded, and the download has no watermark, no logo and no tracking.
Why no watermark and no tracking matters
Most QR generators watermark the PNG or gate the download behind an email. This one doesn’t. The QR you download is exactly what your scanner sees: a clean black-on-white matrix with the standard quiet zone. Nothing is injected, and no network request is made while generating.
Error correction levels
A QR code embeds redundant data so it can still be read if part of it is damaged or covered. You choose how much redundancy to add:
| Level | Recovery | Use it when |
|---|---|---|
| L | ~7 % | Maximum data density, clean printing, controlled conditions |
| M | ~15 % | Good default for screens and general use |
| Q | ~25 % | Codes that may get dirty or partially covered |
| H | ~30 % | Logos overlaid on the code, harsh environments |
More recovery means a denser, larger code for the same content. If the content doesn’t fit at the level you picked, lower the level (for example from H to M).
The quiet zone
Every QR code needs a quiet zone: a clear margin around the matrix, at least 4 modules wide, so scanners can tell where the code starts and ends. This tool includes the 4-module quiet zone automatically in both the SVG and the PNG.
How much fits in a QR code
Capacity depends on the content and the error correction level. A QR code has 40 sizes (“versions”); the largest (version 40) holds at most about 2,900 bytes of arbitrary data. Plain text and URLs encode more efficiently than random binary content, and numbers encode more efficiently still.
For a URL or a short text you will almost never hit the limit. If your content is too long, shorten it or lower the error correction level.
Content formats that just work
You can encode any string. Common formats are just text written in a standard way — no special mode is needed:
- URL —
https://example.com/page - Email —
mailto:hello@example.com?subject=Hi - Phone —
tel:+34600123456 - SMS —
SMSTO:+34600123456:Hello - Wi-Fi —
WIFI:T:WPA;S:NetworkName;P:Password;; - Contact (vCard) — a
BEGIN:VCARD … END:VCARDblock
Paste any of these exactly as shown and the result will open the right app when scanned.
What this tool does not do
No dynamic QR codes, no scan analytics, no account, no logo uploads. It produces a static QR code from your content and nothing else. Scan carefully: like any QR code, a code that encodes a link will open that link on the phone that scans it.