induwara.lk
induwara.lkUtility · Generator

QR Code Generator — URLs, Wi-Fi, vCards, and more

Create a scannable QR code in seconds for a link, plain text, a Wi-Fi network, a contact card, or a pre-filled email or SMS. Pick the colours, set the error-correction level, drop in a centre logo. Encoded entirely in your browser — no signup, no upload, no expiry.

By Induwara AshinsanaUpdated May 11, 2026
Generate a QR codeISO/IEC 18004
Runs in your browser

The link people will be sent to when they scan the QR.

Fill in a field on the left — your QR appears here instantly.
Bytes
QR version
ECC M
Built in your browser — input never leaves the page.

How it works

QR Code is an ISO/IEC 18004 symbology — a published international standard that any encoder and any reader agree on. The data you type is mapped through four steps: mode selection, error correction, masking, and module placement. Pick a mode (URL, Wi-Fi, vCard, etc.) and the generator turns your input into the canonical payload string for that mode, then the encoder packs the bytes into the smallest QR symbol that holds them at the error-correction level you chose.

Payload formats. Each non-text mode uses a published convention so that any standards-compliant scanner does the right thing on scan:

  • WIFI:T:WPA;S:SSID;P:password;; — ZXing Wi-Fi format. Reserved characters (\, ;,,, :, ") are backslash-escaped.
  • MATMSG:TO:[email protected];SUB:Subject;BODY:Body;; — the broadest-compat email format (works on legacy Android cameras that don't parse mailto:).
  • SMSTO:+94771234567:Hello — pre-fills the SMS app with recipient and body.
  • tel:+94771234567 — RFC 3966 dial-string.
  • vCard 3.0 (RFC 2426) — a multi-line block starting with BEGIN:VCARD and ending with END:VCARD. Commas, semicolons, and backslashes inside fields are escaped per section 5 of the RFC.

Error correction. QR Code uses Reed-Solomon ECC over a Galois field, so part of the code can be obscured (a sticker, a coffee stain, a centre logo) and the symbol still decodes. The four levels — L (~7%), M (~15%), Q (~25%), H (~30%) — describe how much of the data you can lose. Higher levels add redundancy bytes, which is why the same text produces a denser code at H than at L.

Capacity. At version 40 (the largest QR symbol, 177 × 177 modules) you can store up to 2,953 bytes at level L and 1,273 bytes at level H. This generator runs a capacity check before handing the payload to the encoder, so you get a clear error if your input is too long to fit any symbol at the chosen ECL — rather than a silent failure deep inside the encoder.

Cross-checked. The minimum QR version computed from the ISO/IEC 18004 byte-capacity table is compared against the version theqrcodeencoder actually selects. If they disagree, the capacity table on this page is wrong — and the "cross-checked ✓" line under the QR version readout will not appear. They match for every input we've tested so far.

Worked examples

URL · https://induwara.lk

  1. Mode: URL
  2. Payload: https://induwara.lk (19 bytes, UTF-8)
  3. ECL M → minimum version 2 (25 × 25 modules)
  4. Bytes available at v2-M: 26 — comfortably fits.

Wi-Fi · WPA2 password with special characters

  1. SSID: My-Net, password: p;s\, encryption: WPA
  2. Escape reserved chars: ';' → '\;', '\' → '\\'
  3. Payload: WIFI:T:WPA;S:My-Net;P:p\;s\\;; (30 bytes)
  4. ECL Q → minimum version 2; uses byte-mode UTF-8.
  5. Scan with any modern phone camera to auto-join.

vCard · contact with name, phone, email

  1. Inputs: Induwara Ashinsana, +94771234567, [email protected]
  2. BEGIN:VCARD / VERSION:3.0 / FN:… / N:Ashinsana;Induwara;;;
  3. TEL;TYPE=CELL:+94771234567
  4. EMAIL;TYPE=INTERNET:[email protected]
  5. END:VCARD (≈100 bytes after CRLF line endings)
  6. ECL M → version 5 or 6 depending on optional fields.

Frequently asked questions

Sources & references

Capacity tables and payload formats above were last cross-checked against the cited primary sources on 2026-05-11. If any reader app ever interprets a QR from this page incorrectly, please email me with the exact input — that is the kind of fix we ship within 24 hours.

Related tools

Rate this tool
Be the first to rate

Comments & feedback

Spotted a bug or want an improvement? Tell us — our team reviews every comment, and good ideas get built. Comments are public and anonymous.

Found a bug, edge case, or want to suggest a new payload format?

Email me at [email protected] — most fixes ship within 24 hours.