Skip to main content
A GS1 Application Identifier (AI) is a short number, 2 to 4 digits, that says what the data after it means. (01) introduces a GTIN, (17) an expiry date, (10) a batch number. AIs let one barcode carry several pieces of data. They’re used in GS1-128, GS1 DataMatrix, GS1 QR Code, GS1 DataBar Expanded, and, written as part of a web address, in GS1 Digital Link.

Decode one

Scan or paste a barcode and see every part of it.

Make one

Generate a valid barcode from fields.

The most common AIs

How to read an AI

Fixed and variable length

Some AIs always have the same length: (01) is always followed by 14 digits, (17) by 6. Others vary: (10) can be 1 to 20 characters. When a variable-length field is followed by another field, the barcode ends it with a separator: the special character FNC1, which scanners send as GS (ASCII 29). The last field never needs one. The “Separator after it” column below says which AIs need it.

Decimal places in the last digit

For measures, prices and amounts, the AI’s fourth digit says where the decimal point goes. 3100 to 3105 are all net weight in kilograms: (3103)001250 is 1.250 kg, and (3102)001250 is 12.50 kg.

Dates

Dates are 6 digits, YYMMDD, with no century. GS1 defines how to work out the century from the current date. Some date AIs allow the day to be 00, meaning the end of the month.

Data titles

The data title is GS1’s short name for each AI, such as BATCH/LOT or USE BY or EXPIRY. Some labels print it next to the human-readable value.

All AIs

Generated from the GS1 Barcode Syntax Dictionary, release 2026-01-27. 224 entries.

0: Identification keys

1: Batch and dates

2: Variants, serial numbers and other identifiers

3: Measures, weights and counts

4: Locations, routing and shipping

7: Additional product and regulatory data

8: Additional identifiers, coupons and services

9: Company internal and mutually agreed

Reading AIs in your app

Don’t split GS1 data by position or by searching for AI digits: the same digits can appear inside a value. Use a parser that knows each AI’s length. ZipZapKit includes one: see GS1 Application Identifiers.

Specification