QR Code Scanner

Scan QR codes using your camera, upload an image, or paste from clipboard. Instant results with scan history.

Click "Start Camera" to begin scanning

Drag & drop an image here

or click to browse

Scan Result
No QR code detected yet

Scan History

How the QR Code Scanner Works

This scanner decodes QR codes entirely in your browser using the jsQR JavaScript library. No images or camera data are ever sent to a server. The tool supports three input methods -- live camera, image upload, and clipboard paste -- so you can scan QR codes from any source without installing an app.

In camera mode, the scanner captures video frames at the device's native frame rate and passes each frame to the jsQR decoder. When a valid QR code pattern is detected, the decoded content appears instantly in the result panel. The tool automatically identifies the data type (URL, email, phone number, text) and shows relevant action buttons such as "Open Link" for URLs or "Copy" for text.

How to Scan QR Codes

Choose one of three scanning methods depending on where your QR code is.

  1. Camera scanning: Click "Start Camera" and point your camera at the QR code. Detection is automatic and continuous -- no need to press a capture button. The result appears as soon as the code is recognized.
  2. Upload image: Switch to "Upload Image" tab and drag & drop or click to select a QR code image from your device. Supported formats include PNG, JPG, GIF, BMP, and WebP.
  3. Paste from clipboard: Copy a QR code image from any application (screenshot, email, chat) and click "Paste from Clipboard" to scan it instantly.
  4. View result: The decoded content appears in the result panel with smart action buttons based on content type.
  5. Take action: Open URLs directly in a new tab, copy decoded text to clipboard, or click a history entry to reload a previous scan.

Supported QR Code Types

This scanner decodes all standard QR code data types. Here is what happens when you scan each type.

  • URL (https://...): The scanner shows an "Open Link" button that opens the URL in a new browser tab. The full URL is displayed for verification before clicking.
  • Email (mailto:...): Decoded as an email address with optional subject and body. Copy the address or open your default email client.
  • Phone (tel:...): Shows the phone number for copying. On mobile devices, tapping the number initiates a call.
  • SMS (sms:...): Displays the phone number and pre-filled message text. On mobile, opens the messaging app.
  • WiFi (WIFI:T:WPA;S:...;P:...;;): Shows the network name and security type. On supported devices, tapping offers to connect to the network.
  • vCard (BEGIN:VCARD): Displays contact fields. On mobile, offers to add the contact to your address book.
  • Plain text: Any other encoded data is displayed as plain text with a copy button.

QR Code Scanner Features

  • Live camera scanning: Real-time QR code detection using your device camera at native frame rate.
  • Multi-camera support: Choose between front and back cameras on mobile devices using the camera selector dropdown.
  • Image upload: Drag & drop or browse to upload QR code images in PNG, JPG, GIF, BMP, or WebP format.
  • Clipboard support: Paste QR code images directly from clipboard -- useful for scanning screenshots or images from chat apps.
  • Smart actions: Automatically detects URLs, emails, phone numbers, WiFi credentials, and vCards, showing context-appropriate action buttons.
  • Scan history: Stores up to 50 recent scans with timestamps in your browser's local storage. Click any entry to reload its content.
  • Privacy-focused: All scanning happens entirely in your browser using client-side JavaScript. No camera feed, images, or decoded data are transmitted to any server.

Troubleshooting Scanner Issues

  • Camera not starting: Ensure the site is loaded over HTTPS. Check that you granted camera permission when prompted by the browser. On iOS Safari, camera access must be re-granted per session.
  • QR code not detected from camera: Hold the camera steady and ensure the entire QR code is visible within the frame. Good lighting and a flat surface improve detection. Avoid extreme angles.
  • Uploaded image not decoding: Ensure the image is clear and the QR code is not too small, blurry, or heavily compressed. Minimum recommended QR code size in the image is 100x100 pixels.
  • Clipboard paste not working: Some browsers restrict clipboard access. Try using Chrome or Edge, and ensure you copied an actual image (not a file reference). The page must be in focus when you click "Paste from Clipboard".

Frequently Asked Questions

The scanner uses the jsQR JavaScript library to decode QR codes directly in your browser. In camera mode, it continuously captures video frames and analyzes each frame for QR code patterns. In upload mode, it processes the image you provide. All decoding happens client-side, so no image data is sent to any server. The tool supports all standard QR code formats including URLs, text, email, SMS, WiFi, and vCard data.

Camera access requires HTTPS and browser permission. Make sure you are accessing the site over HTTPS and that you have granted camera permission when prompted. On mobile devices, check that no other app is using the camera. If you have multiple cameras, try switching between them using the camera selector dropdown. Some browsers may also block camera access in private or incognito mode.

This scanner reads all standard QR codes regardless of the data they contain. It can decode URLs, plain text, email addresses (mailto), phone numbers (tel), SMS messages, WiFi network credentials, vCard contact cards, calendar events, and any other data encoded in QR format. The scanner automatically detects the content type and shows appropriate action buttons, such as an "Open Link" button for URLs.

Yes, all scanning happens entirely in your browser. No camera feed, uploaded images, or decoded results are transmitted to any server. Scan history is stored only in your browser's local storage and can be cleared at any time. This makes the tool safe for scanning QR codes that contain sensitive information like WiFi passwords or personal contact details.

Yes, switch to the "Upload Image" tab to scan QR codes from any image file. You can drag and drop an image, click to browse for a file, or paste an image directly from your clipboard. The scanner supports all common image formats including PNG, JPG, GIF, and BMP. This is useful for scanning QR codes received via email, messaging apps, or screenshots.

Scan history appears automatically in the right panel below the scan result. The tool stores up to 50 of your most recent scans with timestamps. Click any history entry to reload its content. You can clear all scan history using the "Clear History" button. History is saved in your browser's local storage, so it persists between visits but is not shared across devices.