QR Code Reader

Point the live feed at a label or drop a screenshot here. You get the raw string first, then you choose whether to copy, open a link, or walk away. The decoder runs in your browser so the image never gets sent to us for processing.

Drop a QR image

PNG, JPG, WebP, or GIF. Cropped shots work if the modules stay sharp.

Decoded text, URLs, Wi-Fi strings, and contacts show up here. Nothing appears until a matrix is found.

Why preview beats blind scanning

A QR code is only a shortcut. The risk sits in where the shortcut goes.

Native camera apps often follow links immediately. Here you see the string first. If the payload is a URL, you read the host before you open anything. If the payload is Wi-Fi, you read the SSID and security type before you join. We recommend treating unknown codes in public spaces the same way you treat email attachments from strangers: pause, read, then act.

Retail teams use workflows like this when validating print proofs. A sticker on a menu should match the domain you expect. If it does not, you reprint before guests scan.

What happens inside your tab

You supply pixels. The page draws them to an offscreen canvas, reads RGBA samples, and hands the buffer to jsQR. When a valid finder pattern and timing pattern line up, the library returns the encoded string. Your phone never uploads the frame to our servers because the script never sends it. Clearing the tab clears the image data from memory for normal browser hygiene.

Heavy blur, extreme glare, or a code smaller than roughly fifteen modules across the short edge often fails. A screenshot from a video usually fails because compression smears the squares.

Editorial note: We like pairing this reader with our QR Code Generator when you need to round-trip a test: generate, print a draft, scan with this page, compare the string to your source.

Three ways people waste a perfectly good code

Payload cheat sheet

Prefix you might seeMeaning
http:// or https://Web address. Check the hostname before you open.
WIFI:Network join helper with SSID and password fields.
BEGIN:VCARDContact card. Safe to copy into your address book after you trust the source.
Plain textMight hold a promo code, serial number, or sentence. Treat the payload as data, not an order.

What this page refuses to do

There is no database of “safe” URLs and no reputation feed. We do not shorten links, rewrite hosts, or warn about phishing beyond showing you the literal string. If you need enterprise policy checks, route scans through tooling your security team operates.

Barcode symbologies other than QR (Data Matrix, Aztec, PDF417) are out of scope for jsQR. Use a dedicated barcode suite when labels mix formats.

Where teams still reach for a desktop reader

Event staff paste attendee badges into this style of tool when the handheld scanner battery dies. Support desks ask customers to email a photo of a shipping label, then decode the QR segment locally instead of opening mystery attachments on a mail client preview pane. Marketers sanity-check a campaign code after export from design tools.

For static assets you ship to social feeds, our image resizer helps you export square crops without shaving off the quiet zone.

Last reviewed: March 2025. Decoder library: jsQR 1.4.0 loaded from jsDelivr. If your organisation blocks third-party scripts, ask IT to allow the CDN or host the file yourself.

QR reader: quick answers

Practical questions about decoding, privacy, and misfires.

Does my QR image get uploaded to Toolexe?

No. The file or camera frame stays inside your browser tab. jsQR reads pixels from a canvas element on your device. We do not receive the picture or the decoded string unless you separately send them to us through another channel.

Why does the camera mode say permission blocked?

Browsers require HTTPS and an explicit user gesture for getUserMedia. If you denied access earlier, reset the site permission in browser settings. On desktop, another application may already own the webcam.

The tool says no QR found but I see a code on screen. What should I try?

Zoom the subject so the pattern fills more of the frame, add light to remove shadows, or export a higher resolution PNG from the source file. Screenshots of video players often fail because of compression artifacts between modules.

Will this reader decode a barcode from a product box?

Most retail boxes use UPC or EAN linear barcodes, not QR. This page targets QR matrices only. Use a multi-symbology scanner when the label is a line of vertical bars.

Should I trust the Open link button?

The button opens exactly the string stored in the code. Read the URL in the preview first. Short links and misspelled domains are common phishing tricks. When in doubt, do not open.

How do I create a matching test code?

Build a fresh code with the Toolexe QR Code Generator, download the PNG, then drop the file here to confirm the payload matches what you typed before you print posters.