Code 39 barcode generator
Type capital letters, digits and a few symbols; lowercase is turned into uppercase. Add the optional mod 43 check character if your system expects it.
A–Z, 0–9 and - . $ / + % and space. Lowercase becomes uppercase.
58.8 × 23.7 mm printed size, module 0.3 mm.Encodes PART-0042
Need many? Make a batch or a label sheet.
Size and colour
What is Code 39?
Code 39 (also called Code 3 of 9) is one of the oldest alphanumeric barcodes. Each character is drawn on its own, separated by a gap, so it is simple to print and to read, but wider than Code 128 for the same data.
It does not need a check character, but some systems ask for the optional mod 43 one. Turn it on here and it is added to the bars and to the text.
Where it is used
- ID badges and membership cards
- Part numbers in older industrial systems
- Library and inventory systems that were set up for Code 39
What it holds
| Code 39 | |
|---|---|
| Characters | A–Z, 0–9, space and - . $ / + % |
| Length | Variable; this site takes up to 43 characters |
| Check character | Optional, mod 43 |
| Start and stop | An asterisk at each end, added by the encoder |
Printing Code 39 barcodes
- If you are starting a new system, Code 128 holds more characters in less space.
- Match the check character setting to what your scanner or software expects.
- Keep the blank margin on both sides.
- Print one sample on the printer and label stock you will use, and scan it with the scanners that have to read it, before a full run.
Need a sheet of them? The batch generator makes up to 1,000 Code 39 barcodes at once and lays them out on Letter or A4 label sheets.
Questions about Code 39
Why are the asterisks shown under the bars?
Code 39 starts and stops with the * character. Many printers show it in the text; the scanner does not send it to your software.
How is the mod 43 check character worked out?
Each Code 39 character has a value from 0 to 42 (0–9, then A–Z, then - . space $ / + %). Add the values of the data, divide by 43 and take the remainder: the character with that value is the check character.
Can Code 39 carry lowercase letters?
Not directly. An extended mode uses pairs of characters for lowercase, but scanners must be set up for it. This generator keeps to standard Code 39 and turns lowercase into uppercase.
Sources
- bwip-js
The open-source library that draws the barcodes on this site (MIT licence).
Other formats
- Code 128Warehouse, shipping and inventory labels.
- Data MatrixSmall parts, electronics and healthcare packs.
- QR CodeLinks and text for phones to scan.
- EAN-13Retail products sold around the world.
- UPC-ARetail products in the US and Canada.
- ITF-14Cartons and cases of products.
- GS1-128Logistics labels with GTIN, lot, dates and serials.