Shard Tools

QR Code Reader

Decode a QR code from a photo or screenshot and read its destination as text before following it.

Maintained by Roshan.

Use QR Code Reader

Reads a QR code out of a photo or screenshot so you can see where it leads before following it. The image is decoded in this tab and never uploaded.

Check a code before you scan it with your phoneA QR code on a parking meter or a leaflet is unreadable to a human, and stickers placed over real codes are a common scam. Reading the code here shows you the destination as text first, without your phone opening anything.

Explore generators

Find related browser-local tools for nearby tasks without starting another search.

Browse all generators

About QR Code Reader

A QR code is unreadable to a human, which is exactly why it works as an attack. Stickers placed over genuine codes on parking meters, restaurant tables and charging points have become common enough to have a name, and the whole trick depends on the victim being unable to see the destination before their phone opens it. Scanning with a phone commits you before you know where you are going. Reading the code here does the opposite: the destination appears as plain text, on a screen, with nothing opened and nothing followed. The image is decoded in this tab, so a screenshot of a private payment request or a Wi-Fi code is not handed to anyone. It is also simply useful when a code appears in a document or an email on a device that has no camera pointing at it.

Build the document

  1. The image is decoded in this tab and drawn to a canvas, then scanned pixel by pixel for the code's finder patterns - the three squares in the corners that tell a reader where the grid is.
  2. Both polarities are attempted. Light-on-dark codes appear on posters and in dark-mode screenshots, and a reader that tries only the conventional arrangement rejects perfectly valid codes.
  3. Photographs taken at an angle are handled, because the corner positions let the grid be corrected back to a square before the data is read.
  4. The decoded payload is classified - a web link, an email address, a phone number, a Wi-Fi network, a contact card, a calendar event or plain text - so you can see what kind of thing it is at a glance.
  5. A decoded link is shown as text and never as something clickable. Turning an unverified payload into a live link would defeat the purpose of checking it first.

Ways to use QR Code Reader

Checking a code in a public place

Photograph the code rather than scanning it, then read it here. A sticker over a genuine code usually points at a domain that looks almost but not quite right.

A code embedded in a document or email

Screenshot it and decode. This is also how to recover a Wi-Fi password from a code someone sent you, without needing a second device to point a camera.

Check before sending it

Questions about QR Code Reader

Why read a code here instead of scanning it?

Because a phone follows the code immediately, and you cannot see the destination before it does. Here the destination appears as text and nothing is opened.

Can it read a photograph taken at an angle?

Usually. The corner patterns allow the grid to be squared up first. A blurred or very small image is more likely to fail than a skewed one.

Why is the link not clickable?

Deliberately. You came here to inspect a destination you do not trust yet, and making it one click away would undo that.

Does it read barcodes too?

No, QR codes only. Retail barcodes and formats such as Data Matrix and PDF417 encode data differently.

Related tools

QR Code Generator

Make a QR code from a link or any text in your browser. No redirects, no expiry, no account, and nothing sent to a server.

URL Encoder and Decoder

Percent-encode and decode URLs in your browser, choosing between encoding a value inside a URL and encoding a whole address. Shows which characters differ.

JWT Decoder

Decode a JSON Web Token and inspect claims and expiry in your browser. Your token is never transmitted.