QR code scanner and reader
Scan a QR code from any image — drop or paste it to read the payload, fully client-side.
Runs 100% in your browserDrop a QR image here, paste from clipboard, or
How to read a QR code
- Drop, pick or paste an image. Use any image containing a QR code — PNG, JPEG, WebP, or paste from clipboard.
- Read the payload. The decoded text (URL, vCard, Wi-Fi, etc.) appears below.
- Copy or open. Use Copy to copy the payload; if it looks like a URL, an Open link is shown.
How reading a QR code works
Decoding is the reverse of generating. The reader takes the pixels of your image, locates the three large finder patterns in the corners to work out where the code sits and how it is rotated, then samples the grid of modules back into a stream of bits. Those bits are protected by Reed–Solomon error correction, so even if part of the code is smudged, covered by a logo or slightly torn, the decoder can reconstruct the missing data and still return the exact payload. What comes out is a short opaque string — a URL, a vCard contact, Wi-Fi credentials, geo coordinates or just plain text. This tool uses jsQR, a pure-JavaScript port of the reference decoder, and runs it entirely on the pixels already in your browser; nothing about the image or its contents is sent anywhere.
What decodes cleanly — and what doesn't
Both photographs and screenshots read reliably when the code is fully in frame, the contrast is reasonable, and the rotation is under roughly 30 degrees. The reader downscales large images before decoding and tries both normal and inverted colours, so a light-on-dark code still works. Codes fail to read for predictable reasons: the image is cropped so a finder pattern is cut off, motion blur or a steep angle has warped the grid, the contrast is too low, or it is a Micro QR symbol — a smaller variant this engine does not yet support. Standard QR symbols across versions 1–40 and every error-correction level are covered. If a scan fails, re-crop to include the whole code with a little margin, or retake the photo square-on under even light.
Privacy and related tools
Because decoding happens locally and the strict content-security policy blocks outbound network calls, even sensitive payloads — a Wi-Fi key, a signed or single-use URL, a contact card — never leave your device. That is the practical difference between a client-side reader and a phone app or website that uploads the image to "scan" it. Need to go the other way and make a code? The QR code generator builds URL, Wi-Fi, contact and email codes. To pull text out of a regular photo or scan rather than a QR code, the image-to-text (OCR) tool reads printed and handwritten characters, and barcode generator covers retail and shipping symbologies.
Frequently asked questions
- Yes — upload, drag or paste an image of a QR code and it is scanned and decoded directly in your browser. There is no app to install and nothing is uploaded, so even sensitive payloads (Wi-Fi keys, signed URLs) stay on your device.
- It loads an image you drop or paste, decodes the QR code directly in your browser with jsQR, and shows the payload. The image and decoded text never leave the page.
- Standard QR Code symbols (versions 1–40) with the usual error-correction levels. Micro QR is not yet supported. Damaged or low-contrast codes may need cleaning up first.
- Mobile-friendly camera scanning is planned. For now, take a screenshot or photo, then drop or paste the image.
- No. Decoding happens in your browser. The strict CSP blocks outbound network calls.