QR codes were designed to be scanned by a camera pointing at a poster, a menu or a screen across the room. That breaks down in a very ordinary situation: the code is already on your phone.
A friend sends a ticket as an image. A website shows a QR code to log in on another device, and you are reading it on the phone you would scan with. A boarding pass ends up as a screenshot in your camera roll. You cannot point the camera at itself.
The good news is that you do not need a second phone. Here are the ways to read a QR code from an image on iPhone, why some attempts fail, and the one check worth doing before you tap the link.
Method 1: The Photos App
Recent versions of iOS detect QR codes inside images you already have, using the same text and object recognition that powers Live Text.
1. Take a screenshot of the code, or save the image someone sent you
2. Open it in the **Photos** app
3. Look for a small QR indicator near the corner of the image, or **touch and hold the code itself**
4. A preview of the link appears. Tap it to open, or choose to copy it
If nothing appears, make sure Live Text is switched on in **Settings > General > Language & Region**, and update iOS if you are a few versions behind. The exact gesture has moved between iOS releases, so if the icon is missing, the long press on the code is the method to try first.
The Photos route is free and built in, which makes it the right first attempt. Its weak spots are that it keeps no record of what you scanned and that it is less forgiving with small or blurry codes.
Method 2: A Scanner App That Reads From Your Library
Most dedicated scanner apps have an option to pick an image from your photo library instead of using the camera. The app looks for the code in the saved image, decodes it, and shows you the content before anything opens.
This is the better route when:
- You scan codes from images often, such as tickets, Wi-Fi details or event check-ins
- You want a history, so you can find that Wi-Fi password or link again next week
- The code is a barcode, not a QR code, which the Photos app generally does not decode
- You want to see the content first, rather than having a link jump straight into Safari
Method 3: Screenshot the Screen You Are On
If the QR code is on a web page or inside another app, you do not need to save anything first. Take a screenshot (side button plus volume up on Face ID models), then use Method 1 or 2 on that screenshot.
This is the standard answer to "how do I scan a QR code on the same phone". It also works on iPad, and on a Mac you can screenshot the window and read it from the image.
You can delete the screenshot afterwards. If it is something like a two-factor setup code, you should.
Why the Code Will Not Read
When an image refuses to decode, the cause is almost always the image, not the phone.
| Problem | Why it fails | Fix |
|---|---|---|
| Code is tiny in the frame | Too few pixels per module | Crop so the code fills most of the image |
| Forwarded through chat apps | Compression blurs the edges | Ask for the original file |
| Edges cropped off | The corner squares are missing | Take a new screenshot with margin around the code |
| Photo of a screen | Moire patterns and glare | Use a screenshot on the source device instead |
| Low contrast or inverted colours | Some decoders expect dark on light | Try a different scanner, or increase contrast in an editor |
| Logo covering too much | Error correction has a limit | Nothing to fix on your side; ask for another copy |
Every QR code needs a blank border around it, called the quiet zone. Screenshots that cut tight to the code are one of the most common reasons a code that scanned fine on paper fails as an image. For problems with codes on physical objects, see why QR codes stop scanning.
Check the Link Before You Open It
A QR code in an image arrives with less context than one on a restaurant table. You did not see where it came from, and it may have been forwarded several times.
Before you open it:
- Read the full address in the preview, not just the first few characters
- Be wary of shortened links, because they hide the real destination
- Do not log in or pay on a page you reached through a code you were not expecting
- Watch for lookalike domains, such as an extra letter or an unusual ending
QR phishing, often called quishing, works precisely because people trust the code more than they would trust a typed link. Our guide to spotting a quishing scam covers the patterns in more detail.
Reading QR Codes From Images With Smart QR
Smart QR is a QR and barcode scanner for iPhone that reads codes from the camera or from images saved on your device, including screenshots, photos and images received in messaging apps. It shows the decoded content before opening it, supports common barcode formats such as EAN-13, UPC and Code 128 as well as QR, and saves every scan to a history you can search later. It can also generate codes of its own.
What it cannot do:
- It cannot recover detail that is not in the image. A heavily compressed or cropped code may simply be unreadable, and no decoder fixes that
- It does not judge whether a link is safe. It shows you the address so you can decide; the decision is still yours
For everyday camera scanning, see the complete iPhone scanning guide.