GS1-128 is based on Code 128 and uses a special function character (FNC1) so that the data is read as GS1 Application Identifier data. It was previously known as UCC/EAN-128. Because it can carry variable data, it is common on logistics labels, where the same product number is combined with a batch, expiry date or serial number.

Why it matters for labeling

Case and shipper labels often carry a GS1-128 that has to match the product and the packs inside. An outdated barcode on a reprinted case label, or one that encodes a different batch or date than the text beside it, can lead to rejected deliveries in retail or a mismatch in healthcare supply chains.

Common mistakes

  • A wrong Application Identifier or a missing separator
  • A batch or date format that doesn't match the human-readable text
  • A case label that wasn't updated when the unit label changed
  • Reusing an old file for a reprint

Sources