QR Code Reader

📷

Drop a QR code image here

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

Tips

  • Use high-resolution, well-lit images for best results
  • Ensure the QR code is fully visible and not cropped
  • Avoid blurry or heavily compressed images
  • Works with screenshots, photos, and downloaded QR images

Decode a QR code from an image: drop in a screenshot, photo or downloaded PNG, JPG, GIF or WebP, and the QR Code Reader shows the exact text inside it — a link, a Wi-Fi login, a contact card, a payment string. Copy it with one click, or open it if it's a web link. No camera and no app needed, which is the point: it's for the QR codes that arrive in emails, PDFs and chats, and for checking what a code says before you trust it.

Built by Bob Article by Lace QA by Ben Shipped

How to use

  1. 1

    Save the QR code as an image, or take a screenshot of it.

  2. 2

    Drop the image on the upload box, or click the box to pick the file.

  3. 3

    Read the decoded text in the green box. Click Copy to put it on your clipboard.

  4. 4

    If the text is a web link, an Open URL link appears under it. Drop another image to decode the next code.

Frequently asked questions

Ratings & Reviews

Rate this tool

Sign in to leave a written review.
Loading reviews…

What does the QR Code Reader do?

The QR Code Reader decodes a QR code from an image file. Drop in a screenshot, a photo or a downloaded PNG, and it shows the exact text stored in the code: a link, a Wi-Fi login, a contact card, a payment string, whatever was put there. One click on Copy puts that text on your clipboard. If the text is a web address starting with http:// or https://, an Open URL link appears under it.

No camera, no app, no account. That matters more often than you'd think. Plenty of QR codes never exist on paper. They arrive in emails, PDFs, slide decks, group chats and screenshots, and your phone camera can't point at the screen it's on. This is the QR code decoder for those codes.

It shows you the raw text, unchanged. It doesn't follow the link, doesn't join the Wi-Fi network and doesn't add the contact. You read first, then decide. That's also the safest way to deal with a QR code from someone you don't know.

How to decode a QR code from an image

  1. Get the code into an image file. Save the attachment, or take a screenshot of the code on your screen. On a phone, a screenshot of the code works fine.
  2. Drop the image on the upload box, or click the box and pick the file. PNG, JPG, GIF and WebP all work.
  3. Read the result. The decoded text appears in a green box. Long strings wrap, so nothing is hidden off the edge.
  4. Copy it or open it. Copy grabs the full text. Open URL appears only for web links and opens them in a new tab.

Want to decode another code? Drop the next image. The old result clears first.

Got a QR code inside a PDF? The reader takes images, not PDFs. Turn the page into an image with PDF to PNG, then drop the PNG here. A plain screenshot of the page works too.

Where your image goes

Straight answer, because most QR decoder pages fudge this one. The tool decodes in one of two ways, and your browser decides which.

  • Browsers with a built-in barcode detector (Chrome on macOS, Android and ChromeOS, among others) decode the image right on your device. Nothing is uploaded.
  • Browsers without one (Firefox, and Chrome on Windows or Linux, for example) send the image to a public QR-reading service, api.qrserver.com, which reads it and returns the text. That service says it logs the request's IP address and referrer but not the contents of the code.

So if the code holds something private, like a Wi-Fi password or a two-factor setup key, decode it in a browser that reads it locally. Or just keep it on your phone. The second route also has limits the first doesn't: the image must be PNG, GIF or JPG and smaller than 1 MB, and WebP files fail there. If a WebP won't decode, save it as PNG and try again.

What the decoded text means

A QR code is just a container for text. Apps agree on a few formats so your phone knows what to do with it. The reader shows the raw text, so it helps to know what you're looking at. Here are the formats you'll meet most:

TypeWhat the decoded text looks likeWhat it does on a phone
Web linkhttps://example.com/menuOpens the page
Wi-Fi loginWIFI:T:WPA;S:CafeGuest;P:espresso42;;Joins the network
Contact cardBEGIN:VCARD … END:VCARD, or MECARD:N:Lee,Sam;TEL:…;;Adds a contact
Phone calltel:+15551234567Starts a call
Text messageSMSTO:+15551234567:HelloOpens a pre-filled SMS
Emailmailto:[email protected]?subject=OrderOpens a pre-filled email
Map locationgeo:40.7484,-73.9857Opens the map
Calendar eventBEGIN:VEVENT … END:VEVENTAdds an event
Two-factor setupotpauth://totp/Site:[email protected]?secret=…Adds an account to an authenticator app
Plain textAnything elseShows the text

Worked example: a café's guest Wi-Fi code decodes to WIFI:T:WPA;S:CafeGuest;P:espresso42;;. Read it field by field. T:WPA is the security type. S:CafeGuest is the network name. P:espresso42 is the password. That's how you get the password out of a Wi-Fi QR code, for a laptop that can't scan, or to type into a TV. If you need to build one of these codes instead, the Wi-Fi QR Code Generator writes that string for you.

Treat an otpauth:// code like a password. The secret= value is the key that makes your two-factor codes. Anyone who has it can generate them. Don't paste it into chats or documents.

Can you decrypt a QR code?

People search for "QR code decrypt" and "QR password decoder" a lot. Here's the short version: a QR code is encoded, not encrypted. Encoding just turns text into black and white squares, and any reader turns it back. There's no password on the code itself. So if you can see the code, the reader can show you what's in it.

What you sometimes get back is text that looks like nonsense. That usually means the app that made the code scrambled or signed the content before encoding it. Some tickets, payment codes and app logins work this way. A QR reader can't undo that, and neither can any other. Only the app with the key can. One exception worth checking: if the text is a long run of letters, digits, + and /, maybe ending in =, it may be Base64. Paste it into the Base64 Encoder / Decoder to see if it turns into something readable. A link packed with %20-style codes reads better after a pass through the URL Encoder / Decoder.

What a QR code analyzer would tell you (and what this one shows)

This tool reads the content. It doesn't report a code's technical settings, like its version, error correction level or mask pattern. Those settings explain a lot about why one code scans and another doesn't, so here's what they mean:

  • Version is the grid size. Version 1 is 21×21 squares. Each version adds 4 squares per side, up to version 40 at 177×177.
  • Error correction lets a code survive damage. Level L recovers about 7% of the code, M about 15%, Q about 25% and H about 30%. Codes with a logo in the middle lean on level H.
  • Capacity tops out at version 40, level L: 7,089 digits, 4,296 letters and digits, or 2,953 bytes of anything else.

Micro QR codes are a different, smaller format. They have one corner square instead of three and hold at most 35 digits. This reader looks for standard QR codes, so a Micro QR code may not be found. If it fails, that's the likely reason, not your image.

Why a QR code won't decode

If you see "No QR code detected," here's what to try first.

The image is too small or blurry

The reader needs to see each square clearly. A tiny thumbnail or a heavily compressed photo loses them. Use the original file, or zoom in before you take the screenshot.

The edges are cropped

A QR code needs a blank border around it, about four squares wide. Crops that cut right up to the code often fail. Leave some white space around it. The Image Cropper is handy when the code sits in a corner of a big photo.

Glare, angle or low contrast

Photos of screens, glossy paper or glass pick up glare. Shoot straight on in even light. Pale codes on a pale background, or gradient-filled codes, can also fail.

More than one code in the image

The tool returns the first code it finds. If a poster has three, crop to the one you want.

The file is too big or the wrong type

Only images are accepted. And in browsers that decode through the online service, files over 1 MB or in WebP format fail. Shrink a large photo with the Image Resizer and save it as PNG or JPG.

Check a QR code before you open it

Fake QR codes are a real scam. Criminals stick them over real ones on parking meters and posters, or send them by email, where link filters don't look inside images. Reading the code first takes the surprise out:

  • Look at the domain, the part right after https://. Is it the company you expect, spelled right?
  • Be wary of link shorteners. They hide where you're going.
  • Never enter a password or card number on a page you reached from a code you didn't expect.

Frequently asked questions

How do I read a QR code from a screenshot?

Save the screenshot, then drop it on the upload box. The reader decodes it and shows the text with a Copy button. It works the same for photos and downloaded images.

Can I scan a QR code with my camera here?

No. This reader decodes image files only. To read a code in front of you, take a photo of it first, or use your phone's camera app.

How do I get the Wi-Fi password from a QR code?

Decode the image. The text will look like WIFI:T:WPA;S:NetworkName;P:yourpassword;;. The password is everything after P: up to the next semicolon.

Does the image get uploaded?

It depends on your browser. Browsers with a built-in barcode detector decode on your device. Others send the image to a public QR-reading service, which returns the text.

Why does the result look like random characters?

The app that made the code scrambled or packed the data before encoding it. A reader can't unscramble it. If it looks like Base64, a Base64 decoder may make it readable.

Can it read barcodes too?

No, only QR codes. Regular product barcodes and other 2D codes like Data Matrix aren't read.