Image Tools

QR Code Generator

Generate a QR code from text or a URL in the browser and download the resulting image.

QR Code Generator — Online Calculator

QR Code Generator

Create a private, static QR code directly in your browser.

Your QR code appears here

The QR Code Generator builds a scannable QR code from six kinds of content (plain text or a URL, Wi-Fi credentials, an email, a phone number, an SMS, or a contact card) with your choice of size (200, 300, 400, or 600 pixels), error-correction level, and foreground and background colours, ready to download for print or screen. The payload is assembled in your browser; no QR API service receives your data.

How It Works

Each content type has a standard payload format that phones recognize, and the generator builds exactly that string: Wi-Fi becomes a WIFI: payload with the encryption type, network name, and password (special characters escaped); email becomes a mailto: link with optional subject and body; phone becomes a tel: link; SMS becomes an SMSTO: payload with number and message; and a contact becomes a vCard 3.0 block with name, phone, email, organization, and website. The renderer then encodes the payload into the QR grid at your chosen error-correction level, which defaults to the strongest, H.

Parameters

| Input | Required | Meaning | |---|---|---| | Content type | Yes | Text, Wi-Fi, email, phone, SMS, or vCard | | Content fields | Yes | The details for the chosen type | | Size | No | 200 to 600 px (default 300) | | Error correction | No | L, M, Q, or H (default H) | | Colours | No | Six-digit hex foreground and background |

Error correction: the level is a damage budget

Error correction rebuilds missing data from redundancy built into the code, at four standard grades: L recovers about 7% of the code, M about 15%, Q about 25%, and H about 30%. That budget is spent on real-world damage: scratches, glare, a sticker over part of the code, or a logo placed in the centre (a common branding move that works precisely because H-level codes can lose their middle and still scan). The trade is density: higher correction makes the grid finer for the same content, and finer grids scan worse at small sizes and long distances. The defaults here (H) suit codes that will be printed, handled, and logo-branded; for a clean on-screen code carrying a long URL, stepping down to M or Q visibly simplifies the grid and can scan faster.

Size, distance, and the quiet zone

Pixel size is resolution, not physical size: what decides scannability is the printed size against the scanning distance, with the working rule of roughly 1:10 (a code scanned from 30 cm should be at least about 3 cm wide; a poster scanned from 3 metres needs 30 cm). Always leave the white border (the quiet zone, about four modules wide) intact when placing the image; cropping into it is the most common reason a valid code refuses to scan. Choose the 600 px size for anything printed larger than a business card so modules stay crisp, and 200 or 300 px for screen use where the file stays light. Content length matters as much as settings: a longer payload means a denser grid at every size, so shorten URLs (or use a redirect you control) before generating, especially for codes that will be printed small.

Colour and contrast rules

Scanners read contrast, not colour: the requirement is a dark foreground on a light background with strong luminance difference, which the defaults (near-black #060d1f on white) satisfy. Brand colours are welcome within that physics: a deep navy, forest green, or burgundy scans perfectly, while pastel foregrounds, low-contrast pairings, and inverted codes (light modules on a dark background) fail on many stock camera apps even when a premium scanner reads them. Gradients and busy backgrounds behind the code are decoration purchased with reliability. Whatever styling you choose, the test protocol is the product: print at final size, scan with the oldest phone and the worst lighting the code will meet, and only then commit to the run.

Payload notes by type

Wi-Fi codes are the highest-value and highest-risk type: they hand the network password to anyone who photographs the poster, so guest networks only, and note the escaping (network names containing semicolons, commas, or backslashes are escaped automatically here, a detail hand-rolled payloads often miss, breaking the code silently). vCard contacts save with the fields the form carries (name, phone, email, organization, website); richer cards with addresses and notes exceed what this generator builds. Email and SMS payloads prefill the message on the scanner's device; nothing sends until the user confirms, which makes them safe for feedback and enquiry codes. A QR code itself is just text in a grid: the generator cannot verify that your URL resolves, your number is correct, or your Wi-Fi password is current, so proofread the payload as carefully as the design.

Frequently Asked Questions

Do QR codes expire?

No. A QR code is a static picture of its payload; it works forever as long as it stays scannable. What expires is what it points to: a dead URL, a changed Wi-Fi password, or a reassigned phone number silently strands a permanent code, which is why pointing codes at addresses you control and can redirect is the professional pattern.

Why does my styled code not scan?

Work the checklist in order: contrast too low, quiet zone cropped, printed too small for its density or distance, inverted colours, or a payload so long the grid is microscopic. Revert to black on white at a larger size and it will almost certainly scan; then reintroduce one styling choice at a time.

Is it safe to put a password in a Wi-Fi QR code?

It is as safe as the poster it is printed on: anyone who can see the code can extract the password (scanners display it). That is acceptable for a guest network and unacceptable for your main home or office network, whose password should never be rendered into a printable image.

Related Tools