QR Code Reader
Read a QR code from a photo or screenshot.
How to use QR Code Reader
Upload a photo or screenshot that contains a QR code (or take one with your camera).
The code is detected and decoded automatically.
Copy the content, or open it directly if it's a link.
Read a QR code you cannot point your phone at
The camera app on any modern phone scans QR codes — until the code is on the phone itself. A QR in a screenshot, in a PDF someone emailed, in a WhatsApp image or on the very screen you are looking at cannot be scanned by the device displaying it. That is when people search for a "qr code reader from image": you need something that reads the code from a picture file rather than through a lens.
That is what this page does. Add the photo or screenshot, and the code is found and decoded in place. If it is a link, you get a button to open it; if it is text, WiFi credentials, a phone number, an SMS, an email or a contact card, the content is shown with its type labelled so you know what you are looking at before you act on it.
From a file or from the camera
Two ways in. The usual one is to drop an image: a screenshot, a downloaded poster, a photo taken with another device. The other is the live camera button, which samples frames from your webcam or phone camera until a QR is found — handy on a laptop with no scanner app, or when a phone's camera app insists on opening the link instead of showing you what it is.
Decoding runs on the image you provide, so the quality of that image decides success. Screenshots decode almost every time because they are pixel-perfect. Photos are harder: glare on glossy paper, a steep angle, motion blur or a code that fills a tiny corner of a large picture all make detection fail. Crop the image so the code is large and square-on, make sure its quiet zone — the white margin around it — is intact, and try again.
- Screenshot of a code on your own screen → decodes reliably
- Photo of a poster or menu → works when sharp and straight on
- Code cropped from a PDF or slide → works; keep the white margin
- Very small or partially covered codes → may need a closer, cleaner shot
See what a QR does before you trust it
A QR code is just data with no built-in safety. Stickers pasted over parking-meter and restaurant codes are a real scam pattern, and a camera app that opens the link automatically gives you no chance to inspect it. Decoding to text first changes that: you see the full URL, including the domain, and can decide whether to open it.
The same applies to WiFi codes, which can quietly connect your device to a network you do not know, and to contact cards, which can add someone to your address book. The reader shows the raw content — SSID and password for WiFi, name and numbers for a vCard — and never acts on it without a click from you.
Decoded on your device, not on a server
Every step runs inside your browser, using the WebAssembly and Canvas APIs your device already ships with. No file is uploaded, no copy is kept, and nothing sits in a queue on a server waiting to be deleted — which is also why the tool keeps working with the network disconnected.
For a QR reader that is the difference between a tool and a data collector. The images people scan contain event tickets, boarding passes, payment codes and two-factor secrets, and the decoded content is often a private link. Here the image is analysed by a small JavaScript decoder inside the tab, the result is shown to you, and nothing — neither the picture nor its content — is transmitted or stored.
The camera mode follows the same rule: frames are read from the camera stream directly into memory, checked for a code and discarded. The browser asks your permission before the camera turns on and you can stop it at any moment.
Frequently Asked Questions
The QR isn't detected — what can I do?
Use a sharper, better-lit image, and make sure the whole code is visible with some margin around it. Screenshots decode almost always; glossy or angled photos are harder.
Is the image uploaded to a server?
No. Decoding runs entirely in your browser, so the image never leaves your device.
What kinds of QR content are recognized?
Links, plain text, WiFi credentials, phone numbers, SMS, email addresses and vCard contact cards — the type is labeled automatically.
How do I scan a QR code from a screenshot?
Take the screenshot, open this page and add the image. The code is detected and decoded automatically; if it contains a link, an Open button appears. It is free and works on phones and desktops alike.
The QR isn't detected — what can I do?
Use a sharper, better-lit image, and make sure the whole code is visible with some white margin around it. Screenshots decode almost always; glossy or angled photos are harder — crop so the code is large and straight on.
Is the image uploaded to a server?
No. Decoding runs entirely in your browser, so neither the image nor the decoded content leaves your device.
What kinds of QR content are recognised?
Links, plain text, WiFi credentials, phone numbers, SMS, email addresses and vCard contact cards — the type is labelled automatically so you know what the code will do before you act on it.
Can I use my webcam instead of an image?
Yes. Click the camera button, allow access when the browser asks, and hold the code in front of the camera. Frames are scanned locally until a code is found; nothing is recorded.
Can it read barcodes too?
No — this reader is for QR codes only. Linear barcodes (EAN, UPC, Code 128) use a different format; the barcode tools on this site generate them, but reading them needs a dedicated scanner.
Related tools
Looking for something else? Browse all generators.