Home/How to Scan a QR Code

How to Scan a QR Code

Scanning a QR code requires nothing more than a smartphone camera in most cases. Both Apple and Google integrated QR reading directly into their default camera apps years ago, eliminating the need for dedicated scanner applications. If your phone was made after 2018, there is a very good chance it can read QR codes right out of the box. Here is how to do it on every major platform, plus what to try when things go wrong.

Scanning on iPhone (iOS 11 and later)

Open the Camera app and point it at the QR code. A notification banner appears at the top of the screen showing the encoded content: a URL, a WiFi network, a phone number, or a calendar event. Tap the banner to take action. If the banner does not appear, open Settings, go to Camera, and make sure "Scan QR Codes" is enabled. On iOS 15 and later, you can also use the Code Scanner in Control Center, which works even in low light by activating the flashlight automatically.

Scanning on Android (Android 9 and later)

Most Android phones with Google Lens built into the camera will recognize QR codes automatically. Open the Camera app, point it at the code, and look for a popup link or notification. On Samsung devices, make sure "Scan QR codes" is toggled on in camera settings. On Pixel phones, Google Lens handles detection out of the box. If your camera does not scan codes natively, download Google Lens from the Play Store as a free alternative.

Troubleshooting Codes That Will Not Scan

The most common reason a code fails to scan is distance. Hold your phone 15 to 25 centimeters from the code for a standard print size. If the code is very small, move closer. If it is very large (like a billboard), step back until the entire code fits within the camera frame. Dirty or scratched codes may also fail: wipe the surface if possible. Poor lighting is another culprit, so try enabling your phone flashlight. Finally, very dense codes (those encoding long text or detailed vCard data) require a steady hand and a clean print. If nothing works, the code itself may be corrupted or generated with an error.

Dedicated Scanner Apps: Do You Need One?

For the vast majority of QR code interactions, the built-in camera app is sufficient. Third-party scanner apps add features like scan history, batch scanning, and automatic actions, but they also introduce privacy concerns because some free scanners send your data to advertising networks. If you do choose a third-party app, look for one with a clear privacy policy and no ads.

Related Guides

Learn about optimal QR code sizing for different print scenarios. Understanding error correction levels helps explain why some damaged codes still scan while others do not. If you are deploying codes for a business, read our QR codes for business guide.

Frequently Asked Questions

Do I need a special app to scan QR codes?

No. iPhones running iOS 11 or later and most Android phones running Android 9 or later scan QR codes directly through the default camera app. No additional download is required.

Why does my phone vibrate but not open the link?

Some phones require you to tap the notification banner that appears after scanning. The vibration confirms the code was read, but the action requires a deliberate tap for security reasons.

Can I scan a QR code from a screenshot or image on my phone?

Yes. On iPhone, open the screenshot in Photos, long-press the QR code, and select Open Link. On Android, open the image in Google Lens or Google Photos and it will detect the code automatically.

What is the maximum scanning distance?

The general rule is ten times the code width. A 3 cm code scans from about 30 cm away. A 30 cm code on a poster works from about 3 meters. Larger codes with higher error correction can sometimes scan from slightly farther.

Can QR codes contain viruses?

A QR code itself is just data. It cannot install software or run code on your phone. However, a malicious QR code could link to a phishing website. Always check the URL shown in the scanner notification before tapping, and avoid scanning codes from untrusted sources in sensitive environments.