Loading Barcode Mint…

Barcode Mint

Free Online Barcode & QR Code Generator

Linear Barcode

Codabar Generator

Create a Codabar barcode, one of the oldest self-checking symbologies, still used in blood banks, libraries, and package tracking.

Open the generator ↓
Preview
100%

01

Symbology

Code 128
All 106 β†’
02

Data

03

Properties

Properties

2
100
18
10
04

Bulk & batch generate

πŸ”’ Pro

Turn a CSV β€” or a numbered sequence β€” into hundreds of barcodes at once, exported as a ZIP of images or a print-ready PDF sheet. Launching with Pro.

Launching soon

Pricing β€” join the early list

The browser generator stays free forever. Paid plans are for teams who need bulk output and developers who need the REST API at scale β€” commercial license included. Tell us what you'd use; early-list members get first access and launch pricing.

For the generator

Free $0/forever

What you're using right now

  • 100+ barcode & QR symbologies
  • Live preview & customization
  • PNG & SVG export, no login
  • Copy to clipboard
Available now βœ“

For developers β€” REST API

Priced by requests. Commercial license and self-serve keys included; usage dashboard at launch.

Small $19/mo$190/yr 500 req / mo
Large $499/mo$4,990/yr 50K req / mo
Enterprise Custom Contact us

Get early access + launch pricing

Which features would you actually use? (optional β€” it helps us decide what to build first)

No spam β€” one email when it launches. The free tool isn't going anywhere.

What is Codabar?

Codabar (also known as NW-7, USD-4, or Ames Code) is a linear barcode symbology introduced in 1972, making it one of the earliest barcodes still in active commercial use. It encodes digits 0–9 along with the symbols − $ : / . + and requires each symbol to start and end with one of four special characters, conventionally labeled A, B, C, and D, which also let a single system distinguish between different data formats sharing the same barcode type. Codabar's design goal was simplicity: it can be printed and decoded reliably by even basic, older hardware, which is part of why it's persisted for decades in a few specific industries even as more capable symbologies emerged.

How Codabar encodes data

Each character in Codabar is represented by a unique pattern of 4 bars and 3 spaces, with each element being either wide or narrow — giving a self-checking structure where the ratio of wide to narrow elements per character helps a scanner validate that it decoded the symbol correctly, without needing a separate checksum digit (though optional check digits are used in some implementations, such as certain blood bank formats). The mandatory start and stop characters (one of A, B, C, or D at each end) aren't part of the encoded data itself; they're structural markers that also let downstream systems key off which start/stop pair was used to distinguish between different data types printed on the same kind of label.

Technical Specifications

Codabar encodes the digits 0–9 plus the six symbols − $ : / . +, with no letters. Every symbol must begin and end with a start/stop character chosen from A, B, C, or D (or their historical alternates a, b, c, d / t, n, *, e in some implementations), and these bookend characters are typically excluded from the interpreted data itself. There's no length limit imposed by the specification, though real-world Codabar codes are usually short, in the 8–15 character range. The base standard has no mandatory check digit, though several industry-specific implementations — notably some blood bank and courier applications — layer on an optional modulo-16 or modulo-11 check digit by convention rather than by the core Codabar spec.

Where Codabar is used

Codabar's largest remaining strongholds are blood banks and healthcare, where it's used in the ISBT 128-predecessor labeling systems for blood products and specimen tracking, and libraries, where many library systems still print Codabar on patron cards and book spine labels because of decades-old infrastructure built around it. It also appears in some courier and package-tracking systems, particularly older FedEx airbill formats historically used Codabar-family encoding. Its self-checking structure and simple hardware requirements made it a natural fit for these lower-throughput, reliability-sensitive environments, even though most new barcode deployments today choose Code 128 or Code 39 instead.

How to create a Codabar barcode in Barcode Mint

Select Codabar from the symbology list on the left, then enter your data using digits 0–9 and the symbols − $ : / . +. Add the appropriate start and stop characters (A, B, C, or D) at the beginning and end if your receiving system expects them explicitly. From there you can:

Printing & scanning best practices

Codabar's self-checking wide/narrow ratio per character means print consistency matters for accurate decoding — a printer that doesn't maintain a sharp, consistent wide-to-narrow bar ratio can produce a symbol that still looks plausible but decodes incorrectly. Keep the quiet zone clear on both sides, since Codabar's start/stop character detection relies on it, and always confirm which start/stop character convention (A/B/C/D vs. legacy alternates) your specific receiving system expects, since blood bank, library, and courier implementations don't always agree on the same convention. Where the application allows it, add an optional check digit for extra protection, since the base standard doesn't require one.

Codabar vs. related codes

Codabar and Code 39 are often compared because both are older, self-checking symbologies with modest character sets, but Codabar's character set is numeric-plus-symbols (no letters), while Code 39 supports uppercase letters, digits, and several symbols — a broader alphabet in a similarly simple structure. Compared to Code 128, Codabar is far less space-efficient and has a much smaller character set, but it remains entrenched in blood banks and libraries purely due to installed-base inertia rather than any technical advantage. If you're building a new system without a legacy Codabar requirement, Code 39 or Code 128 will generally serve better.

Common uses

Frequently asked questions

What characters can Codabar encode?
Codabar encodes digits 0 through 9 plus the symbols minus, dollar sign, colon, slash, period, and plus, along with mandatory start/stop characters chosen from A, B, C, or D.
Why do Codabar barcodes need start and stop characters?
The start and stop characters (A, B, C, or D) frame the symbol so a scanner knows where it begins and ends, and they can also let a system distinguish between different types of data using the same barcode format.
Does Codabar have a check digit?
The base Codabar standard doesn't require one, though some industry-specific implementations, such as certain blood bank systems, add an optional check digit by convention.
Is Codabar still commonly used?
Its use has narrowed mainly to blood banks, some library systems, and legacy courier applications; most new barcode deployments choose Code 39 or Code 128 instead.
What's the difference between Codabar and Code 39?
Codabar encodes digits and a limited set of symbols with mandatory A-D start/stop characters, while Code 39 supports uppercase letters, digits, and several symbols with a single universal start/stop character.
Can I bulk-generate Codabar barcodes?
Yes, upload a CSV of values and Barcode Mint will generate a ZIP of image files or a print-ready PDF of labels in one batch.

Related barcode types

Browse all 106 barcode & QR types β†’