GS1 QR Code Validator

Paste a GS1 element string or Digital Link URL. We parse out the Application Identifiers, validate the GTIN check digit, and flag anything that doesn't match the spec.

Supported Application Identifiers
AINameFormat
(00) SSCC (Serial Shipping Container Code) 18 digits, fixed
(01) GTIN (Global Trade Item Number) 14 digits, fixed, check digit
(02) GTIN of contained trade items 14 digits, fixed
(10) Batch / Lot number alphanumeric, up to 20
(11) Production date YYMMDD
(13) Packaging date YYMMDD
(15) Best before date YYMMDD
(17) Expiration date YYMMDD
(20) Internal product variant 2 digits
(21) Serial number alphanumeric, up to 20
(30) Variable count of items 1-8 digits
(240) Additional product identification alphanumeric, up to 30
(310x) Net weight, kg (x = decimals) 6 digits
(400) Customer purchase order number alphanumeric, up to 30
(8200) Extended product URL alphanumeric, up to 70

Other GS1 AIs are recognized but reported as "Unsupported AI (XXXX)" with raw value.

GS1 QR codes, explained

GS1 is the standards body behind the barcodes on every consumer product. A GS1 QR code encodes supply-chain data using Application Identifiers (AIs): short numeric prefixes that label each value. (01) is a GTIN (the product identifier), (10) is a batch number, (17) is an expiration date, (21) is a serial. This validator handles the 15 most common AIs.

Element string vs Digital Link

Two encodings are common. The classic GS1 element string is written as (01)09521101530001(10)ABC123(17)260301(21)XYZ987 for humans, with an FNC1 separator (0x1D) used in the machine-readable form. This is what GS1-128 barcodes and traditional GS1 QR codes carry.

The newer GS1 Digital Link puts the data inside a real URL: https://id.gs1.org/01/09521101530001/21/XYZ987?17=260301. A phone scan opens a web page; a supply-chain scanner pulls the AI data out of the URL. Same QR, two audiences.

Who uses GS1 QR codes

In healthcare, DSCSA-compliant prescription drugs in the U.S. require GTIN, batch, expiry, and serial number on every saleable unit. In retail, GS1's Sunrise 2027 initiative is transitioning consumer products from barcodes to QR codes (which means every checkout scanner needs to read both formats). In manufacturing and logistics, SSCC pallet IDs and batch numbers track inventory through warehouses.

Why check-digit validation matters

A GTIN-14 has a check digit calculated from the preceding 13 digits using a modulo-10 algorithm with alternating weights of 3 and 1. It catches the things humans get wrong: data-entry typos, OCR misreads, corrupted scans. A single transposed digit fails the check.

Frequently Asked Questions

What is a GS1 QR code?
A QR with supply-chain data inside, labeled by GS1 Application Identifiers: GTIN, batch, expiry, serial, and so on.
What's an Application Identifier?
A 2 to 4 digit prefix telling the scanner what kind of data follows. GS1 defines around 400 of them.
What is GS1 Digital Link?
A newer GS1 encoding that puts the AI data inside a real URL. Phones get a web page, supply-chain scanners get the data.
Why validate the GTIN check digit?
It catches the typos, OCR misreads, and corrupted scans. A failing check digit means the GTIN is wrong.
Who uses GS1 QR codes?
Healthcare (DSCSA), retail (Sunrise 2027), manufacturing, logistics, and consumer brands.
How many AIs does this tool support?
The 15 most common, with names and validation. Others show up as "Unsupported AI (XXXX)" with their raw value.