QR Code Reader (Upload or Camera)

Drop a screenshot, paste an image from clipboard, or use your camera to read a QR code. Decoded content shows immediately. Useful for reading WiFi QR codes on someone's sign without typing the password, decoding event-ticket QR codes, or testing QR codes you're generating. No upload — the image is decoded entirely in your browser.

How to use the QR Code Reader (Upload or Camera)

Drop an image with a QR code or click Use camera. The decoder uses the browser's native BarcodeDetector where available (Chromium, Edge, Safari 17+); for browsers without native support, it falls back to a JS implementation. Decoded content shows below — text, URLs, WiFi credentials, contact cards.

About QR Code Reader (Upload or Camera)

QR codes ("Quick Response codes") were invented for Japanese automotive tracking in 1994 and became a universal text-encoding standard. They can hold up to ~2,950 bytes (alphanumeric) or ~7,089 digits (numeric). Common payloads: URLs (most common), WiFi credentials (WIFI:T:WPA;S:network;P:pass;;), vCard contact info, and authenticator app secrets (otpauth://...).

This reader runs entirely in your browser. The Image upload path uses Canvas to draw your photo / screenshot, then passes the pixels to the decoder. The camera path uses getUserMedia to access your device camera — only when you explicitly click the button. Either way, the QR contents never leave your browser.

Common use cases

  • WiFi password from a sign — scan the QR, paste the password into your settings.
  • Test your own QR codes — verify what your generated QR actually says.
  • Read QR codes in email screenshots — without forwarding them to your phone.
  • 2FA recovery — decode the otpauth:// URL from a backup screenshot.

Frequently asked questions

Does it work offline?

Yes — once the page is loaded, the decoder runs locally. No network calls during decode.

What QR variants does it support?

Standard QR (versions 1-40), micro QR (where supported by the browser BarcodeDetector). 2D barcodes other than QR (Data Matrix, PDF417, Aztec) work in Chromium's BarcodeDetector with the appropriate format flag.

Why does my camera not turn on?

getUserMedia requires HTTPS (this page is HTTPS) and an explicit user gesture (the button click counts). Some browsers also need camera permission granted in settings.