Reading a product code from a screenshot
Upload a photo of the packaging or label, copy the decoded EAN or UPC digits and check the EAN-13 check digit.
Guide
Barcode scanner reads barcode content from a local image or a camera feed. When the browser has a native BarcodeDetector, the tool first queries the formats that browser supports and decodes directly; without the interface it loads jsQR on demand as a fallback, which can only read QR codes — 1D symbologies such as EAN, UPC and CODE-128 need a browser that supports BarcodeDetector. The page states plainly that Chrome, Edge and Android have the best support, while Firefox and desktop Safari lack the native interface for now.
Updated 2026-09-102 min read
| Input | Output | Notes |
|---|---|---|
| a clear EAN-13 image | 13 digits plus the format | the EAN-13 check digit is verified as well |
| a QR image in a browser without BarcodeDetector | the QR text | decoded through the jsQR fallback |
image/*, and whether a file actually decodes still depends on the browser.BarcodeDetector.getSupportedFormats(), not by a fixed promise from the tool.Upload a photo of the packaging or label, copy the decoded EAN or UPC digits and check the EAN-13 check digit.
On a browser with native BarcodeDetector, use the rear camera to read stock barcodes quickly.
Because 1D symbologies rely on the browser's native BarcodeDetector; where that interface is missing, the current fallback implements QR only.
No. A successful read, a mode switch or leaving the page stops the media tracks involved.
Image pixels and camera frames are used for decoding locally in the browser and are not uploaded; the camera starts only after you grant permission and stops on success or when you leave the tool.
Updated 2026-09-10
Read EAN-13, UPC, CODE-128 and other 1D product barcodes from an image or the camera, with EAN check-digit validation
Drag and drop, click to choose, or paste a screenshot with Ctrl+V