How to Read a QR Code Without Opening the Link
Read a QR code from a screenshot, inspect the original URL, and trace HTTP redirects before deciding whether to open the destination.
Like it ? share it
Have a QR code in a screenshot but want to see the address before visiting it? Upload the image to the QR decoder. It reads the code in your browser and displays the text inside it without opening the linked website.
Here is a worked example using a QR code for https://enfect.com/qrdecoder. The screenshots show the live tools on September 29, 2026. You can save the sample PNG and follow the same steps, or use your own screenshot.

1. Upload your QR image
Open the QR decoder and leave the Upload tab selected. Click Drop an image, or click to browse, then choose the saved PNG or JPG. You can also drag the file into that box.

The upload box is on the left. The result will appear under Decoded payload on the right; you do not need to press a separate scan button.
If you copied a screenshot to your clipboard, use the Paste tab instead. The URL tab fetches an image from an image address. Use Upload for a file already on your device.
2. Read the decoded address
After uploading the sample, the result is https://enfect.com/qrdecoder.

This is the address stored in the QR code. Notice that it has no www. We will check where it leads in the next step.
If you only need the text, click Copy payload and stop here. Open URL visits the address, so leave that button alone while inspecting it. QR codes can also contain plain text or WiFi details; those do not need a website visit.
3. Trace the URL before opening it
For a web address, click Check redirects below the decoded result. The redirect checker opens with that address already in Target URL.

At this point, the chain is still empty. Check the address in the field, then click Trace redirects. This asks Enfect's server to request the URL and follow its HTTP redirects. Your browser stays on the checker.
Skip this step for a private invitation, password-reset link, or signed download URL if you do not want Enfect's server to request it. You can still read and copy the decoded text from step 2.
4. Check the final address
The sample produces two response rows:
| Address | Response | Meaning |
|---|---|---|
https://enfect.com/qrdecoder |
301 Moved Permanently |
The server redirects to the address with www. |
https://www.enfect.com/qrdecoder |
200 OK |
The destination responds successfully. |

The tool labels the two response rows as "2 hops." In this example, there is one redirect followed by the final response. The Final destination is https://www.enfect.com/qrdecoder.
For your own QR code, compare that final hostname with the site you expected. A short link may lead to a different domain. If you do not recognize it, check with the sender through a channel you already trust before choosing Open destination. You can also leave the checker without opening it.
A 200 response only tells you that the address responded successfully. The checker does not scan for malware or execute JavaScript redirects. A browser visit can also produce a different result because of location or login state.
If your image will not decode
Try a sharper screenshot or crop out surrounding content while keeping the white border around the code. For a photo of a printed code, reduce glare and keep the camera square to the paper. If the URL tab cannot fetch an image, save it to your device and use Upload.
If decoding succeeds but the destination returns an error, the image has done its job: the next thing to fix is the link. For a list of campaign URLs you need to check before printing, the Bulk URL Checker checks responses and exports CSV. It does not report whether Google has indexed those pages.