Types of GS1 Barcodes

Barcode 101: Guide to Types of GS1 Barcodes

A barcode symbol is a machine-readable image that conveys data. They are essential to supply chains since they are the means through which scanners decode and record the data associated with a barcode number or GTIN .Barcodes can be divided into three general types: linear, stacked linear, and two-dimensional (2D). There are well over 50 different types of barcode languages that have strengths ideal for different applications. In the retail and medical industries, GS1-based barcodes are the most popular.


UPC barcodes, which are instantly recognizable, are printed on almost all consumer goods in the globe. UPC-A is strictly numeric; the bars can only represent the digits from 0 to 9. A UPC-A barcode contains 12 digits, along with a quiet (blank) zone on either side, and start, middle, and stop symbols. The middle symbol separates the left side and the right side, which are coded differently. When a digit is used on the left side, the bars are black and the spaces are white, and when it is used on the right side, the colors are reversed. The logic behind this is a little complex and involves a mathematical property called “parity,” but the effect is to reverse the black and white which allows the scanner to tell whether it’s reading the code from left to right or from right to left.

Below is a list of common UPC-A applications:

  • Typical retail products: Indicated by a first digit of 0, 1, 6, 7, or 8. Depending on the prefix, the five remaining digits on the left side of the barcode can identify the manufacturer. The five digits on the right are the product code (determined by the manufacturer).
  • Pharmaceuticals: For drugs and some other pharmaceutical products. The 10 digits that follow form the NDC (National Drug Code) number, which identifies the manufacturer (distributor/packager), the product (along with information such as dose, strength, and formula), and the size as well as other characteristics of the package.
  • Weight-based pricing: When products such as produce and meat are packaged and sold by weight, the UPC label begins with the number system code 2. The five digits that follow it on the left identify the item and the ones that follow are for the product weight or price.
  • Coupons (no longer applicable): The numbering system digits 5 and 9 were for coupons. As with retail products, the five left-hand digits are the manufacturer identification. The five digits on the right tell what products the coupon applies to and the discount. Today's coupons are now represented in a GS1 Databar Omnidirectional barcode.
  • Reserved: Number system 4 is reserved for use by individual retailers or wholesalers, and is often used for store coupons, customer loyalty cards, and similar items.


The UPC-E barcode can be used when available space is too small for a UPC-A barcode. It contains the same information as a UPC-A label, but it uses some tricks to reduce the number of digits to six. In the 1980-1990's, some of the early UPC adopters were able to obtain a Company Prefix which allowed for "zero suppression". This essentially meant that their prefixes ended in a series of zeroes and could be suppressed using a designated formula. Today, this option is not available to companies new to UPC barcoding.


The UPC-E code’s most basic trick is to remove trailing zeroes in the manufacturer’s code and leading zeroes in the product code. The details of the technique are complicated and it doesn’t work for everything. However, it does cover all codes with a total of 5 leading/trailing zeroes, as well as a significant number of codes with four zeroes.

The UPC-E uses a much more complex trick to compress the checksum and the number system code. A side-effect of this technique is that the only numbering system codes allowed are 0 and 1.


The EAN-13 code is basically an international version of the UPC-A. EAN-13 adds a 13th digit on the far left side of the UPC-A code (which becomes the first digit). The EAN-13 standard includes UPC-A barcodes, adding a leading 0 to a UPC-A code turns it into the equivalent EAN-13 code.


The GS1 prefix is issued by GS1, the international barcode standards organization. The prefix may identify the national GS1 member organization or special use. The member organizations issue the manufacturer’s codes and the manufacturers set their own product codes. The complete EAN-13 barcode number, consisting of the GS1 prefix (manufacturer’s code), the product code, and the checksum digit, is also known as the GTIN (Global Trade Item Number). Besides the national GS1 prefixes, typically used for standard retail items, there are prefixes for specialized purposes, such as coupons, refunds, serial publications (magazines and newspapers), books (ISBN), and sheet music (ISMN).


In the United States, price code scanners and point-of-sale/inventory systems are typically capable of reading both UPC-A and EAN-13 barcodes.


EAN-8 is a GS1 barcode for use on small items when a full EAN-13 barcode would be too large to fit. It consists of eight digits — four on the left side and four on the right. They use the same kind of encoding as UPC-A and EAN-13, with the last digit being used as a checksum.



The UPC and EAN barcodes described above encode only numbers, but Code 128 is a linear barcode that encodes both letters of the alphabet and numbers, making it useful for a variety of purposes beyond basic pricing and inventory.
Code 128 encodes the 128-character ASCII set, which includes all of the alphabetic, numeric, punctuation, and arithmetic characters found on an English-language computer keyboard, plus several non-visible control characters.
In order to include all of the ASCII characters, Code 128 uses three different character sets. Code B is similar to Code A, but replaces most of the control characters with the full set of lower-case letters, plus some added punctuation.

The basic Code 128 barcode format consists of a start code (which sets the initial character set to A, B, or C), the code data, a checksum digit, and a stop code, which marks the end of the barcode. As with other linear barcodes, there are blank quiet zones on either side.
GS1-128 (also known as UCC-128 and EAN-128) is an international standard for using Code 128 in supply-chain barcode labels. GS1-128 consists of the basic Code 128 format with an Application Identifier added to the code data.


Application Identifiers are 2 to 4 characters in length and identify the type of data that will follow — typically, standard supply-chain applications, such as serial number, number of containers, lot number, weight, volume, etc., including tracing and transaction information. Each identifier sets the length and format of the data that follows it.

Since most application code data is fixed-length, it is possible to include several codes in one GS1-128 barcode, simply by adding new Application Identifiers and code data.


Interleaved 2 of 5

Interleaved 2 of 5 (ITF) is a variable-length numbers-only linear barcode. It encodes digits in pairs, with the first digit in each pair represented by bars and the second digit represented by spaces, so that they are interleaved. Two of the five bars or spaces representing each digit are wide and the others are narrow.


Used to barcode product packagings like cases or cartons. It lends itself well to being printed directly onto low-quality material like cardboard, and it encodes the Global Trade Item Number (GTIN).


Databar is a GS1 family of barcode standards generally intended for reduced space applications. They encode GTIN-12 (UPC-A) and GTIN-13 (EAN-13) data in a 14-digit format (with added leading zeroes). Linear barcodes in the Databar family include Omnidirectional and Expanded codes (both can be scanned omnidirectionally) as well as Truncated and Limited codes, which are designed to be read by handheld scanners only.


Omnidirectional and Expanded Databar codes are used in point-of-sale applications, like UPC-A and EAN-13. Expanded codes can include additional information such as weight and expiration date, designated using Application Identifiers in the manner of GS1-128 barcodes.

Truncated and Limited Databar barcodes are generally used in the healthcare industry for small-item identification.


Stacked Barcodes

Stacked barcodes are linear barcodes which are divided into segments and placed one above the other.


Databar Stacked

The stacked versions of the GS1 Databar codes use the same basic encoding as the linear Databar codes, described above, and are used in similar applications. They are particularly useful for limited-space items with labels which have very narrow linear dimensions.


The GS1 Expanded Stacked Databar can stack a series of barcodes containing product data in addition to the basic point-of-sale EAN-13 price code.

2D Matrix

Unlike stacked barcodes, true 2D matrix codes represent data in a two-dimensional array, like squares on a chessboard. This allows them to pack a large amount of data into a compact space and to represent a much larger character set. These codes must be read with an imaging scanner, rather than a laser scanner.

GS1 DataMatrix

A two-dimensional (2D) barcode, which can hold lots of data in a small symbol. It is primarily used for healthcare applications including, barcoding patient wristbands, marking medical devices and pharmaceuticals, and tracking assets. Image-based scanners are needed to scan the GS1 Data Matrix.


QR Code

The QR (Quick Response) Code format was originally designed for use in the Japanese automobile industry to keep track of parts and cars on the assembly line. Because of its versatility, it has become widely used in a variety of industrial and consumer-oriented applications.


GS1 Digital Link

GS1 is working on an initiative called, the Digital Link, to replace UPC/EAN barcodes with a 2D barcode that can be read by POS scanners and consumers. In essence, the Digital Link format enables a single 2D barcode to act as both a consumer-facing web-based URL and a point-of-sale to improve the customer experience. Consumers today scan things with their mobile phones to study what they want to buy or to learn more about an item they have already purchased. Mobile scans from UPC barcodes are generally imprecise and inaccurate due to a lack of standards and control. To accommodate shoppers' desire for more information, several manufacturers have begun to include QR codes on packages, which link consumers to additional product information. Although these barcodes link consumers to brand-curated content, they take up valuable "real estate" on packaging and labels. Furthermore, the additional barcodes cause difficulty while scanning at POS checkout counters.