What a QR code actually holds
A QR code is text drawn as a grid of squares. That text can be a web address, a Wi-Fi network name and password, a contact card, a calendar event or a plain message. The three large squares in the corners tell a scanner where the code is and which way up it sits, and the rest of the squares carry the data plus spare error-correction data, so a code still reads when part of it is damaged.
Barcodes work the same way in one dimension: the widths of the bars and gaps spell out a number, and the last digit is a check digit that catches misreads.
Your images are read in your browser
NeoReader runs in your web browser using a fast decoding engine that is downloaded once and then runs locally. Camera video and the photos or screenshots you scan are read on your phone or computer, and we don't receive or store them. There is no account, and nothing is kept after you close the page.
The link safety check
Scammers use QR codes because you can't see the link until you scan it: fake parking-meter stickers, fake delivery notices, codes in emails that slip past spam filters. Before you open a scanned link, NeoReader checks it for common tricks and warns you when it finds one:
- addresses that imitate well-known brands with swapped or extra letters;
- hidden destinations, such as a real brand name placed in front of an “@” sign;
- link shorteners that hide where you will end up;
- bare IP addresses instead of a website name, and unencrypted http links;
- links that start an app download.
Check a code now with the QR code checker, or read more in our guide to QR code phishing.
Making codes, too
NeoReader also makes QR codes and barcodes. Codes are drawn in your browser and hold your content directly, not a link to our server, so they never expire and nobody tracks who scans them. Every design is test-scanned while you edit, so you know it works before you print it. Try the QR code generator or the barcode generator.
Try the examples
Scan these with your phone camera or with NeoReader to see the difference between the formats.