QR Code Reader
Upload QR image
Screenshot, photo, or saved QR image (max 15 MB). Decoding runs in your browser — no upload.
How to use
- Save or screenshot the QR code as JPG, PNG, WebP, or GIF (max 15 MB).
- Upload the image with drag-and-drop or the file picker on this page.
- Confirm the full QR symbol is visible in the preview — include quiet zone (white margin) when possible.
- Click Decode and wait a moment while jsQR analyzes the pixels locally.
- Copy the result or use Open link when the payload is a URL.
- If nothing is found, crop tighter, increase contrast, or re-export a sharper screenshot and try again.
FAQ
What is QR Code Reader used for?
QR Code Reader extracts the hidden payload from a QR image file — links, plain text, Wi‑Fi login strings, contact cards, and more — when you already have a photo or screenshot instead of scanning with a phone camera.
Is my image uploaded to a server?
No. The image stays in your browser. Decoding uses the jsQR library on canvas pixel data; nothing is sent to our servers for recognition.
Does this tool use my webcam?
No. This page is image-upload only, matching workflows where the QR is already in a file (email attachment, chat screenshot, desktop export).
What file types are supported?
JPG, PNG, WebP, and GIF up to 15 MB — typical phone and desktop exports.
Why was no QR code detected?
Common causes: cropped quiet zone, blur, low contrast, partial code, or multiple codes where only one region is visible. Center the code and use a higher-resolution source.
Can it decode Wi‑Fi and contact QR codes?
Yes. The raw payload appears as text (e.g. `WIFI:T:WPA;S:...` or `BEGIN:VCARD`). Copy it into your system or Wi‑Fi settings as you would after a phone scan.
How is this different from QR Code Generator?
QR Code Generator creates new QR images from text you type. QR Code Reader does the reverse — it reads an existing QR image and shows what is encoded.
Introduction
QR Code Reader decodes QR symbols from image files you already have: a screenshot of a presentation slide, a photo of a poster, a PNG from email, or a chat attachment. You get the underlying URL or text without pointing a phone camera at your screen.
Processing is local-first — the same privacy model as our OCR tools. Your file is not uploaded for server-side decoding.
What gets decoded?
QR codes can store many payload types. This tool outputs the raw string embedded in the symbol:
| Payload type | Example prefix / shape |
|---|---|
| Website URL | https://… |
| Plain text | Any UTF-8 string |
| Wi‑Fi | WIFI:T:…;S:…;P:…;; |
| Contact (vCard) | BEGIN:VCARD |
| SMS | SMSTO: |
mailto: |
Use Open link when the result looks like a web address. For Wi‑Fi or contacts, paste into the appropriate app or settings UI on your device.
How decoding works
- Your image is drawn to an in-memory canvas.
- Pixel data is passed to jsQR, which searches for finder patterns and recovers the data modules.
- The recovered string appears in Decoded result for copy or inspection.
The decoder also tries inverted (light-on-dark) variants to improve success on dark UI screenshots.
Key features
- No install — works in a modern desktop or mobile browser.
- Image upload only — built for files, not live camera streams.
- Open link shortcut for HTTP(S) payloads.
- Copy — one click to clipboard for tickets, support chats, or notes.
Best practices for reliable scans
- Include quiet zone — leave white margin around the QR; do not crop flush to the modules.
- Fill the frame — the code should occupy a large part of the image without being tiny.
- Avoid skew — photograph or screenshot head-on when possible.
- Contrast — dark modules on a light background scan best; invert-heavy themes may need a second try after crop.
- One code per image — if several codes appear, crop to a single symbol.
Limitations
- Only the first QR found in the image is returned.
- Damaged, artistic, or extremely dense codes may fail.
- No automatic vCard or Wi‑Fi profile import — you receive text to paste manually.
- Animated GIFs use the first frame drawn to canvas.
Privacy
QR images may contain login tokens, payment links, or personal contact data. Decoding locally reduces exposure compared to cloud OCR/scan APIs. Close the tab on shared machines when finished.
Related tools
- QR Code Generator — create new QR codes from text or URLs.
- Image to Text — OCR for regular text in photos (not QR matrices).
- OCR Tools — hub for document and receipt text extraction.