Guides

Why is my WiFi QR code not working?

Updated

Short answer

Check these in order. The network name must match exactly, capitals included. A network that does not broadcast its name must be marked hidden in the code. The security type must be right, and almost every modern router is WPA. Then rule out a 5 GHz-only band, a business login page, and a phone too old to read WiFi codes at all.

First, work out which half is broken

Two very different problems look the same from arm's length, and telling them apart cuts the work in half. Point a phone at the code and watch what happens. If no prompt appears at all, the phone is failing to read the image, and the fault is with the code as a picture: its size, contrast, focus or margin. If a prompt does appear, naming your network, but joining fails or hangs, then the image is fine and the details inside it are wrong.

A quick way to be certain: scan the code with any plain QR reader that shows raw text rather than acting on it. You should see a single line beginning WIFI: followed by your network name. If you can see that line, the code is readable and every remaining fix is about its contents.

What the symptom tells you
What happens when you scanWhere the fault isGo to
Nothing at all, no promptThe image cannot be readThe code will not scan
A prompt appears, joining failsThe details are wrongThe network name, Hidden networks
Joins, then no internetThe connection workedIt connects but there is no internet
Shows text starting WIFI:The image is fineThe network name onwards

The network name must match exactly

A network name, properly called an SSID, is case sensitive. "CafeWiFi", "cafewifi" and "Cafe WiFi" are three different networks as far as a phone is concerned, and a code carrying the wrong one will offer to join a network that does not exist. This is the single most common reason a code that looks right does not work.

Copy the name from a device already connected rather than from memory or from the label on the router, which is often out of date if anyone has ever renamed the network. Watch for a trailing space, which is invisible and fatal, and for characters that look alike: a capital I and a lowercase l, a zero and a capital O, or a hyphen and an en dash pasted in from a document.

Hidden networks need to be marked hidden

Some networks are configured not to broadcast their name. A phone cannot stumble across one, so it only looks for a hidden network when it is told the network is hidden. A code without that flag tells the phone to search for a network that, as far as the airwaves are concerned, is not there. The scan succeeds, the prompt appears, and the connection quietly times out.

If your network does not appear in the list of nearby networks on a device that has never joined it, it is hidden. Rebuild the code with "Hidden network" set to yes on the WiFi generator, and it will connect.

The security type has to be right

The code names the kind of security your network uses, and a mismatch stops the connection. Almost every router made in the last decade uses WPA2 or WPA3, both of which are covered by the WPA option. WEP is obsolete and only appears on very old equipment. An open network with no password needs the open option, and picking WPA for it will fail even though the password box is empty.

Choosing the security type
Your networkChooseNote
WPA2 or WPA3, the usual caseWPA/WPA2/WPA3Correct for virtually every modern router
WEP, on old equipmentWEP (older networks)Rare, and worth replacing on security grounds
No password at allNo password (open network)Leave the password box empty
A business login page after joiningNo password (open network)The code joins the network, the login still has to be done by hand
A username and a passwordNot supportedEnterprise networks cannot be carried in a WiFi QR code

Passwords, spaces and special characters

Passwords are case sensitive too, and the same lookalike characters cause the same trouble. A password copied from a chat message or a PDF can arrive with a space on the end, or with curly quotes in place of straight ones, and neither is visible once the field shows dots.

Punctuation itself is not a problem here. Semicolons, colons, commas, quotation marks and backslashes all have a special meaning inside the WiFi code format, and are escaped automatically when the code is built, so a password full of symbols works exactly as typed. If you have seen this fail elsewhere, that is why: some generators do not escape them, and the code silently truncates at the first semicolon.

Bands, guest networks and the router itself

  • A 5 GHz or 6 GHz network that an older phone cannot see will never appear, whatever the code says. Many routers publish 2.4 GHz and 5 GHz under one name, but where they are split, point the code at the band every guest can reach.
  • A guest network usually has its own name and its own password, separate from the main one. Codes get built from the main network details by mistake more often than anything else on this list.
  • Some routers isolate guest devices from each other, which is fine for internet access but breaks printers and casting. That is a router setting, not a fault in the code.
  • If the password has been changed since the code was printed, the code is simply out of date. A static QR code cannot be edited after printing, so it has to be regenerated and reprinted.
  • A network at its device limit will refuse new connections while looking, from the phone, exactly like a wrong password.

Phones that cannot read WiFi codes

Reading a WiFi code and joining automatically is a feature of the phone, not of the code. iPhones have handled it in the Camera app since iOS 11, and Android since version 10. Older Android phones often scan the code happily and then show the raw WIFI: text, with no offer to join, because the camera app does not recognise the format. A separate QR scanner app usually fixes that, and on any phone the network can still be joined by hand from the text on screen.

Work phones can also be the obstacle. Devices managed by an employer are frequently prevented from joining networks that are not on an approved list, and the refusal looks identical to a bad password. If you are unsure whether the phone is reading the code at all, the guide on how to scan a QR code covers what each platform does.

When the code will not scan at all

If no prompt ever appears, treat it as a printing or display problem rather than a network one. WiFi codes are unusually dense, because a network name and a long password make for a lot of data, and a dense code needs more room than people expect.

  • Print it larger. About 2 cm square is the minimum for close-up scanning, and a long password may need 3 cm or more.
  • Keep the blank margin around the code. Cropping tight to the pattern, or setting the code in a box that touches it, is a very common cause of failure.
  • Keep it dark on light, with strong contrast. Pale codes on coloured card are the usual casualty of a nicely designed table card.
  • Avoid glossy laminate and curved surfaces, both of which defeat the camera rather than the code.
  • Shorten what is in it. A shorter password produces a less dense code, and a guest network with a simple password is easier to scan than a long random one.

The size guide covers print dimensions in more detail, including how far away a code can be read from.

It connects but there is no internet

If the phone joins the network and then reports no internet, the QR code has done its job completely and the problem is beyond it. The usual causes are a captive portal waiting to be accepted in a browser, a guest network whose data allowance has run out, or an internet connection that is down for everyone. Check whether a device already on the network can browse before touching the code again.

Frequently asked questions

The image is fine and something inside it is wrong. In order of likelihood: the network name does not match exactly, including capitals; the network is hidden and the code does not say so; or the security type is wrong. An enterprise network that needs a username cannot be carried in a WiFi QR code at all.

Yes, but the code has to say the network is hidden, or the phone will not go looking for it. Set "Hidden network" to yes on the WiFi generator. Without it the prompt still appears and the connection times out.

Yes. Network names are case sensitive, so CafeWiFi and cafewifi are different networks. Copy the name from a device already connected rather than typing it from memory, and watch for a trailing space.

It can join the network, but not complete the login. Choose the open network option so the phone connects, then the captive portal still has to be accepted in a browser by hand. That is how most hotel and airport WiFi works.

Support depends on the phone. iOS has read WiFi codes in the Camera app since iOS 11 and Android since version 10. An older Android phone may show the raw WIFI: text instead of offering to join, and a work phone managed by an employer may be blocked from joining new networks entirely.

Not by itself. The details are encoded in the pattern and never expire. It stops working when the network name or password changes, and because a static code cannot be edited after printing, it has to be regenerated and reprinted.