Skip to content
MaxyTools

QR codes: create one that scans, share Wi-Fi, read safely

Updated · 4 min read

· Updated on

A restaurant menu, a business card, a guest's Wi-Fi access, a link to a form: the QR code has become the simplest way to go from paper to screen. Yet a code that is too dense, poorly contrasted or printed too small refuses to scan, and a code scanned carelessly can lead to a fake site. Here is how to create a reliable code and how to read one safely.

How much can a QR code hold?

A QR code is a grid of small squares called modules. The grid size depends on the “version”, from 1 to 40: version 1 has 21 × 21 modules, and each version adds 4 modules per side (17 + 4 × version), up to 177 × 177 for version 40. The more content, the denser the grid, so the larger or better printed the code must be to scan.

Maximum capacity of a QR code (version 40, correction L)
Content typeMaximum capacity
Digits only7,089 digits
Uppercase letters, digits and a few symbols4,296 characters
Bytes (ordinary text)2,953 bytes

Arabic or accented text takes several bytes per character: it therefore uses up capacity faster. In practice, the shorter the content, the simpler and more reliable the code: a 30-character link gives a code far easier to scan than a whole paragraph. If your link is long, shorten it on your own site rather than weighing the code down.

Creating a code step by step with QR Code Generator

  1. Type the link, text or number: the code updates as you type. If you type a bare domain name (example.com), “https://” is added so phones open the site; you can decline.
  2. Choose the error-correction level: it sets how much of the code can be damaged while still being readable.
  3. Check the “scannable” banner: it comes from a real read-back of the produced code, and warns about inverted or low-contrast colours, which many readers cannot read.
  4. Download as high-resolution PNG (for a document) or vector SVG (for printing, the code stays sharp at any size).
  5. Test with two different phones before printing in quantity.

Error correction: L, M, Q, H

Error-correction levels
LevelRecoverable share of the codeWhen to choose it
L≈ 7%Screen, long content, good environment.
M≈ 15%Common default choice.
Q≈ 25%Support that may get damaged or printed small.
H≈ 30%Harsh environment or logo in the centre; denser code.

A higher level makes the code more tolerant of dirt but heavier: for the same content, the grid grows. Do not pick H “for safety” if your content is long.

Printing: size, contrast, margin

  • Size. A practical rule: reading distance divided by ten gives the minimum side of the code. Read at 50 cm, a 5 cm code suits; on a poster read from 3 m, you need about 30 cm.
  • Contrast. Dark on light. A light code on a dark background (inverted) or two close colours do not scan everywhere.
  • Margin. Keep a white space of at least 4 modules all around the code: do not stick it against an edge or text.
  • Surface. Avoid shiny, curved or crumpled surfaces.
  • SVG for print, PNG for screens.

Scanning without being tricked with QR Code Scanner

A QR code is a doorway: you cannot see where it leads before reading it. Scammers stick fake codes on parking meters, menus and posters. The tool never opens a link automatically: it shows the domain, flags suspicious links (unencrypted http, shorteners, disguised domain names) and asks for confirmation. The content is interpreted: web link, Wi-Fi network (password hidden by default), contact card to download as .vcf, SMS, email, phone, GPS position or plain text. The rear camera is used on phones and is released as soon as a code is read; if the camera is denied, importing an image remains possible. Analysis happens in your browser.

Common mistakes

  • Putting in a very long link that makes the code unreadable at small size.
  • Printing without testing the code with several phones.
  • Inverting colours or choosing two colours that are too close.
  • Sticking a code on a crumpled or shiny surface.
  • Scanning a code over which someone has stuck another label, then typing a password on the page that opens.

Honest limits

  • Codes created here are static: the content is written directly into them, with no tracking link and no expiry date, but you also cannot change the destination after printing.
  • A very dense code may fail on old phones or in poor light.
  • The “scannable” banner is a software read-back, not a test on every device.

Frequently asked questions

Can a QR code expire?

Codes you create here pass through no redirect service: they hold the data directly and therefore never expire.

What minimum size for printing?

Count the reading distance divided by ten: 5 cm for reading at 50 cm. The longer the content, the larger the size needed.

Is my Wi-Fi code safe?

It contains the password in plain text: anyone who scans it sees it. Share it only where you would give out the password.

Why won't my code scan?

Frequent causes: content too long, insufficient contrast or inverted colours, no white margin, shiny or too small a surface.

Is my QR code's text sent anywhere?

No. The text stays in your browser; nothing is sent to a server.

Tools mentioned in this guide

More guides

These guides are written by the MaxyTools team from how our tools really work. The figures are either calculations you can redo or orders of magnitude labelled as such. Spotted a mistake? Write to us from the Contact page.