GS1-128 barcode generator
Write each Application Identifier in brackets followed by its data, for example (01) for the GTIN and (10) for the lot. The AIs are checked and the barcode is drawn as you type.
Application Identifiers in brackets, each followed by its data.
105.6 × 36.4 mm printed size, module 0.4 mm.Encodes (01)09501101530003(17)271231(10)AB12
Need many? Make a batch or a label sheet.
Size and colour
What is GS1-128?
GS1-128 is Code 128 used to carry GS1 data: several fields in one barcode, each one introduced by an Application Identifier (AI), a short number that says what the field is, such as a GTIN, a lot, an expiry date or a serial number.
You type the AIs in brackets so they are easy to read; the brackets are not encoded. The encoder adds the separators that a scanner needs between fields of variable length, and it checks the length and format of each AI.
Where it is used
- Logistics and pallet labels, including the SSCC
- Cases that need a lot number or an expiry date
- Labels exchanged between suppliers and distributors
What it holds
| GS1-128 | |
|---|---|
| Data | One or more AI fields, written as (AI)data |
| GTIN in (01) or (02) | Its check digit is checked here |
| Dates | YYMMDD, for example (17)271231 |
| Check character | Always present, as in every Code 128 |
Printing GS1-128 barcodes
- Put fixed-length fields such as (01) and (17) before variable ones such as (10) or (21): it keeps the barcode shorter.
- Check what each AI means and its format in the GS1 list before printing.
- 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 GS1-128 barcodes at once and lays them out on Letter or A4 label sheets.
Where the numbers come from
A GS1-128 barcode is only as good as the number in it. For products sold through retailers, the number is a GTIN built from a GS1 Company Prefix that the brand owner licenses from its local GS1 office, and retailers check numbers against GS1 records. The guide from GS1 New Zealand linked below walks through that process as one example.
This site draws barcodes for numbers you already have. It does not issue, sell or register GS1 numbers, and a correct check digit does not mean a number is registered.
Questions about GS1-128
Which Application Identifiers can I use?
Any AI from the GS1 list. The common ones are (00) SSCC, (01) GTIN, (10) batch or lot, (11) production date, (15) best before, (17) expiry date and (21) serial number. The encoder checks the length and format of every AI it knows.
Do I type the brackets?
Yes, here you write the AIs in round brackets. They are shown in the text under the barcode but are not encoded in the bars.
Should I use GS1-128 or GS1 Data Matrix?
Both carry the same AI data. GS1-128 is linear and read by almost every logistics scanner; GS1 Data Matrix is much smaller but needs a camera-based (2D) scanner.
Sources
- GS1: Application Identifiers
What each AI means and the format of its data, as used in GS1-128 and GS1 Data Matrix.
- GS1: How to calculate a check digit manually
The mod 10 method (weights 3 and 1) for GTIN, GLN and SSCC check digits, with a worked example.
- bwip-js
The open-source library that draws the barcodes on this site (MIT licence).
Other formats
- Data MatrixSmall parts, electronics and healthcare packs.
- ITF-14Cartons and cases of products.
- Code 128Warehouse, shipping and inventory labels.
- EAN-13Retail products sold around the world.
- UPC-ARetail products in the US and Canada.
- Code 39Badges, parts and older industrial systems.
- QR CodeLinks and text for phones to scan.