Types of Barcodes: Code 128, Code 39, UPC, EAN, ISBN and More

Why There Are So Many Barcode Formats

Barcodes have been in commercial use since the 1970s, and over that time, different industries developed their own specialized formats to meet specific needs — some prioritize compact size, some prioritize supporting letters as well as numbers, and some were designed for very particular use cases like pharmaceuticals or library books. Knowing the strengths of each format makes it much easier to choose the right one for your project.

Code 128

Code 128 is a high-density, flexible format that can encode the full ASCII character set — letters, numbers, and symbols — making it one of the most versatile barcodes available. It's widely used in shipping and logistics, packaging, and inventory systems where you need to encode more than just digits. Because it packs data efficiently, Code 128 barcodes can be relatively compact even when encoding longer strings.

Code 39

Code 39 is an older but still widely supported format capable of encoding uppercase letters, digits, and a small set of symbols. It's less data-dense than Code 128, meaning it takes up more space to encode the same amount of information, but its simplicity and broad hardware support have kept it popular in automotive, defense, and internal inventory tracking systems.

UPC-A

UPC-A (Universal Product Code) is the standard retail barcode format in the United States and Canada. It encodes exactly 12 digits: a number system character, a 5-digit manufacturer code, a 5-digit product code, and a check digit. If you're selling a physical product through North American retailers, UPC-A is very likely the format they'll expect.

EAN-13 and EAN-8

EAN-13 is the international counterpart to UPC-A, used throughout Europe, Latin America, Asia, and most of the rest of the world for retail products, encoding 13 digits including a country or region prefix. EAN-8 is a shorter variant intended for small packaging where a full 13-digit barcode wouldn't fit, encoding only 8 digits with a more limited range of valid manufacturer codes.

ISBN Barcodes

Every published book has an ISBN (International Standard Book Number), and on the back cover, that number is represented as an EAN-13 barcode with a special "978" or "979" Bookland prefix. In practice, generating an ISBN barcode means encoding the book's ISBN using the EAN-13 format, often alongside a small supplemental barcode showing the price.

ITF-14

ITF-14 (Interleaved 2 of 5) is designed for a different layer of the supply chain than the formats above: instead of labeling individual retail items, it's used on shipping cartons, cases, and pallets to identify bulk packaging. It encodes 14 digits and is built with thicker bars for durability, since shipping cartons are handled more roughly than a product on a store shelf.

MSI, Pharmacode, and Codabar

A handful of other formats serve narrower, specialized purposes. MSI is commonly used on warehouse shelves and inventory containers. Pharmacode was designed for the pharmaceutical industry to verify correct packaging during manufacturing, using a very simple, fast-to-read numeric pattern. Codabar, one of the older formats still in use, remains common in libraries, blood banks, and some older logistics systems.

How to Choose the Right Format

Start with what the barcode needs to communicate with: if you're selling through retail point-of-sale systems, use the standard your market expects (EAN-13 or UPC-A). If you're labeling internal inventory or shipments and control your own scanning equipment, Code 128 or Code 39 offer more flexibility, while ITF-14 is the right choice for case- and pallet-level packaging. When in doubt, check with the retailer, distributor, or scanning system you'll be working with before finalizing your format.

Generate any barcode format for free

Create CODE128, EAN-13, UPC-A, CODE39, ITF-14, and more in seconds.