Skip to content
UDImakerOpen editor

Code 128 vs GS1-128: Why They Are Not Interchangeable

Compare Code 128 with GS1-128 using internal inventory and logistics examples, including FNC1, AIs, and UDImaker support.

GS1-128 uses the Code 128 symbology with a GS1 start convention and structured GS1 data. Plain Code 128 can carry an internal reference without giving that reference a GS1-defined meaning. Similar bars do not make the two workflows interchangeable.

Begin with what the receiving system expects

Imagine an internal warehouse location DEMO-A03-B02-L01. If the warehouse application expects that exact reference, a plain Code 128 is a suitable example to test.

A trading partner asking for a GS1 logistic label expects a particular structure and assigned identification data. An SSCC, for example, belongs to its defined GS1 element under AI (00). Passing a long numeric string through a plain Code 128 field does not establish those conventions.

Understand the role of FNC1

GS1-128 places FNC1 immediately after the start character to identify the GS1 use of Code 128. Application Identifiers describe the following fields, and separators are needed where the GS1 element-string rules require them.

Parentheses in the readable text are not a replacement for that start convention. A label caption such as (00), or a title that says GS1, cannot change the encoded symbol.

Also distinguish the barcode's internal symbol check character from a GS1 identifier's check digit. A Code 128 encoder calculating its own symbol check character does not validate an assigned GTIN or SSCC.

Test an internal Code 128 example

  1. Open the Code 128 generator.
  2. Enter DEMO-A03-B02-L01 without an added prefix or suffix.
  3. Enable readable text and keep clear space around the bars.
  4. Export the design with a verified account.
  5. Decode the image and confirm an exact match.
  6. Print and test with the warehouse application and intended scanner.

If the application cannot find the location, check that its master record exists. The barcode carries the reference; it does not create the warehouse record.

Respect the supported workflow

UDImaker generates plain Code 128, GS1 DataMatrix, and QR Code. Native GS1-128 and SSCC generation are not currently supported. Use a suitable approved source for required GS1-128 artwork; if importing that artwork, preserve proportions, readable data, and quiet zones.

Do not switch from a required GS1-128 to GS1 DataMatrix merely because the latter is available. The recipient must support and accept the carrier. The warehouse label guide separates internal locations, GS1 logistics labels, and carrier-issued shipping labels.

Sources and technical review

Relevant primary references are listed below. These guides explain the design workflow; confirm current sector requirements and local regulations before production use.