Code 39 Barcode Generator – The Classic Alphanumeric Barcode Standard
What Is a Code 39 Barcode?
Code 39 (also called Code 3 of 9 or USS Code 39) was developed in 1974 by Intermec and is one of the oldest barcode symbologies still in wide use. Its name comes from its encoding method: each character is represented by 9 elements (5 bars and 4 spaces), of which exactly 3 are wide and 6 are narrow.
Code 39 is self-checking, meaning that a single printing defect in one character cannot cause the scanner to misread it as another valid character. This property eliminates the need for a mandatory check digit, although an optional modulo-43 check digit can be added for higher security.
The symbology is widely adopted by the US Department of Defense (MIL-STD-1189B), the automotive industry (AIAG), and the Health Industry Bar Code Council (HIBC). It is also specified in ISO/IEC 16388 and ANSI/AIM BC1.
Technical Specifications
| Property | Detail |
|---|---|
| Character set | 43 characters: A–Z, 0–9, - . $ / + % and space |
| Extended mode | Full ASCII (128 characters) using character pairs |
| Data length | Variable (no limit, but practical constraint by label width) |
| Check digit | Optional modulo 43 (mandatory in some applications) |
| Symbology type | Linear (1D), discrete (inter-character gaps) |
| Wide-to-narrow ratio | 2.0:1 to 3.0:1 (2.5:1 recommended) |
| Start/stop character | Asterisk (*), printed but not transmitted |
Because Code 39 is a discrete symbology (characters are separated by inter-character gaps), it is more tolerant of printing imperfections than continuous symbologies. However, this also means each character occupies more space, resulting in lower density compared to Code 128.
Common Use Cases for Code 39
- • Military and government: US DoD logistics (MIL-STD-1189B) and NATO stock numbering rely on Code 39 for asset tracking and supply chain management.
- • Automotive industry: The Automotive Industry Action Group (AIAG) specifies Code 39 for parts labelling, VIN plates and shipping labels between suppliers and OEMs.
- • Healthcare: HIBC (Health Industry Bar Code) standard uses Code 39 with a mandatory check digit for medical devices, pharmaceutical packaging and laboratory specimens.
- • Library systems: Many library barcode systems use Code 39 for patron cards and book labels due to its simplicity and wide scanner compatibility.
- • Employee badges: ID cards and access control systems frequently use Code 39 to encode employee identification numbers.
How to Create a Code 39 Barcode
- 1. Open the Barcode Generator and select Code 39.
- 2. Enter uppercase letters, digits and supported special characters. The start/stop asterisks are added automatically.
- 3. Choose whether to include the optional modulo-43 check digit for added security.
- 4. Download the barcode image and test-scan it before deploying in production.
All processing happens locally in your browser – no data leaves your device. Create unlimited Code 39 barcodes without registration.
Tips for Code 39 Barcodes
- • Keep data short: Due to the low density (about 16 modules per character), Code 39 barcodes grow wide quickly. For data longer than 15–20 characters, consider Code 128 instead.
- • Use a consistent ratio: A 2.5:1 wide-to-narrow ratio provides the best balance of readability and compactness across most printing methods.
- • Quiet zones: Maintain at least 10 times the narrow bar width as quiet zone on each side of the barcode for reliable scanning.
Related Topics
Create Your Code 39 Barcode Now
Create your Code 39 barcode now – free, no sign-up required.
→ Go to Barcode Generator