GS1-128 Generator

Generate GS1-128 barcodes in your browser with live preview, validation, and PNG/SVG export.

Advanced options
Enter a value to see a live preview.
Options

These map directly to real generator options; anything not listed here is available under Advanced options above.

What GS1-128 is

GS1-128 is Code 128 carrying GS1 Application Identifiers (AIs) such as GTIN, batch/lot, dates, and SSCC, wrapped in parentheses in human-readable text.

Generate it now

Enter your AI data, e.g. (01)09521234543213(3103)000123, for a live GS1-128 preview.

Valid input

Input uses GS1 Application Identifier syntax; bwip-js interprets AI structure and inserts FNC1/computes the underlying Code 128 checksum automatically, regardless of the parse option's value.

Key options

Supported options include includetext and height. parse is also accepted, but it does not control GS1 AI structure interpretation -- that always happens, as above. parse instead controls whether bwip-js decodes its own caret-escape syntax (e.g. ^048 for a raw byte value) inside an AI's value before that value is validated; an ordinary AI value with no such escape text renders identically whether parse is set or not.

Output and printing

Export SVG for logistics labels; keep a clear quiet zone for warehouse and carrier scanning equipment.

Common uses

GS1-128 carries logistics data -- GTIN, lot, date, SSCC -- on shipping and traceability labels across supply chains.

Example

The seeded example, "(01)09521234543213(3103)000123", combines fixed-length AI(01) (GTIN) with fixed-length AI(3103) (net weight in kilograms to three decimal places). No separator is needed between these two fixed-length fields; bwip-js adds separators only where GS1 variable-length field rules require them.

Size guidance

GS1-128 follows Code 128's quiet-zone requirements and GS1's logistics label placement guidance.

Troubleshooting

Malformed AI syntax (missing parentheses or wrong field lengths) is the most common input error; use the GS1 AI format shown in the example.

Related formats

Related formats: GS1 DataMatrix, GS1 QR Code, and SSCC-18.

FAQ

Do I need to type the FNC1 start character?

No -- bwip-js inserts the required FNC1 automatically and unconditionally for GS1-128.