Skip to the tool
DevToolBench

QR Code Generator

QR codes for links, text and Wi-Fi, as SVG or PNG.

QR code for the content entered

Version 2 (25×25) · level M · mask 3 · byte (UTF-8) · 204 of 224 data bits

Scan it with your own phone before printing. The code is fixed: if the URL or password changes, you need a new one — there is no redirect service behind it.

Everything runs in your browser. Nothing you type is sent to a server.

Found a bug in this tool? Report it.

Share this tool

What this tool does

This QR code generator turns a link, a piece of text, Wi-Fi credentials, an email or a phone number into a QR code you can download as SVG or PNG. It chooses the smallest symbol that fits your content at the error correction level you pick, and everything happens in your browser: no account, no tracking link, no copy of your data on anyone's server.

The encoder is written from the ISO/IEC 18004 specification rather than pulled from a library. It selects numeric, alphanumeric or byte mode, picks a version from 1 to 40, computes the Reed–Solomon error correction, interleaves the blocks, and tries all eight mask patterns, keeping the one with the lowest penalty score. Its output was checked bit for bit against an independent encoder and read back by a barcode scanner for every version and level.

How to use it

  1. Choose what the code should contain: a website, plain text, a Wi-Fi network, an email or a phone number.
  2. Fill in the fields. The code redraws as you type, and the line below it tells you the version, mask and how much of the capacity you are using.
  3. Pick the error correction level and the size in pixels per module.
  4. Download the qr code svg for print and design work, or the PNG for documents and slides. Scan it with your own phone before it goes anywhere.

Wi-Fi QR codes

A wifi qr code lets guests join your network by pointing their camera at it, with no typing. The content follows the WIFI:T:WPA;S:network;P:password;; format that iOS and Android cameras recognise. Semicolons, commas, colons, quotes and backslashes in the network name or password are escaped automatically — a detail many generators miss, and the reason a code can scan but refuse to connect. Tick the hidden-network box if your router does not broadcast its name.

QR code error correction levels

The four qr code error correction levels trade size for resilience. Level L can restore about 7% of the codewords if part of the symbol is damaged or hidden, M about 15%, Q about 25% and H about 30%. The extra resilience costs space: the same URL may need a version 3 symbol at L and a version 6 at H. That redundancy is what lets designers place a small logo over the centre of a code at level H and still have it scan — but test it, because a logo covers the data unevenly.

Getting it to scan in the real world

Contrast matters more than colour: dark modules on a light background, never the reverse, since some older scanners reject inverted codes. Keep the white margin of four modules around the pattern; the download includes it. Size the code for the scanning distance — roughly a tenth of the distance is a comfortable rule, so a poster read from two metres wants a code about twenty centimetres wide.

Related tools

Building a link with query parameters to put in the code? The URL encoder escapes them properly and the URL parser shows what each part contains. For a strong password to share through a Wi-Fi code, use the password generator.

Frequently asked questions

Do the QR codes from this generator expire?

No. The content is written straight into the pattern, so the code works for as long as the printed image exists. Many online generators instead encode a short link to their own server and charge to keep it alive; when the subscription lapses, every printed code breaks. Nothing here passes through a redirect, which also means you cannot change the destination later — print a new code instead.

Which error correction level should I choose?

M is the right default for screens and clean print. Choose Q or H when the code will be printed small, on a textured surface, or somewhere it may get scuffed, or when you plan to place a logo over the middle. L gives the smallest pattern and suits codes shown on a screen at a good size. Higher levels make the code denser for the same content.

Is my Wi-Fi password sent anywhere?

No. The QR code is built by JavaScript in this tab, and the password only ever exists in the page and in the image you download. Bear in mind that anyone who can photograph the printed code can read the password from it, so put it where only your guests can see it.

Can a QR code hold text in other languages or emoji?

Yes. Text that is not plain digits or upper-case letters is encoded as UTF-8 bytes, which modern phone cameras and scanning apps decode correctly. Non-Latin text takes two to four bytes per character, so the code grows faster than it does with English.

Why is my QR code so dense?

Density follows the amount of data and the error correction level. A long URL with tracking parameters can push the code up several versions. Shorten the URL, drop parameters you do not need, or lower the correction level, and the pattern gets coarser and easier to scan from a distance.

Related tools

Updated