Skip to content

QR Code Scanner

Drop or upload an image containing a QR code — a screenshot, a photo, a saved image — and get the decoded text back instantly. Decoding happens entirely by analyzing the image's pixels in your browser, so it works just as well on a saved screenshot as it would on a live camera feed.

  • Decode from any uploaded image, not just a live camera
  • Works on screenshots, photos, and saved files alike
  • Shows the decoded content immediately, with a copy button
  • Runs fully client-side

Scanner

Decoded locally, the image never uploads

How to scan a QR code

  1. 01

    Drop or select an image

    A screenshot, a photo, or any saved file containing a QR code.

  2. 02

    Read the result

    The decoded content appears immediately.

  3. 03

    Copy it

    Paste the decoded text or URL wherever it is needed.

Why this reads an uploaded image instead of requiring a camera#

The most common real situation is already having an image with a QR code in it — a screenshot someone sent, a saved photo, a poster captured earlier — rather than standing in front of the actual code with a camera ready. This tool decodes directly from whatever image file you already have, which covers that case that a camera-only scanner cannot: there is no code physically in front of you anymore, just a picture of one.

How image-based decoding actually works#

A QR code encodes data as a specific pattern of black and white squares, along with fixed positioning markers in three of its four corners that let a decoder figure out the code's orientation and boundaries even if the photo is at an angle. This tool draws the uploaded image onto a canvas, reads its raw pixel data, and runs a decoding algorithm that locates those markers and extracts the encoded bits — the same fundamental process a phone's camera-based scanner uses, just applied to a static image instead of a live video frame.

What can make a QR code fail to decode#

A QR code with too little contrast, a blurry or heavily compressed photo, or one photographed at too sharp an angle can lose enough of its positioning markers or data cells that decoding fails — this is a property of the image quality, not something this tool can work around. If a scan fails, a clearer, more direct photo of the code (or a cleaner screenshot) is the actual fix.

Frequently asked questions

Do I need to use my camera to scan a QR code here?

No — this decodes from an uploaded image, which covers the common case of already having a screenshot or saved photo rather than the physical code in front of a camera.

How does decoding from a static image actually work?

The image is drawn to a canvas and its pixel data is analyzed to locate the QR code's positioning markers and extract the encoded data — the same fundamental process a live camera scanner uses, applied to a static image instead of video.

Why did my scan fail?

Usually low contrast, blur, heavy compression, or too sharp a photo angle — any of which can obscure the positioning markers or data cells a decoder needs. A clearer, more direct image of the code is the actual fix.

Is my image uploaded anywhere?

No. Decoding happens entirely in your browser by analyzing the image's pixels locally — nothing is sent to a server.

Developers

UUID Generator

Generate cryptographically random UUID v4 or time-ordered UUID v7, in bulk.

Developers

Base64 Encoder & Decoder

Encode and decode Base64 with correct UTF-8 handling, including the URL-safe alphabet.

Developers

ULID Generator

Generate ULIDs — sortable by creation time like UUID v7, but Crockford Base32 instead of hex.