Code 128
Code 128 stores letters, numbers and symbols in a compact pattern. It is common in shipping, warehouses and internal labels. It includes its own check character, so scanners can catch a misread. Create one with the Barcode Generator.
EAN 13 and UPC A
EAN 13 has 13 digits and is used for retail products in most countries. UPC A has 12 digits and is common in North America. A UPC A is the same as an EAN 13 with a leading zero. The final digit is a check digit calculated from the others.
Do you need official numbers
For products sold in shops and marketplaces, product numbers must come from GS1 or an authorized reseller. You can still draw a barcode for any number, but a made up retail number may conflict with a real product. For internal use, Code 128 is the safer choice.
Print tips
- Keep blank space on both sides of the code.
- Use black bars on a white background.
- Do not stretch the image.
- Test a printed copy with a scanner or phone.
For links and text, a QR Code Generator may fit better.
Frequently asked questions
What is the difference between EAN 13 and UPC A?
EAN 13 has 13 digits and UPC A has 12. A UPC A equals an EAN 13 with a leading zero.
What is a check digit?
A final digit calculated from the others so a scanner can detect a misread.
Can I make my own product barcode?
You can draw one, but retail product numbers should come from GS1.
Which barcode is best for inventory?
Code 128 is a flexible choice for internal labels.
More guides
Tools for this guide
Barcode Generator
Choose a barcode type, enter your number or text and the tool draws the barcode instantly. EAN 13 and...
GeneratorsQR Code Generator
Enter a link or text, pick a size and colors and the generator makes a QR code you can download as a PNG...
Name and ID GeneratorsRandom String and ID Generator
Choose a length, a character set and an optional prefix. The generator creates secure random strings you...
Name and ID GeneratorsUUID Generator
A UUID is a 128 bit identifier written as 32 hexadecimal digits in five groups. This tool creates random...