ZonoTools
Home/Generator/QR Code Reader

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

  1. Save or screenshot the QR code as JPG, PNG, WebP, or GIF (max 15 MB).
  2. Upload the image with drag-and-drop or the file picker on this page.
  3. Confirm the full QR symbol is visible in the preview — include quiet zone (white margin) when possible.
  4. Click Decode and wait a moment while jsQR analyzes the pixels locally.
  5. Copy the result or use Open link when the payload is a URL.
  6. 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:
Email 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

  1. Your image is drawn to an in-memory canvas.
  2. Pixel data is passed to jsQR, which searches for finder patterns and recovers the data modules.
  3. 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

  1. Include quiet zone — leave white margin around the QR; do not crop flush to the modules.
  2. Fill the frame — the code should occupy a large part of the image without being tiny.
  3. Avoid skew — photograph or screenshot head-on when possible.
  4. Contrast — dark modules on a light background scan best; invert-heavy themes may need a second try after crop.
  5. 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