# Barcode Scanner

A barcode scanner for pictures: read a Code 128, EAN-13, UPC-A or EAN-8 out of a screenshot or a scan. The check digit is verified and nothing is uploaded.

Canonical page: https://filetity.com/barcode-scanner

## Capabilities

- Free: Yes, with no watermark and no page limit.
- Account required: No. There is no account system.
- Processed on device: Yes. The file is read by your browser and never uploaded. There is no server to send it to.
- Formats: Code 128, EAN-13, EAN-8 and UPC-A, from PNG, JPG, WebP, GIF, BMP or anything else your browser opens as an image. Out as plain text you can copy.
- Limits: A clean image: a screenshot, a flat scan, or a label photographed square and in focus. There is no perspective correction, no deblurring and no reading of a code that is upside down, so a photo of a shelf taken at an angle will not read. QR codes are a different shape and have their own page.
- Mobile: Yes, on any modern mobile browser. Large files are limited by the memory the phone gives the browser.
- Offline: Yes, once the page has loaded. The tool keeps working with no network connection.

## Questions

### Why will my photo not read?

Almost always angle or focus. This reads bar widths along a straight line, so a code photographed from the side has bars that are wider on one end than the other and the widths stop matching the tables. Hold the camera square to the label, fill the frame with the code, and let it focus. A screenshot or a scan reads first time.

### It found nothing, but I can see the barcode clearly. Why?

Two other causes. The code may be a symbology this does not read, such as Code 39, ITF-14 or a 2D code like Data Matrix. Or the read did happen and failed its own arithmetic, which is a refusal rather than a failure: a code whose check digit does not add up is not shown, because the alternative is handing you a number that is confidently wrong.

### Why does a 13 digit code starting with zero come back as UPC-A?

Because the bars are identical. A UPC-A is an EAN-13 with a leading zero, and the two are encoded exactly the same way, so nothing in the picture says which was intended. The twelve digit form is reported since that is what a UPC-A label prints underneath itself.

### Do I need a camera or an app?

No. This reads an image file, which is the case a phone scanner cannot handle: a code in a PDF, a screenshot of a ticket, a photo somebody emailed you. It runs in the page with no upload and no install.

## Related tools

- [Barcode Generator](https://filetity.com/barcode-generator): Generate a Code 128, EAN or UPC barcode, with the check digit worked out.
- [QR Code Scanner](https://filetity.com/qr-code-scanner): Read a QR code out of a picture and see where it goes before you go there.
- [QR Code Generator](https://filetity.com/qr-code-generator): Generate a QR code from a link or text, and save it as a PNG or an SVG.
