GS1-128 barcode generator
A GS1-128 barcode carries several labelled facts in one line of bars, such as a product number, an expiry date and a batch. Opo Codes has a builder that checks each field, draws the code free in your browser, and reads it back before you print. It encodes the numbers you supply and does not issue official GS1 numbers.
Open the generatorFree. Runs in your browser.
How to do it
- Open the generator with GS1-128 already selected.
- Use Build the data to pick items such as product number, expiry date and batch, and fill each one.
- Fix any field the builder flags, then press Use in the barcode.
- Check the scan stamp, choose PNG, JPG, SVG or PDF, then download.
What an application identifier string looks like
Each fact starts with an application identifier, or AI, a short number in brackets that says what follows. AI 01 is the product number (GTIN-14), AI 17 is the expiry date as YYMMDD, and AI 10 is the batch or lot, up to 20 characters.
Worked example: (01)09501101530003(17)271231(10)LOT42. The product number 09501101530003 ends in check digit 3, from the first 13 digits 0950110153000: positions 1, 3, 5, 7, 9, 11, 13 hold 0, 5, 1, 0, 5, 0, 0 and add up to 11, times 3 is 33; positions 2, 4, 6, 8, 10, 12 hold 9, 0, 1, 1, 3, 0 and add up to 14; the total is 47 and the next multiple of 10 is 50, so the check digit is 3. The date 271231 is 31 December 2027, and the batch is LOT42.
Order and what the builder checks
Fixed-length items go first and variable-length items last, because a variable item needs a separator after it. The builder puts the batch at the end so the code stays short and safe. The brackets are for reading and are not drawn as bars. At the default 0.33 mm bar width this example is about 91 mm wide including quiet zones.
The builder checks the product number check digit, that dates are real, and the length limits. A wrong check digit is refused as a bad checksum, and a batch over 20 characters is refused as too long. The builder offers product number, batch, production date, expiry date, serial number, net weight, item count and the pallet number SSCC.
Honest limits
This tool encodes the numbers you give it. It does not issue official GS1 numbers, and it does not check the number belongs to you. A product number used with buyers has to come from GS1 membership. The made-up numbers above are for testing a layout.
The scan check reads the code back and compares the data, ignoring brackets and separators. Test one printed label with your buyer's scanner, because some buyers set their own rules for which items they want.
Questions
What is the difference between GS1-128 and Code 128?
Code 128 holds free text. GS1-128 holds labelled items with fixed rules for each, so a buyer's system can read the product number, date and batch separately.
Do I type the brackets?
Yes, write each identifier in brackets, like (01). They are not printed as bars. The builder writes them for you.
Why is my batch refused?
A batch is at most 20 characters, from letters, digits and basic symbols, with no spaces or brackets.
Can I make a pallet label?
The builder offers the pallet number SSCC as an item, and the picker also has an SSCC-18 type.