Check 1: The size rule
Printed code width must be at least one-tenth of the scanning distance. A table tent scanned from 30 cm needs 3 cm; a wall sign scanned from 3 m needs 30 cm. Measure the printed code, not the card.
Check 2: Scan the paper, not the screen
Print on the actual stock. Paper absorbs ink and softens edges; laminate adds a reflective sheet. A code that scans at 100% opacity on a backlit screen can lose enough edge contrast on matte paper to fail.
Check 3: Use three phones, not one
At least one iPhone and one Android phone, plus a third device if you have one. Camera apps differ in how aggressively they crop and focus, and the phone you test with may be the best camera in the building.
Check 4: Respect the logo limit
The centre logo should stay under about 40% of the code width, with white padding around it. High error correction recovers a lot, but a logo that covers half the code fails first after a few months of sunlight fade.
Check 5: Contrast and colour
Dark modules, light background. A coloured code on a coloured background can look beautiful and scan badly. Test in the real lighting — a café at night is dimmer and warmer than an office.
Check 6: Get the password exactly right
Copy the password from the router's settings page instead of retyping it. Special characters — quotes, commas, semicolons, spaces — must be encoded correctly; the generator handles the escaping, but only if the input is right.
Also confirm the security type: WPA2 for almost every modern network, WEP only for very old hardware, and "open" only for networks with no password at all.
Check 7: Test the failure cases
Scan after moving away to the real distance. Scan at an angle. Scan with one hand while holding a coffee — this is what guests actually do. If it fails at any of these, reprint larger or move the placement closer.
A five-minute checklist
| Check | Pass condition |
|---|---|
| Printed width | At least 1/10 of scan distance |
| iPhone camera | Shows join prompt within 2 seconds |
| Android camera | Shows join prompt within 2 seconds |
| Logo size | Under 40% of code width, white padding intact |
| Contrast | Dark modules, light background, no glare |
| Password | Joins the guest network and gets an IP address |
| Distance | Works from where guests actually stand |
Frequently asked
Why does my code scan on screen but not on paper?
Printing reduces contrast and slightly blurs module edges; small printed codes lose more than they appear to. Print larger or improve contrast.
Does adding a logo break scanning?
Not if it stays under about 40% of the code width with white padding. Error correction recovers the rest.
What if the WiFi password contains symbols?
They are supported. Read the password from the router settings page rather than retyping it, then scan-test on paper before printing the full run.