WebsitesQR

Scan a QR Code

Point your camera at a code, or upload a photo or screenshot. Everything is decoded in your browser — the image never leaves your device.

You can also drag an image here, or paste a screenshot with Ctrl+V / Cmd+V.

Scan a QR Code From a Picture or Screenshot

Read a QR code from a picture, screenshot, PDF export or saved photo. Upload, drag, or paste the image and it decodes in your browser — no camera needed, nothing uploaded. Works when the code is on the same screen you are using.

Quick Answer

To scan a QR code from an image, click 'Upload image' above and choose the picture, drag the file onto the page, or paste a screenshot with Ctrl+V (Cmd+V on Mac). The code is decoded in your browser and the link or text appears immediately. No camera is needed, which is why this works for a code that is on the same screen you are reading.

How to scan a QR code from an image

  1. 1

    Step 1: Save the QR code as an image. Screenshot it, download it, or export the PDF page containing it as a picture.

  2. 2

    Step 2: Click 'Upload image' in the scanner above and select the file, or simply drag it onto the page.

  3. 3

    Step 3: Alternatively, copy the image to your clipboard and paste it with Ctrl+V on Windows or Cmd+V on Mac — no file needs to be saved at all.

  4. 4

    Step 4: The decoded text or link appears immediately, labelled with the kind of code it is.

  5. 5

    Step 5: If nothing is found, crop the image so the code fills most of the frame while keeping all four corners and the white margin visible, then try again.

  6. 6

    Step 6: Check the destination hostname before opening any link, particularly for a code you did not expect to receive.

Why a camera cannot help you here

A phone camera scans a code in the physical world. It cannot scan a code that lives on the same screen you are looking at — an emailed boarding pass, a ticket in a PDF, a WhatsApp message, a code on a web page you are already reading. Pointing a phone at its own display is not possible, and pointing a second phone at the first works badly because of screen glare and moiré patterns.

Decoding the image file directly sidesteps all of that. The pixels are read straight from the file at full fidelity, with no lens, no lighting, and no reflections in the way. It is both more convenient and more reliable than photographing a screen.

Formats and sources this handles

  • Screenshots from any device — the most common case by far.
  • Photos of printed codes taken earlier, including slightly angled or dim shots. We retry the decode at several scales automatically.
  • PNG, JPG, WebP, GIF and BMP files.
  • Images pasted straight from the clipboard, with no file saved to disk.
  • A page of a PDF exported or screenshotted as an image — invoices, tickets, and statements commonly carry payment codes this way.
  • Images dragged directly from a folder, a chat window, or a browser tab onto this page.

Nothing is uploaded

The image is decoded by your own browser. It is drawn to an off-screen canvas, the pixel data is read locally, and the QR pattern is resolved on your device. No file and no decoded result is ever transmitted to us or to anyone else.

That is not a policy promise, it is how the page is built — disconnect from the internet after this page loads and the scanner still works. It matters because images of QR codes routinely contain Wi-Fi passwords, two-factor authentication seeds, ticket barcodes, and payment requests, and any scanner that uploads your image is asking you to hand those over.

If the image will not decode

  1. 1Crop wider, not tighter. The decoder needs all three large corner squares plus the white quiet zone around the code. Cropping right up to the edge of the pattern removes information it depends on.
  2. 2Get the original file. A code forwarded through several chat apps is re-compressed each time, and heavy JPEG compression destroys the fine module detail a decoder needs.
  3. 3Increase the size. A code screenshotted at thumbnail scale may have fewer pixels than it has modules, at which point the data is genuinely gone. Ask for a larger export.
  4. 4Check the contrast. Inverted codes — white on dark — are handled automatically, but a low-contrast code printed pale grey on white may not have enough signal left.
  5. 5Confirm it is a QR code. Data Matrix, Aztec, PDF417 and ordinary barcodes look broadly similar and need different decoders.

Free, private, and permanent

WebsitesQR runs entirely in your browser. Codes you create are static and never expire; images you scan are never uploaded. Learn about QR code safety →

Frequently Asked Questions

How do I scan a QR code that is on the same screen I am using?

Screenshot it, then upload or paste the screenshot into the scanner above. You cannot point a camera at the display you are reading, which is why this is the standard solution for codes arriving by email, in a PDF, or in a chat message.

Can I scan a QR code from a photo in my gallery?

Yes. Click 'Upload image' and pick the photo, or drag it onto the page. Photos of printed codes work even when slightly angled or dim — the scanner retries the decode at several different scales before giving up.

Can I paste a screenshot instead of saving a file?

Yes. Copy the image to your clipboard and press Ctrl+V on Windows or Cmd+V on Mac anywhere on this page. Nothing has to be saved to disk.

Is my image uploaded anywhere?

No. Decoding happens entirely in your browser on your own device. The image and the decoded result never leave your machine and are never stored. You can confirm this by turning off your internet connection after the page loads — the scanner keeps working.

Why does my image say no QR code was found?

Usually the crop is too tight, the image is too small, or the file has been re-compressed too many times. Crop so the code fills most of the frame but keeps all four corners and the white margin visible, and use the original file rather than a copy forwarded through chat apps.

Can I scan a QR code inside a PDF?

Yes, indirectly. Screenshot the PDF page or export it as an image, then upload that. Invoices, tickets, and bank statements commonly embed payment codes this way, and decoding the image lets you read the destination before acting on a payment request.

Can ChatGPT read a QR code from an image?

Not reliably. AI assistants can describe a picture containing a QR code but cannot decode the module pattern accurately, and often produce a plausible-looking URL that is simply invented. Upload the image here to get the genuinely encoded text.