At a glance
- Accepts
- An image with one or more QR codes, including iPhone HEIC photos
- Outputs
- The decoded text of each code, with links, Wi-Fi logins, contacts and other common formats shown readably
- Where it runs
- Entirely in your browser, on your device
- What leaves your device
- Nothing - the file never leaves your device
- Limits
- QR, Micro QR and rMQR only (no 1D barcodes); badly blurred or heavily damaged codes cannot be read
- Account
- Not required - there is no sign-up
- Price
- Free, with no watermark and no usage cap
- Made by
- Visrut
- Last updated
- 12 October 2026
This reads the QR code in an image and shows what it says: a screenshot someone sent you, or a photo you took of a poster, a flyer, a menu or a screen. Links are shown in full before you open them, and Wi-Fi codes show the network name and password. Decoding runs in your browser tab with zxing-cpp, the open-source barcode library, compiled to WebAssembly. The image is not uploaded.
How to use it
- Paste a screenshot, drop an image, or click to choose one. On a phone, Take a photo opens the camera.
- Each code found is outlined on the image and its contents are listed on the right.
- If nothing is found, press Draw a box around a code and drag around it on the image.
Photos of posters and screens
A photo is harder than a screenshot. The code may fill only a corner of the frame, sit at an angle, or be washed out by glare. So the image is scanned several ways in turn, stopping as soon as a code is found: whole, then at full resolution, then with noise reduced and contrast boosted, then in overlapping tiles that are each enlarged. Codes photographed at an angle, rotated, mirrored, or printed light on dark are all handled.
- The code should be in focus. Blur is what defeats scanners most often.
- Get close enough that the code is at least a few centimetres across on your screen.
- Shoot glossy posters and screens slightly from the side, so the light isn't reflected straight back over the code.
Frequently asked questions
Is my image uploaded anywhere?
No. The code is decoded by zxing-cpp, an open-source barcode library compiled to WebAssembly, running in your browser tab. The image and whatever the code contains stay on your device. Opening a link from the code is the only time anything leaves it, and only when you press Open.
Can it read a photo of a poster taken with a phone?
Yes, that is what it is built for. It scans the photo several ways: whole, at full resolution, with the contrast boosted, and in enlarged tiles, so a small, tilted or unevenly lit code in a big photo is still found. If it still misses, draw a box around the code and it scans just that area, enlarged.
Why can't it find the code in my photo?
Usually the code is too blurry, too small in the frame, or partly hidden by glare or a reflection. Draw a box around it first. If that fails, retake the photo closer, hold the phone steady, and avoid the light reflecting off a glossy poster. A code that is visibly torn or covered beyond its error correction cannot be read by any scanner.
Is it safe to open the link?
Check it first - that is a good reason to read a code here instead of with your camera app. The full address is shown before anything opens. Codes on public posters and parking meters are sometimes covered with stickers pointing to scam sites, so be wary of a link that doesn't match who the poster is from, especially if it asks for a payment or a login.
What kinds of QR codes does it understand?
Any QR code, Micro QR or rMQR code decodes to its text. Links, Wi-Fi logins, email, phone and text-message codes, contact cards, calendar events, map locations and two-factor setup keys are also shown in a readable form, such as a Wi-Fi network's name and password. Anything else is shown as plain text.
Can it read more than one code in one image?
Yes. Every code it finds is listed and numbered, with a matching outline on the image. If it found one but missed another, draw a box around the missed one.
Which image formats work?
JPG, PNG, WebP, GIF, BMP and iPhone HEIC photos. You can paste a screenshot with Ctrl+V or Cmd+V, drop a file, or on a phone take a photo directly.