QRToolMage

Inspect

QR Code Decoder

Upload a PNG, JPEG, or WebP that contains a QR code. The recovered payload is shown as text. QRToolMage never navigates to a decoded URL.

The payload is encoded or decoded in your browser. QRToolMage does not upload it, store it, or send it to analytics.

PNG, JPEG, or WebP. Max 8 MB and 4096 px. The file stays in this browser.

Choose an image.

No file

How it works

The image is drawn to an offscreen canvas and decoded with an independent reader. Output is escaped text. HTML and scripts in the payload are never executed.

Input and output

Input is one image file. Output is payload text, a type label, and warnings. No navigation.

Examples

Printed URL

A photo of a poster QR should decode to an https URL shown as text.

Unsafe scheme

A javascript: payload is labeled unsafe and still not opened.

How to use this tool

  1. Choose a PNG, JPEG, or WebP with the file picker.
  2. Wait for the payload text and type label.
  3. Copy the text if you need it. Do not assume a URL is safe.
  4. Remove the file to reset.

Limitations

  • Blurry, skewed, or very small photos can fail.
  • Non-QR images return a clear miss, not a guess.
  • 1D barcodes are out of scope on this page.
  • Image size is capped. This is not an unlimited decoder.

Questions

Will this open the website in the QR code?

No. URLs are shown as text. You decide whether to copy them. javascript: and data: payloads are flagged as unsafe.

Is the image uploaded?

No. Decoding runs in your browser. The file is not sent to a server.

Can I use the camera?

Not on this page. Launch decoding is image upload only. A live camera scanner is a later, separate workflow.

Related tools

QR Code Decoder — Image Upload, Never Auto-Opens