Barcode Scanner

Drop a photo or screenshot of a barcode — get the number, and what it means.

Drop a picture with a barcode here or click to choose a file · or paste a screenshot (Ctrl/⌘ + V)

The scanning engine (about 1 MB) downloads from a CDN the first time you drop a picture. The picture itself is read on this page and never uploaded.

🔒 Runs entirely in your browser — nothing you type is uploaded or stored on a server.

Drop in a photo or screenshot of a barcode and get the number or text it holds, ready to copy — from a product, a book, a shipping label or an asset tag. It finds every barcode in the picture, at any angle, and outlines each one so you can see which is which.

Also on Txtset: make a barcode from a number · read a QR code from a screenshot.

The number is explained, too. A book barcode is shown as its ISBN-13 and ISBN-10. A product barcode shows the GS1 prefix — which country’s GS1 office issued the company its number (not, as is often assumed, where the product was made) — or tells you it is an in-store code set by the shop. The check digit is verified, so a result you can read is a result you can trust.

It reads EAN-13, EAN-8, UPC-A, UPC-E, Code 128, Code 39, Code 93, Codabar, ITF and GS1 DataBar, and the 2D codes you meet on labels and ID cards — Data Matrix, PDF417, Aztec and QR. For QR codes with links, Wi-Fi or contacts in them, the QR Code Scanner explains the contents in more detail.

Your picture never leaves your device. The open-source zxing-cpp reader downloads once from a CDN, pinned to an exact version and checked against a fingerprint, and every read happens in this page. No camera, no app to install. To go the other way, the Barcode Generator draws one from a number.

How to use

  1. Drop a picture onto the box, click to choose one, or paste a screenshot (Ctrl/⌘ + V).
  2. Wait a moment the first time while the scanning engine downloads.
  3. Read the number and what kind of code it is. Every barcode found is outlined on your picture.
  4. Copy one result, or copy them all at once.

Examples

The barcode on the back of a book
9780306406157 — shown as ISBN-13 9780306406157 and ISBN-10 0306406152.
A product barcode starting 500
EAN-13, company registered with GS1 UK, check digit valid.
A shipping label with three barcodes
All three, numbered on the picture, each with its type.
A barcode starting with 2
An in-store code, set by the shop that printed it — often a weighed item’s price.

Frequently asked questions

Can I scan a barcode without a phone app?
Yes. Take a photo with any camera, or a screenshot of a barcode on screen, and drop it here. The reading happens in your browser.
Does it look the product up?
No. It reads the number and explains what the number itself says; it does not send the number to a product database. Search the number if you need the product.
Does the prefix tell me where a product was made?
No, and that is a common myth. The first digits say which country’s GS1 office issued the company its number. A company registered in Germany can make things anywhere.
Why was no barcode found?
Most often the bars are too small or blurred to tell apart. Crop so the barcode fills more of the picture (Crop Image), keep the blank margin either side of the bars, and avoid glare across them.
Is my picture uploaded?
No. The only download is the scanning engine (about 1 MB, from the jsDelivr CDN, the first time). Nothing you drop here is sent anywhere.
What is the scanning engine?
zxing-wasm 3.1.4 (MIT licence), a WebAssembly build of the zxing-cpp barcode reader (Apache-2.0). Versions, fingerprints and licences.