Skip to main content
Develop Tools
← Return to usage guide

Read QR Code Images | Complete Guide to Usage, Settings, and Troubleshooting

QR codes received through email, social media, PDFs, or web pages can be analyzed directly from the image without photographing them with another camera. First verify the scan result as a string.

Generate a QR code from input data and verify the result by scanning the image
Generate a QR code from input data and verify the result by scanning the image

Create QR codes and read them from images in the browser

Generate QR codes and scan images on the same page without sending input to a server.

Read a QR code image

Conclusion: Read the original image directly, verify the result as a raw string, then use it

You can select, Drop, or paste PNG, JPEG, WebP, GIF, or BMP from the Clipboard and analyze QR codes. Images are processed on the device.

The current tool does not read camera streams directly. To use a camera, save an image using the device camera and then load it.

Verify separately that it was generated, can be read from the image, and can be used safely.

Check image decoding and QR decoding step by step

The browser expands the image into pixels, tries BarcodeDetector, and if necessary passes ImageData to the bundled jsQR. It composites transparent backgrounds over white and also tries black-and-white inversion.

HEIC is not directly supported. If iPhone photos in HEIC cannot be read, convert them to PNG or JPEG with an image conversion tool, then try again.

Account to checkHow to checkjudgment
FileSupported extensions and MIME typesPNG/JPEG/WebP/GIF/BMP
ImageEntire QR code and marginsNot clipped
ResultRaw TextOriginal Data match
URLDomain and schemeDoes not open automatically

How to verify with the QR code generation and reading tool

  1. Select a QR code image, Drop it, or paste it from the Clipboard.
  2. Run automatic analysis or “Read QR code.”
  3. Check the read result as a Raw string and Copy it if needed.
  4. For a URL, check the Domain, Path, and Query with the URL analysis tool.

The scanned string is not executed as HTML, and URLs are not opened automatically by design.

Order for checking image reading

SymptomInitial checkNext steps
Cannot select an imageFormatConvert to PNG/JPEG
No detectionSpacing and sizeTry again with the original image
Characters differRaw stringOriginal data and encoding check
The URL looks suspiciousDomain and queryURL analysis

Consider Version, cells, margins, and error correction separately

smeaningPractical verification
Version1–40. Version 1 is 21×21 cells, and Version 40 is 177×177 cells.The required version varies with data volume, character types, and error correction
CellThe smallest black-and-white unit that makes up a QR codeWhether each cell remains uniformly distinguishable after rasterization or printing
Quiet ZoneThe area around a QR code where nothing is placedEnsure a width of at least four cells on all sides
Error correctionL, M, Q, and H levels for restoring data from damage or lossIncreasing it is not universally better; it is a trade-off with data volume and density

Do not assume QR code maximum capacity is a single number. Capacity varies by Version, data type such as numeric, alphanumeric, Byte, and Kanji, and error correction level. Fitting more data into the same physical size makes cells finer and reading conditions stricter.

Read test to perform before publishing or distributing

  • Return the generated PNG or SVG to the current tool's image reader and confirm that it matches the original data
  • Check not only with the same library, but also with the actual smartphones and readers that will be used.
  • Check Web displays, Screenshots, and printed materials at the intended size and viewing distance
  • Check the quiet zone on all sides, contrast with the background, blur, cell distortion, and overlap with logos or text
  • When including Japanese text, emoji, URL %, +, &, line breaks, or trailing spaces, compare raw results.

Being readable with the same tool is a useful self-test, but it does not guarantee readability on all devices, cameras, and print conditions. If the usage environment is known, include regression testing in that environment as a completion criterion.

Check scan success and URL safety separately.

The Reader's role ends at decoding a string from a QR code image. Even if it begins with https://, that does not mean it is a legitimate site, reachable, safe, or not phishing. Watch for shortened URLs, lookalike Domains, unintended Queries, and Schemes such as javascript: and data:.

  • Check scan results as raw strings without automatically trimming or normalizing them.
  • Do not open URLs automatically; after checking the Domain, Path, and Query, the user takes an explicit action
  • Treat Wi-Fi Passwords, credentials, and personal information as readable plain text
  • Do not send QR contents to Analytics, Logs, or external APIs.

Supported scope of the current QR code creation and reading tool

ItemSupport in the current Tool
Generated contentText, URL, Wi-Fi, email, phone number, and SMS
Generation settingsError correction L, M, Q, and H; 128–2048 px; 4–16-cell margins; foreground and background colors
Generated resultAutomatically selected version, cell count, UTF-8 byte count, PNG/SVG save, and PNG image copy
Image readingSelect, drop, or paste PNG, JPEG, WebP, GIF, or BMP from the Clipboard.
Scan resultDisplay and copy the decoded raw string. Do not automatically open links.
UnsupportedDirect camera reading, Camera selection, Logo compositing, Version pinning, direct HEIC reading, URL safety assessment

Generation, image analysis, copying, and downloading are processed in the browser, and input strings and images are not sent to DevelopTools servers. A detected URL is not guaranteed to be safe, so check the string before separately performing URL analysis or similar actions.

Check primary information and browser specifications

For QR code Version, Quiet Zone, and error correction, prioritize primary sources such as DENSO WAVE; for Camera Permission and Secure Context, prioritize Web specifications and MDN; for Library APIs, prioritize official Documentation for the Version in use. Do not confuse article examples with the current tool implementation.

Example: Read an email attachment screenshot on a PC

Save a Screenshot that retains the full QR code and surrounding margin, then Drop it into image reading.

You can choose the necessary action after checking the string without opening the URL automatically.

  1. Save original image
  2. Drop
  3. Check Raw results
  4. URL structure check

Cell boundaries may blur in social media images that recompress Screenshots. Use the original image when possible.

Frequently asked questions

Does a QR code need margins?
Yes. Reserve a 4-cell-wide Quiet Zone on all four sides of a QR code. Bringing text, borders, images, or background patterns close to it may affect readability.
Does setting error correction level to H make it the easiest to read?
Not necessarily. Recovery capability increases, but error-correction data also increases, which may make cells finer at the same size. Choose based on use, dirt, data volume, and size.
Is a scanned URL safe?
Successful reading does not determine safety. Check the Domain, Path, Query, and Scheme, and if needed, break it down with a URL analysis tool before opening it.