Loading...
Loading...
Type or paste any URL, Wi-Fi credential, contact card, or message and get a downloadable QR code. Colors, error correction, and margin are all under your control — no upload, no signup, no watermark.
A QR code is a two-dimensional barcode that stores text, URLs, or other short data so a phone camera can decode it instantly. The dark and light squares (called modules) encode the bytes plus extra error-correction symbols, which is why a code can still be scanned even when part of it is dirty, scratched, or hidden behind a logo. This generator runs the same encoder that produces the QR codes you see on posters, restaurant menus, and product packaging — but it runs locally in your browser, so the link or message you encode is never sent to any service. You can pick the size, color, margin, and error-correction level, then download a PNG for printing or an SVG for clean scaling at any size.
Most QR codes encode a URL — paste it as-is, including the https:// prefix. You can also encode plain text, contact details, Wi-Fi credentials (WIFI:T:WPA;S:NetworkName;P:Password;;), or SMS/mailto links.
L is the smallest and densest, H is the most resilient. Use M for everyday use, Q or H if you plan to print the code small or place a logo over the center.
Drag the size slider to change the export resolution and pick foreground and background colors. The margin (also called the quiet zone) is the white border scanners need around the code — keep at least 2 modules.
PNG is best for emailing, embedding in slides, or printing at a fixed size. SVG keeps the code mathematically perfect — use it when you need to enlarge for posters or include in vector design files.
Always scan your code with at least two phones (one iOS, one Android) before sharing widely. The scan should land on the exact URL or text you encoded with no decoding errors.
1. Pick an encoding mode (numeric, alphanumeric, byte, or kanji) based on the input. 2. Add a length header and pad the bitstream to a fixed length for the chosen version. 3. Split the bits into Reed–Solomon error-correction blocks at the chosen level (L/M/Q/H). 4. Interleave the data and error-correction codewords across the matrix. 5. Place the three locator squares, alignment patterns, timing rows, and version info. 6. Apply the mask pattern that produces the most uniform light/dark distribution.
QR codes are an ISO/IEC 18004 standard. The encoder picks the smallest version (matrix size) that fits the input at the requested error-correction level, then interleaves Reed–Solomon parity bytes with the data so the code can survive partial damage. A mask pattern is applied last so the matrix has roughly equal black and white modules — this is what makes QR codes look 'random' rather than streaky. Decoders reverse the process: locate the three corner squares, deskew the image, demask, and run the Reed–Solomon correction to recover the original bytes.
Reference: ISO/IEC 18004 — QR Code specification
| Goal | Encode this string |
|---|---|
Open a website | https://example.com The most common use — paste the full URL with https://. |
Connect to Wi-Fi | WIFI:T:WPA;S:MyNetwork;P:secret123;; iOS and Android prompt to join the network on scan. |
Send a text message | SMSTO:+15551234567:Hello Pre-fills SMS recipient and body in the phone app. |
Save a contact card | BEGIN:VCARD\nVERSION:3.0\nFN:Jane Doe\nTEL:+15551234567\nEND:VCARD Scanners offer to add the contact directly. |
Create strong, random passwords with configurable length and character rules.
Generate classic placeholder text in paragraphs, sentences, or words with HTML wrapping.
Generate cryptographically random UUIDs (v4) or time-based UUIDs (v7) by the dozen.
Calculate your exact age in years, months, and days from any date of birth.
Last updated