New shop owners often assume any barcode will do, generate the first one they see, and only run into trouble weeks later when a supplier or marketplace rejects it. The format actually matters, and picking the wrong one usually shows up as a headache down the line rather than an immediate error.
| EAN13 | Code128 |
|---|---|
| 13 fixed digits, numbers only | Variable length, letters and numbers |
| Global retail standard (the one on packaged goods) | Common for internal use, shipping, warehousing |
| Requires registration for genuinely unique codes | You can assign your own codes freely |
| Recognized by every retail POS system | Widely supported, though not the retail "law" |
If you're selling in physical retail stores
EAN13 is what supermarkets and most point-of-sale systems expect. If you want your product on a shelf next to other packaged goods, this is generally the format that avoids friction with retailers and distributors.
If you're managing your own inventory or shipping
Code128 doesn't need external registration and can encode more than just digits, which makes it flexible for internal SKUs, batch numbers, or shipping labels — anywhere you control both the printing and the scanning.
A mistake worth flagging
Making up your own "EAN13-style" number without registering it can cause real conflicts if a retailer's system already has that exact code assigned to a different product. If you genuinely need EAN13 for retail distribution, it's worth registering through the proper channel rather than picking random digits.
Our honest take
Most small businesses selling online or managing their own stock never actually need EAN13 — Code128 covers the vast majority of internal use cases without any registration cost. Reach for EAN13 only once a physical retailer specifically asks for it.