QR Code Scanner

Upload any image or use your camera to decode QR codes instantly — screenshots, WhatsApp images, downloaded files. All processing happens in your browser. No app, no signup, 100% private.

🔒 100% private — local processingCamera supportNo app neededScreenshot & photo upload

Drop image here

or click to browse — JPG, PNG, WebP, GIF

Waiting for QR code

Upload an image or use your camera to decode a QR code. Works with screenshots, photos, and downloaded images.

How to Scan a QR Code Online

1
Upload an image or start the camera

Drag and drop a QR code image (screenshot, photo, downloaded PNG/JPG), or click to browse your files. To use your device camera, click “Use Camera” and allow permission.

2
QR decoded instantly

The result appears immediately — URL, WiFi credentials, contact info, text, or any other QR content. For camera mode, it decodes the moment the QR code comes into frame.

3
Copy or open the result

Copy the decoded text, open a URL in a new tab, or save the WiFi/contact data. Nothing is transmitted to any server at any point.

Scan a QR code received on WhatsApp

Long-press the WhatsApp image → Save to Photos (mobile), or right-click → Save image (desktop). Then upload the saved image here to decode it instantly.

Scan QR codes on your computer screen

Take a screenshot of the QR code area (Cmd+Shift+4 on Mac, Win+Shift+S on Windows), then upload the screenshot file. Zoom in before screenshotting for the clearest result.

Frequently Asked Questions

Can I scan a QR code from a screenshot or downloaded image?
Yes. Upload any PNG, JPG, HEIC, WebP, or other image file containing a QR code and it decodes instantly. This is useful for scanning QR codes received in WhatsApp, emails, PDFs, or web pages.
Does this QR scanner work offline?
Once the page has loaded, all decoding happens locally in your browser using the jsQR library. No data — the image or video frame — is ever sent to any server. It works even without an internet connection after the page loads.
Can I use my device camera to scan live?
Yes. Click "Use Camera" and allow camera permission. Point your camera at the QR code. The scanner continuously reads frames from your camera feed and decodes the QR the moment it recognises one.
What types of QR code content can this scanner read?
Any QR code content: URLs, plain text, WiFi credentials, vCard contact data, WhatsApp links, email addresses, phone numbers, location coordinates, UPI payment strings, and any other data encoded in a QR code.
My QR code was not decoded — why?
Common causes: low-resolution image (the QR pattern must be visible), extreme angle or heavy motion blur, very damaged or torn QR code, or a QR code that uses an unusual inverted color scheme (light on dark). Try a clearer, straighter photo.
How do I scan a QR code from my computer screen?
Take a screenshot of the QR code (Cmd+Shift+4 on Mac, Win+Shift+S on Windows), then upload the screenshot file to this scanner. Alternatively, if your webcam faces the screen, you can use the camera mode.
Can I scan a QR code from a PDF?
Take a screenshot of the QR code in the PDF and upload the image. On Mac, use Preview to zoom into the QR code area before screenshotting for better resolution.
Is there a file size limit for uploaded images?
There is no enforced file size limit — the processing is entirely local. However, extremely large images (over 20MB) may be slower to process depending on your device. Standard screenshots and phone photos work instantly.
Which browsers support camera scanning?
Camera access requires a modern browser with WebRTC support: Chrome, Firefox, Edge, Safari (iOS 11+). The page must be served over HTTPS for camera permission to be granted. All modern browsers qualify.
Can this decode micro QR or DataMatrix codes?
This scanner is optimised for standard QR codes (ISO/IEC 18004). It does not decode Micro QR, DataMatrix, Aztec, PDF417, or other 2D barcode formats. For those, a dedicated barcode scanner app is needed.
Is the decoded content stored anywhere?
No. The decoded text is displayed in your browser and nothing is transmitted. When you close or refresh the page, the result is gone. No history, no analytics on your scanned content.