Wi-Fi QR code generator
Turn a network name and password into a QR code guests can scan to join, with no app and no typing. Built in your browser — the password is never sent anywhere.
Runs in your browser
A WPA password is 8–63 characters. A shorter one will never connect.
Higher correction survives more damage but needs a denser code for the same content. M is the usual choice; use H only when the code will be printed on something that gets handled.
What the code actually contains
A Wi-Fi QR code is not a special kind of QR code. It is an ordinary one carrying a short string in a format phones recognise:
WIFI:T:WPA;S:Kitchen;P:hunter22;;
T is the security type, S the network name, P the password. That is the
whole mechanism — there is no registration, no server, and nothing to expire.
The Encoded as box on this page shows you the exact string before you print
it.
There is no standards-body specification for this format. It is ZXing’s, and it became the de-facto one because the iPhone and Android camera apps both implement it.
Which phones can scan it
| Device | What to use |
|---|---|
| iPhone, iOS 11 and later | The Camera app. A “Join network” banner appears |
| Android 10 and later | The Camera app or Google Lens |
| Older Android | A QR scanner app; the built-in camera will not offer to join |
| Laptops | Generally not — most read the code but will not act on it |
The phone asks before joining. Scanning a code never connects a device silently.
Choosing the security type
Pick the one your router is actually using. A code that names the wrong type scans perfectly and then fails to connect, which is a slow thing to debug at a café counter.
- WPA / WPA2 / WPA3 — everything modern. One setting covers all three; the phone negotiates the rest with the router.
- WEP — pre-2004 equipment. If this is genuinely your network’s setting, it has not been considered secure for two decades.
- None — an open network with no password. The password field is left out of the code entirely, which is not the same as leaving it empty.
One caveat worth knowing: on a network configured for WPA3 only, some
Android builds want the type written as SAE rather than WPA. Almost all
home routers run WPA2/WPA3 in transition mode, where WPA is correct — but if
a WPA3-only network refuses to join from Android while iPhones are fine, that
is the reason.
Names and passwords that need care
The generator handles these for you; they are listed because they are the usual reasons a hand-written Wi-Fi code fails.
Punctuation. The characters \ ; , : " end a field in this format, so a
password containing one has to be escaped with a backslash. pa;ss is written
pa\;ss inside the code.
Names that look like hex. A network called Cafe is four characters to you
and two bytes to a parser — every letter is a hex digit. Values like that are
wrapped in quotes so they are read literally.
Spaces. Leading and trailing spaces are legal in both an SSID and a passphrase, so nothing typed here is trimmed. If your network name really does end in a space, the code will carry it.
Case. Both fields are case-sensitive. Kitchen and kitchen are different
networks.
Non-Latin names. A network called 咖啡廳 5G is encoded as UTF-8, which is
what phones expect. It costs three bytes per character rather than one, so the
grid comes out denser than an equivalent ASCII name — print it a little larger.
Length. A WPA passphrase is 8 to 63 characters. Anything shorter was never accepted by the router either, and this page will say so.
Hidden networks
If the network does not broadcast its name, tick Hidden network. That adds
H:true; to the string, which tells the phone to go looking for the SSID
rather than wait to see it in a scan. Ticking it for a normal network is not
harmful, but it makes joining slower — leave it off unless you know.
Printing one that works
The general rules are on the QR code generator: download the SVG for print, keep the white quiet zone, and size the code to about a tenth of the distance it will be scanned from — around 3 cm for a table tent.
Wi-Fi codes have one habit of their own: they get laminated and stuck to a fridge or a wall, where they are scanned at an angle under bad light. That is a good reason to use the Q error correction level rather than M, and to leave the code larger than looks necessary.
The password is readable
This is the part worth being deliberate about. The password is in the code as plain text — any QR reader shows it as a string, so a photograph of the code taken across the room is the password. A Wi-Fi QR code is a convenient way to share a password, not a private one.
Print it where you would be content to write the password on the wall in marker. If that gives you pause, put guests on the router’s guest network and make a code for that instead.
Your network details stay here
The code is generated in your browser. The network name and password are never sent to this site or anywhere else — which is the point, given that a Wi-Fi QR generator is asked for exactly the credential you would least like to hand to a stranger’s server.