Skip to content
๐Ÿ“

Barcodes

Barcode generators, readers and lookups for product labels, stock and shipping. Each tool works out the check digit for you and runs in your browser. Retail sale through large stores still needs numbers licensed from GS1, which no generator can give you.

11 tools

Make a barcode

Generators for retail product numbers and for your own stock labels. The check digit is worked out for you; GS1 numbers for retail sale still have to be licensed from GS1.

Check, read and look up

Read a barcode from a photo, verify a check digit before you print, and see which GS1 office issued a number.

2D codes for labels and parts

Dense codes for small parts, shipping labels and IDs, where a linear barcode will not fit or cannot hold enough data.

Which barcode tool do I need?

You want toUse
Make a UPC for a product sold in the US or CanadaUPC Code Generator
Make an EAN-13 for a product sold in Europe or most other marketsEAN-13 Generator
Label your own stock, bins or shelvesBarcode Generator (Code 128)
Print SKU labels for clothingGarment Barcode Generator
Read a barcode from a photo and check the numberBarcode Scanner Online
Work out or verify a check digitCheck Digit Calculator
See which GS1 office issued a numberBarcode Country Codes
Fit a lot of data on a small part or labelData Matrix Generator
Make a shipping or ID style 2D barcodePDF417 Generator

UPC, EAN-13 and Code 128 do different jobs

UPC-A carries 12 digits and is what North American point of sale systems expect. EAN-13 carries 13 and is the international version; a UPC is effectively an EAN-13 with a leading zero, so modern scanners read both. Neither can hold letters. Code 128 is the opposite: it encodes letters, digits and punctuation at any length, which makes it the usual choice for internal SKUs, bin labels and shipping references, but a retailer's till will not treat a Code 128 label as a product number.

So the first question is not which barcode looks right but who has to read it. A shop scanner needs a GS1 number in UPC or EAN form. Your own warehouse can read whatever you print, and Code 128 is the most forgiving choice for that.

The check digit catches typing errors, not wrong numbers

The last digit of a UPC or EAN is calculated from the others. Alternate digits are weighted by 3 and 1, the products are added, and the check digit is whatever brings the total up to the next multiple of ten. That catches every single mistyped digit and most swaps of two neighbouring digits, which is why a scanner rejects a damaged label instead of reading the wrong product.

What it cannot catch is a number that was never yours. A valid check digit only proves the number is well formed. Whether it belongs to your company is a question for the GS1 database, not the arithmetic.

A barcode is only as good as the number inside it

The first digits of an EAN show which GS1 member organisation issued the number, not where the product was made. Numbers bought from resellers often trace back to a different company, and large marketplaces check product numbers against GS1 records. If you plan to sell through big retailers or marketplaces, license a company prefix from GS1 first and generate the barcode from that.

Print size and blank margins

A UPC-A at full size is about 1.47 inches wide and 1.02 inches tall, and it can usually be scaled from 80% to 200% of that. Shrink it further and bars blur together on ordinary printers. Leave the blank margin on both sides: scanners use that clear space to find where the code starts and stops, and a label cropped tight to the bars is the most common reason a correct barcode will not scan.