Scan a QR code with your camera or upload an image to read its text or link. Decoded in your browser - nothing is uploaded.
Point your camera at a QR code. Allow camera access when asked.
This tool reads a QR code and hands back the text or link it contains - the reverse of a QR code generator. Scan live with your device camera or upload a saved QR image, and the decode happens locally in your browser with the jsQR library, drawing the image to a canvas and reading its pixels. Your camera frames and files are never sent to or stored on our servers.
Once decoded, the result is just text. If it is a URL the tool lets you open it; if it is WiFi or contact data you can read and copy the raw payload. Because everything is client-side, it also works on a flaky connection - the only thing it needs from the network is the page itself.
Read a QR from a screenshot someone sent you, recover the link behind a printed code, check what a code actually points to before scanning it on your phone, or pull the text out of a code you generated. It is the quick way to see inside any QR.
No. Decoding runs entirely in your browser with the jsQR library on a canvas. Nothing, neither a camera frame nor the image, is sent to or stored on our servers.
The camera needs a secure context, so it only works over HTTPS or on localhost and after you grant permission. If it is blocked, use Upload instead, which works everywhere.
Any image your browser can open, such as PNG, JPG or WebP, up to 5 MB. The picture is read into a canvas and decoded on the spot.
Make sure the code is in focus, well lit and not cut off, with a little quiet margin around it. Blurry, glare-covered or partly cropped codes are the usual reason a scan fails.