Repository navigation
Code 128
Terry Burton edited this page Oct 24, 2026
·
32 revisions
Code 128 is an arbitrarily long, high-density barcode symbology that can be used to encode any byte values.
Also known as: USD-6, USS-128, Code 128A, Code 128B, Code 128C.
Uses:
- Identifiers outside the GS1 system, such as carrier tracking numbers and warehouse, bin, inventory and asset labels.
- Amazon FNSKU product labels.
- Aggregated packaging of tobacco products under EU traceability Regulation (EU) 2018/574.
- Blood, tissue and cell products labelled to ISBT 128.
- International registered mail, parcels and EMS, carrying the UPU S10 tracking number.
- DPD parcel labels (DPD Parcel Label).
- Clinical laboratory specimen tubes (CLSI AUTO02).
- Automotive transport labels (Global Transport Label: Odette, AIAG B-16, VDA 4994).
Variants:
- GS1-128 is a variant of Code 128 that should be used when encoding data that is in GS1 Application Identifier standard format.
- HIBC Code 128 is a variant of Code 128 that should be used when encoding HIBC formatted data.
- UPU S10 is a variant of Code 128 carrying the S10 identifier of a postal item.
- DPD Parcel Label is a variant of Code 128 on the parcel labels of DPD.
Standards: ISO/IEC 15417, ANSI/AIM BC4 - ISS Code 128, BS EN 799.
- The data field can consist of any byte values. The interpretation of data by readers is in accordance with ISO/IEC 8859-1.
- The mandatory check digit is calculated automatically.
- When the parse option is specified, any instances of
^NNNin the data field are replaced with their equivalent byte value, useful for specifying unprintable characters, e.g.^029for GS,^209for Ñ, etc. - FNC4 function characters will be inserted automatically to allow the encoding of byte values 128 to 255.
- When the parsefnc option is specified, non-data function characters can be specified by escape sequences:
-
^FNC1: FNC1. Recommendation: Consider GS1-128 for encoding GS1 AI syntax data. -
^FNC@: FNC1 in second position, written before an AIM application indicator of one letter or two digits at the start of the data, e.g.^FNC@T...or^FNC@99.... See FNC1 in second position. The human readable text leaves out this FNC1. -
^FNC2: FNC2 -
^FNC3: FNC3
-
- The readerinit option denotes that the symbol is used for programming the barcode reader, by placing FNC3 at the start of the data. It is not available with FNC1 in first or second position, nor with the raw option, whose codewords can include FNC3 directly.
-
Deprecated: The raw option denotes that the data field is providing the input as pre-encoded codewords in
^NNNformat, suitable for direct low-level encoding. You can use the alttext option to specify human-readable text. -
Deprecated: For internal use. When the parsefnc option is specified, the special pseudo characters
^LNKAand^LNKCat the end of the symbol indicate that a GS1-128 symbol includes a CC-A/B or CC-C GS1 composite 2D component.
A symbol encoding alphanumeric data:
Data: Count0123456789!
Options: includetext
Encoder: code128
Home | Download | Documentation (PDF) | Source | Support | Issues | Online Barcode Generator
Point of Sale
GS1 DataBar
- GS1 DataBar Omnidirectional
- GS1 DataBar Stacked Omnidirectional
- GS1 DataBar Expanded
- GS1 DataBar Expanded Stacked
- GS1 DataBar Truncated
- GS1 DataBar Stacked
- GS1 DataBar Limited
- GS1 North American Coupon Code
Supply Chain
- EAN-14
- ITF-14
- SSCC-18
- GS1-128
- GS1 DataMatrix
- GS1 DataMatrix Rectangular
- GS1 QR Code
- GS1 Digital Link Data Matrix
- GS1 Digital Link QR Code
- GS1 DotCode
Two-dimensional Symbols
- Aztec Code
- Compact Aztec Code
- Aztec Runes
- Data Matrix
- Data Matrix Rectangular
- Data Matrix Rectangular Extension
- DotCode
- Han Xin Code
- PDF417
- Compact PDF417
- MicroPDF417
- QR Code
- Micro QR Code
- Rectangular Micro QR Code
- Swiss QR Code
- EPC QR Code
One-dimensional Symbols
Postal Symbols
- Australia Post
- Canada Post PostBar
- CEPNet
- DPD Parcel Label
- Deutsche Post Identcode
- Deutsche Post Leitcode
- Japan Post
- Korea Post
- MaxiCode
- UPS MaxiCode
- Royal Mail
- Royal Mail Mailmark
- Royal Mail Mailmark 4-state
- Royal TNT Post
- UPU S10
- USPS Intelligent Mail
- USPS POSTNET
- USPS PLANET
- USPS FIM symbols
Pharmaceutical Symbols
- Italian Pharmacode
- Pharmacode
- Two-track Pharmacode
- PZN
- PPN-Code
- HIBC Code 39
- HIBC Code 128
- HIBC PDF417
- HIBC MicroPDF417
- HIBC QR Code
- HIBC Data Matrix
- HIBC Data Matrix Rectangular
- HIBC Codablock F
- HIBC Aztec Code
Less-used Symbols
- BC412
- Channel Code
- Codabar
- Codablock F
- Codablock A
- Code 11
- Code 16K
- Code 25
- Ultracode
- IATA 2 of 5
- Marks & Spencer
- Matrix 2 of 5
- Datalogic 2 of 5
- COOP 2 of 5
- Code 49
- Code One
- Grid Matrix
- Datastrip 2D
- MSI Plessey
- Plessey
- Anker Code
- PosiCode
- Telepen
- Telepen Numeric
- Kodak Patch Codes
- VIN
- LOGMARS
- DX Film Edge
- Aztec Mesas
GS1 Composite Symbols
- EAN-13 Composite
- EAN-8 Composite
- UPC-A Composite
- UPC-E Composite
- GS1 DataBar Omnidirectional Composite
- GS1 DataBar Stacked Omnidirectional Composite
- GS1 DataBar Expanded Composite
- GS1 DataBar Expanded Stacked Composite
- GS1 DataBar Truncated Composite
- GS1 DataBar Stacked Composite
- GS1 DataBar Limited Composite
- GS1-128 Composite
Raw Symbols
Partial Symbols