Image Barcode scanner
Read EAN, UPC, Code 128, ITF, Data Matrix and PDF417 with your camera or from a photo, with the check digit verified.
Drop a photo or screenshot of the code here, paste one with Ctrl+V, or
The picture is decoded in this tab. Nothing is uploaded.
Ready. Runs locally on your device.

Your files stay on your device. The tool works directly in your browser, using your device to process your files. Nothing is sent to our servers, and we never receive, store, or see your files or figures.
Share result
Cite
Cite this page
Reembun. (2026, July 31). Barcode scanner. https://reembun.com/barcode-scanner
How to use it
Choose camera or image
Camera reads the barcode live. Image or file reads a photo or a screenshot of one.
Line the code up
Fill the frame with the barcode and hold it square on. Reading happens automatically as soon as it resolves.
Read what was found
Each code shows its symbology and its exact contents. For retail EAN and UPC codes the check digit is verified and the issuing country is named.
Copy the numbers
Copy takes a single code, Copy all takes every code found in one picture.
Linear and 2D, and why they fail differently
| Symbology | Holds | Typical use |
|---|---|---|
| EAN-13 | 13 digits | Retail products worldwide |
| EAN-8 | 8 digits | Small retail packaging |
| UPC-A | 12 digits | Retail in the US and Canada |
| ISBN | 13 digits, 978 or 979 prefix | Books |
| Code 128 | Any ASCII, variable length | Shipping, logistics, internal labels |
| Code 39 | Letters, digits, a few symbols | Industry, defence, older systems |
| ITF-14 | 14 digits | Cartons and outer packaging |
| GS1 DataBar | GTIN plus weight or expiry | Fresh food, coupons |
| Data Matrix | Any data, very small footprint | Component marking, pharmaceuticals |
| PDF417 | Around 1,800 characters | Licences, boarding passes, ID |
The practical split is not linear against 2D, it is whether the symbology carries error correction. Data Matrix, PDF417, Aztec and QR all do, and all survive real damage. EAN, UPC and Code 128 carry at most a single check digit, which detects an error without being able to repair one.
What the check digit actually proves
Every retail barcode ends with a digit calculated from the ones before it. Take the digits from the right, multiply alternately by three and one, add them up, and the check digit is whatever takes that total to the next multiple of ten.
That catches every single digit error, and most transpositions of adjacent digits. It catches nothing about whether the product exists, who made it, or whether the number was printed by someone entitled to use it.
So a valid check digit means the number was read correctly. It does not mean the number is real. This tool reports exactly that and no more, which is the difference between a scanner and a lookup service.
The country prefix, stated correctly
The first three digits of a GTIN identify the GS1 member organisation that allocated the company prefix. That is nearly always the country in which the brand owner registered with GS1.
It is not the country of manufacture. It is not the country of origin for customs purposes. It is not where the product was packed. A brand registered in Australia manufacturing in China ships an Australian prefix, and a Chinese manufacturer registered locally ships a Chinese one on a product sold under a European brand.
The frequently shared advice to avoid or prefer certain prefixes to buy from a particular country is therefore wrong at the root, and it has been wrong since GS1 said so publicly. The tool names the issuing organisation, and puts that qualification next to it every time.
Scanning a 1D code reliably
Linear codes are much fussier than QR codes about how you photograph them:
Get the whole width. A barcode with either end cropped is unreadable. There is no partial answer, because the quiet zones at each end are part of the symbol.
Hold it level. Rotation is handled, but a code photographed at a steep angle stretches the bar widths unevenly across the frame, and bar width is the entire encoding.
Watch for curve. A code wrapped around a bottle or a tin bends the bars, and past roughly 30 degrees of curvature there is no reading it flat on.
Fill the frame horizontally. Bars are thin, and each one needs at least two or three pixels. Distance kills a 1D code much faster than it kills a QR code.
Camera or photo
Both work identically. The camera scans continuously and stops on the first hit, and the image path reads a photo, a screenshot or a picture someone sent you. Everything is decoded in this tab, and nothing about the code, the photo or the camera stream is transmitted.
Common questions
Which symbologies does it read?
The retail family (EAN-13, EAN-8, UPC-A, UPC-E and ISBN), the industrial linear codes (Code 128, Code 39, Code 93, Codabar, ITF and ITF-14), GS1 DataBar, and the 2D codes (QR, Data Matrix, PDF417, Aztec and MaxiCode). PDF417 is the one on the back of most driving licences and boarding passes.
Does the first digit tell me which country the product was made in?
No, and this is the most widely repeated myth about barcodes. The prefix identifies the GS1 member organisation that issued the company number, which is usually where the brand owner registered. A German company selling something manufactured in Vietnam still carries a German prefix. The tool names the issuing organisation and says so explicitly.
What is the check digit and why does it matter?
It is the last digit, and it is calculated from the others by weighting them alternately by three and one, summing, and taking the distance to the next multiple of ten. Every retail barcode carries one. If it does not match, the number has been mistyped or misread, and this tool tells you so rather than passing a corrupt number along.
Can it look up the product name?
No, and it will not pretend to. Product databases are commercial services that require sending the number to a server, which would break the guarantee this site is built on. What you get is the number, verified, and where it was issued. Searching that number is then your decision to make.
Why does a long thin barcode fail more often than a QR code?
A linear barcode encodes everything in the width of its bars, so any horizontal blur, angle or stretch destroys information that nothing can recover. It also carries no error correction at all beyond the single check digit. QR codes are two dimensional and carry redundancy by design, which is why they survive damage that a 1D code does not.
Last reviewed
