Free tool · No sign-up
QR Code Tester
Check a QR code before you print a thousand of them. Upload a photo or screenshot and see whether it scans, exactly what it opens, whether it relies on a QR company's short link that could expire, and print problems like low contrast or light-on-dark.
For the most useful result, photograph the printed code where it will be used, from the distance people will scan it.
Results appear here: what the code opens, and anything that might stop it scanning.
How to make it
- Step 1
Photograph the code
Ideally the printed proof, where it will be used, from scanning distance.
- Step 2
Upload it
The image is read in your browser; nothing is uploaded.
- Step 3
Read the checks
What it opens, whether it's a dynamic short link, contrast, inversion and density.
- Step 4
Fix and test on phones
Then scan the real print with two or three different phones.
Why codes fail to scan
- Too small for the distance: about 1 inch (2.5 cm) for something held in the hand, about a tenth of the scanning distance for signs.
- Low contrast: light grey on white, or a busy photo behind the code.
- No quiet zone: the code printed right up to an edge or another graphic.
- Light code on a dark background: some phones can't read inverted codes.
- Too much content: long text or a long URL makes a dense code that needs printing larger.
- Glossy or curved surfaces reflecting light into the camera.
Is this QR code safe?
QR phishing is rising. Before opening a code from a sticker, flyer or email, check where it goes. Warning signs: a raw number address instead of a domain, a domain that's almost but not quite the brand's name, plain http on a page that asks for payment or a login, and stickers placed over another code. This tester flags the first three.
Frequently asked questions
Is my image uploaded?
No. The image is read by your browser and never leaves your device.
Can it tell me if my code will expire?
It can tell you whether the code opens a short link on a QR company's domain, which is how dynamic codes work and the usual reason codes stop working after a trial. It can't see that company's account, so check their policy. See /qr-code-expired.
Does a pass here mean it will scan everywhere?
It means the code is readable in this image and avoids common problems. Print size, lighting and the surface still matter, so test the real print with a couple of phones.
What does 'version' mean?
QR codes come in sizes from version 1 (21 × 21 modules) to 40. Higher versions hold more data but are denser, so they need printing larger.