Scan a barcode or QR code
Upload an image or PDF, paste a screenshot, or use your camera. Everything is decoded on your device, so nothing is uploaded. It reads QR, EAN, UPC, Code 128, Data Matrix, PDF417 and more, and finds every code in one shot.
JPG, PNG, HEIC, TIFF or PDF · Multiple files supported
What you get
- Decodes a barcode or QR straight from an image or a PDF page: drop in a photo, a screenshot, or a scanned document and read the data back out.
- Reads the common families in one pass — QR, Data Matrix, Aztec, PDF417, plus Code 128, Code 39, EAN/UPC, ITF, Codabar and the GS1 DataBar codes.
- Finds every code in one image, not just the first, and lists each with its exact type so a sheet of labels or a multi-code page comes back in full.
- Reads rotated, upside-down and light-on-dark (inverted) codes automatically, so you don't have to straighten the photo first.
- Runs entirely in your browser on a WebAssembly decoder: the image is never uploaded, and it works offline once the page has loaded.
Questions people ask
What barcode types can it read?
The 2D codes QR, Micro QR, Data Matrix, Aztec, PDF417 and MaxiCode, and the 1D codes Code 128, Code 39, Code 93, EAN-13, EAN-8, UPC-A, UPC-E, ITF, Codabar and the GS1 DataBar family. It can't read Direct Part Marking (etched-on-metal) or DotCode codes, which need specialised industrial scanners.
Is my image or file uploaded anywhere?
No. The decoding runs on your own device with WebAssembly, so the picture, screenshot or PDF never leaves your browser. Nothing is sent to a server and nothing is stored.
The code won't read — what can I do?
Use a sharper, well-lit photo where the whole code is in frame and not badly blurred or crumpled. Higher resolution helps most for small or dense codes. Very damaged, engraved-on-metal, or DotCode symbols may not be readable without an industrial scanner.
Do you also make barcodes?
Yes. Our Barcode & QR generator creates QR codes and 70+ barcode types with spec-correct rendering and free PNG and SVG downloads.
Related tools
Every tool runs the same way: privately, in your browser.