QR Code Reader
Decode any QR code using your device's camera or by uploading an image file. The code is read entirely in your browser, and nothing is uploaded to a server. The decoded text or URL appears right away, and you can copy it or open it as a link.
Reviewed by Vincenzo Manto, Founder & Lead Developer · Last updated October 16, 2026
How it works
- 1
Click 'Scan with camera' and allow camera access, or upload an image containing a QR code.
- 2
Point your camera at the QR code and hold steady.
- 3
The decoded text or URL appears automatically once the code is recognized.
- 4
Copy the result or open it directly as a link.
Scan from your camera or from a file
Whether you have a physical code in front of you or a screenshot on your device, the tool decodes it the same way: client-side, with no upload step and no server round trip.
Privacy by design
Camera frames and uploaded images never leave your browser. The decoding library runs locally, which matters when the code might contain sensitive information like a private link or a login code.
Pairs with the QR Code Generator
Building and testing codes often go together. After generating a code with our QR Code Generator, come back here to verify it decodes correctly before printing or publishing it.
Frequently asked questions
Does this tool upload my camera feed or images anywhere?
No. The camera feed and any uploaded image are processed entirely in your browser using the jsQR library loaded on demand. Nothing is sent to a server.
Why isn't my camera working?
Make sure you've granted camera permission to this site and that no other app is using the camera. This feature also requires a secure (HTTPS) connection.
What image formats can I upload?
Any common image format your browser can display, including PNG, JPEG, and WebP.
Why can't it read my QR code?
Make sure the whole code is visible, well-lit, and not too blurry or small in the frame. Damaged or low-contrast codes can also fail to decode.
Can I generate QR codes too?
Yes, use our QR Code Generator to create a custom QR code from any text or URL, with optional colors and a logo.