MakeQR

Scan an Image for a QR Code

For a code you can't point a camera at

  • Free, and no account to create
  • Never expires, unlimited scans
  • Checked to scan before you print it

Point your camera at a QR code. Nothing is uploaded — it is read on your device.

The camera feed never leaves your device, and we do not store what you scan.

What the code says

Nothing scanned yet.

Upload a screenshot, photo, or PDF page to MakeQR's browser scanner and choose Scan an image. It reads the code directly from the file, on the device, and shows the destination before you open it. This covers a code buried in an email or a document, where no camera can point at it directly.

A phone's camera can only read a code that's physically in front of it, which is no help when the code sits inside a screenshot, an email attachment, or a page of a PDF instead. Decoding a saved file is a different job from pointing a lens at a live scene, and it needs a tool built for the file rather than the camera.

MakeQR's browser scanner does exactly that: upload the image, and it reads the QR code straight out of the file, on the device, with nothing sent anywhere. The result shows the destination before it opens, which matters for a code that arrived by email rather than one you chose to scan yourself.

Reading a QR code out of a saved image

  1. Save or screenshot the image first

    If the code is in an email, a chat message or a PDF, save the image or take a screenshot of just that area. A tighter crop around the code, with a little white border left in, decodes more reliably than a full-page screenshot.

  2. Open MakeQR's browser scanner

    Go to the scan page and choose Scan an image instead of turning on the camera. No account or install is needed for this either.

  3. Select the file from your device

    Pick the screenshot or photo from your files or camera roll. The image is decoded in the browser and never uploaded anywhere else.

  4. Check the destination before opening it

    The result shows exactly what the code contains, a web address, WiFi details, or plain text, with the domain on its own line for a link. Only then does opening it become a choice.

Why a live camera sometimes can't do this job

A phone's Camera app is built to scan a code that's physically in front of the lens, not one already displayed on the same screen or buried three pages into a PDF. Pointing a phone at its own screen to scan a code from an email attachment usually fails on focus or simply isn't practical. Reading the file directly skips that entire step.

Screenshots, PDFs and low-quality photos each behave differently

A clean screenshot decodes as reliably as a live scan, since the pixels are exact. A PDF page needs to be exported or screenshotted as an image first, since a scanner reads pixels, not embedded PDF text. A photo taken of a printed code from a distance, forwarded through a messaging app that compresses images, is the hardest case; if it fails, ask for a sharper version or crop tighter to just the code before trying again.

What happens to the file after it's scanned

MakeQR's scanner decodes the image locally in the browser and doesn't store or upload it. That matters for a code carrying a WiFi password or personal contact details forwarded in a message, since the content never leaves the device just to be read back.

What comes out of the image once it's read

Whatever the QR code held originally: a web address most often, but also a WiFi network and password, a contact card, plain text, an email template or a phone number. The scanner shows the raw content first rather than acting on it automatically.

Inside the code
WIFI:T:WPA;S:Harbor Office;P:tide-7719;;

How much of the image needs to be visible

The code should be reasonably sharp and take up a meaningful portion of the frame; a QR code shrunk to a few dozen pixels in a wide screenshot often won't decode. Cropping the image down to mostly just the code, with a small margin around it, is the single most reliable fix when a scan fails on the first try.

Print it at least 20 mm (2.0 cm) wide

Why an image scan fails when a live one would work

  • Screenshotting the whole screen instead of the code

    A code that's a small part of a large image is easy for a decoder to miss, especially at lower resolution. Crop closer before uploading.

  • Forwarding a photo through several apps first

    Each hop through a messaging app can recompress an image, softening the sharp edges a QR code needs. Ask for the original file if a forwarded copy won't scan.

  • Trying to scan a PDF file directly

    A scanner reads pixels, not a PDF's internal text layer. Take a screenshot of the page, or export it as an image, before uploading it.

If the goal is to make a code, not read one

A static code from MakeQR is free, needs no account, and produces an image that scans reliably by camera or by upload alike. Dynamic only matters when the destination behind the code might change later without a reprint.

How dynamic QR codes work

When people reach for an image scan instead of a camera

  • A QR code emailed as a ticket attachment instead of printed on paper.
  • A code inside a scanned document or a supplier's PDF catalog.
  • A WiFi code a friend photographed and sent through a messaging app.
  • A screenshot of a code shown briefly in a video call or livestream.

A QR code that still works next year

Most of what goes wrong with a QR code happens after it is printed. These six things are why ours does not.

  • Checked before you print

    We decode every code you make and read it back. If a logo covers too much or a colour is too faint for paper, you find out here — not after the print run.

  • Unlimited scans, every plan

    Including the free one. A scan cap kills a printed code at the moment it starts working, which is why we do not have one.

  • We do not switch off your codes

    Two dynamic codes stay yours permanently, whatever you pay us. Cancel a paid plan and you keep them — the rest pause after 30 days, with three warnings first, and a paused code shows a neutral page, never a sales page.

  • Made on your device

    Static codes never reach our servers. Your WiFi password, your contact details and your logo stay in the browser — which is also why there is no limit.

  • Ready for the printer

    SVG for anything that gets scaled, and PNG at 1024px so the edges stay hard. Both free, no account.

  • Available in English, Norwegian Bokmål, Danish, Swedish, German, French, Dutch, Italian, Spanish, Finnish, Portuguese, and Polish

    The generator and every page speak English, Norwegian Bokmål, Danish, Swedish, German, French, Dutch, Italian, Spanish, Finnish, Portuguese, and Polish. More languages follow as each one is reviewed by a native speaker.

See what happens after you print

A dynamic code points at a short link you own. Change where it goes without reprinting anything, and see how often each code has been scanned and when the last scan was.

  • Change the destination any time, as often as you like
  • A scan count and the last scan for every code
  • No scan limit, on any plan
  • Cancel and you keep two codes permanently — the rest pause after 30 days
Start free

2 codes free. Paid from $7/month. Compare plans

MakeQRCNCafe Nord

Analytics

Aug 14 – Sep 12

7D30D90D1Y

Total scans

11,875

18%

Unique scanners

8,431

14%

Active codes

24

3

Scans per day

396

18%

Scans over time

0
200
400
600
800
Aug 14Aug 21Aug 28Sep 4Sep 11

Devices

62%

of scans came from an iPhone

  • iPhone62%
  • Android34%
  • Other4%

Scan an Image for a QR Code: questions and answers

Short answers to what people ask before they print. Anything else, write to us.

Ask us something else

Can I scan a QR code from a screenshot?

Yes. Upload the screenshot to MakeQR's browser scanner and choose Scan an image. It reads the code from the file directly, without needing a live camera.

Does the image get uploaded to a server?

No. The scanner decodes the image inside the browser on your own device. Nothing is sent anywhere unless you separately choose to open a link the code contained.

Why does my screenshot fail to scan when the printed code works fine?

Low resolution, heavy compression from being forwarded through a messaging app, or a code that's a small part of a much larger image are the usual reasons. Crop tighter to the code and try a sharper copy.

Can this read a QR code from inside a PDF?

Not directly from the PDF file itself. Take a screenshot of the page or export it as an image first, then upload that image to be scanned.

Is it safe to scan an image sent by someone else?

Reading it is safe, since the scanner only decodes and displays the content. The decision to actually open a link or join a network happens afterward, once the destination is shown.

Make a code that still works next year

Free static codes with no account, two permanent dynamic codes, unlimited scans on every plan, and a check that tells you it scans before you print it.

Make a QR code

No account for static codes. Nothing to cancel.