addaScan home
Assessment
Barcode basics // Chapter 5 of 5

QR codes on packaging: what a line can check

By Frank GuoTechnical review: Frank GuoPublished Updated 8 min read

// In short

A QR code on packaging is either a plain QR code that opens a web page, or a QR code with a GS1 Digital Link URI that carries the GTIN and other GS1 data inside a web address, so the same code can be scanned by a phone and, as retailers adopt 2D, at the till. On the line, a code reader checks that every pack carries a readable QR code with the right content, including any batch or date inside it; it does not test the web page or grade print quality.

// Key takeaways

  • A GS1 Digital Link QR code carries GS1 data such as the GTIN, batch and expiry inside a web address.
  • GS1 supports industry’s ambition to read 2D barcodes at retail points of sale by the end of 2027; until then the linear barcode stays.
  • On retail items GS1 sets a module size of 0.396 to 0.990 mm and a quiet zone of 4 modules on every side.
  • A line check proves presence, readability and content against the expected link, GTIN, batch and date.
  • Whether the web page opens and shows the right content is an IT check, not a camera check.

What is the difference between a plain QR code and a GS1 Digital Link QR code?

A plain QR code holds a web address and is typically scanned by consumers to reach product information. A QR code with a GS1 Digital Link URI holds a web address built from GS1 identifiers: the path carries the AI number as a qualifier, such as /01/ before the 14-digit GTIN or /10/ before a batch, and further GS1 data goes in the query string (GS1 General Specifications, 1.2.4.4 and 5.1.1). Scanning software can extract the GS1 data without going online, or open the linked content (GS1 Digital Link). GS1 South Africa describes GS1 QR codes as designed to be read by scanners and smartphones, representing a URL and a GTIN (GS1 South Africa, barcode types).

Three kinds of QR code found on packaging
Kind of QR codeWhat is insideWho can use the dataTypical use
Plain QR codeAny web address or textPhones open the link; tills cannot use itMarketing, recipes, competitions
QR code with a GS1 Digital Link URIA web address whose path carries GS1 identifiers such as /01/ and a GTINPhones open the link; GS1-aware scanners extract the GTIN, batch and datesOne code for consumers and, in future, the till
GS1 QR CodeGS1 element strings after an FNC1, like GS1 DataMatrixGS1-aware scanners and systemsSupply chain and industrial use

How is the code built, and how big must it be?

A QR code has three square finder patterns in its corners, timing patterns of alternating modules between them, and a data area. It comes in 40 versions, from 21 × 21 to 177 × 177 modules, and needs a quiet zone four modules wide all round. Four levels of Reed-Solomon error correction, L, M, Q and H, recover about 7, 15, 25 and 30 % of the codewords; GS1 does not support Micro QR (GS1 General Specifications, 5.7.2 and 5.7.4).

[Schematic]QR code with GS1 Digital Link · illustration, not a readable code

Swipe sideways to see the whole drawing →

Anatomy of a QR code with a GS1 Digital Link URIA 25 by 25 module QR code drawn as an illustration, not a readable code. Three square finder patterns sit in three corners, joined by alternating timing patterns, with a quiet zone four modules wide all round. On the right, an example GS1 Digital Link URI is broken into its parts: the brand owner domain, the qualifier 01 followed by the 14-digit GTIN, the qualifier 10 followed by the batch, and a query string carrying the expiry date with AI 17.[1] FINDERS ×3 [2] TIMING [3] QUIET ZONE 4XGS1 DIGITAL LINK URI (EXAMPLE)https://brand.example.com/01/09506000134369/10/L2610A?17=271130brand.example.comBRAND OWNER’S DOMAIN/01/09506000134369AI 01: GTIN (14 DIGITS)/10/L2610AAI 10: BATCH (IN THE PATH)?17=271130AI 17: EXPIRY 2027-11-30 (QUERY)LINE CHECK: DOMAIN + GTIN + BATCH + DATE = RUN DATAILLUSTRATION ONLY · NOT A READABLE CODE
[1]: Three finder patterns locate the code and its orientation
[2]: Timing patterns set the grid
[3]: Quiet zone: 4 modules clear on every side
URI: Domain, then GS1 qualifiers and values
QR code specifications in the GS1 General Specifications, Release 26.0
PropertyGS1 valuePractical effect on the pack
Module size on retail items (table 1, addendum 2)Minimum 0.396 mm, target 0.495 mm, maximum 0.990 mmPrinted at 1.5 times the linear X-dimension, because a camera must resolve each module
Quiet Zone4 modules on all four sidesFour times the clear margin a Data Matrix needs
Minimum print quality1.5/12/660Graded to ISO/IEC 15415
Symbol sizesVersions 1 to 40: 21 × 21 to 177 × 177 modulesA longer web address needs a higher version, so a bigger code
Error correctionLevels L, M, Q, H recover about 7, 15, 25 and 30 % of codewordsHigher levels survive more damage but need a bigger symbol
Digital Link syntaxUncompressed form required on retail itemsThe URI is readable as text, at the cost of more characters
Placement next to the linear barcodeWhole 2D symbol, quiet zone included, within 50 mm of the linear barcode centreThe till can tell both codes belong to one item

The web address takes most of the space. A longer domain, a longer batch or a higher error correction level all push the code to a higher version, so a bigger print area. Agreeing the domain and the module size with the printer before the artwork is fixed avoids a code that fits on paper but not on the coder.

Why is retail moving to 2D codes, and what does it mean in South Africa?

GS1 describes the aim as a single multipurpose 2D barcode per product that can be scanned at the point of sale and used to reach digital content (GS1 Digital Link). The GS1 General Specifications note that GS1 supports industry’s ambition to read 2D barcodes at retail points of sale around the world by the end of 2027 (GS1 General Specifications, 1.2.2.2.1). Both QR codes with a GS1 Digital Link URI and GS1 DataMatrix can carry the GTIN together with data such as an expiry date or a serial number (GS1, 2D barcodes).

In South Africa, GS1 South Africa promotes 2D in retail and lists batch or lot number, serial number and expiry date among the data the codes can carry. It reports that Woolworths and selected suppliers are using 2D barcodes with GS1 standards, with results including enhanced food safety and food waste reduced by up to 40 % (GS1 South Africa, 2D in retail). That figure is Woolworths’ and GS1 South Africa’s, not addaScan’s.

For a packaging line the change is practical: a code that used to be fixed artwork now changes with every batch or date. It has to be printed on the line by a coder, and checked on the line like a date code.

What can a line check on a QR code?

A fixed code reader or smart camera reads the QR code on every pack and compares the content with what the line should be printing: the GTIN and, where used, the batch or date inside the GS1 Digital Link URI, or the exact web address. A GS1 QR Code with element strings is reported with the symbology identifier ]Q3 (GS1 General Specifications, 5.1.3); a Digital Link QR is an ordinary QR code whose text the station parses. Missing, unreadable or wrong codes are rejected.

What a line check proves about a QR code on packaging
QuestionLine check?What it means
PresentYesThe code is on every pack
ReadableYesIt decodes at the line
Right contentYes, when the expected link or GTIN is knownThe URI or GTIN matches the product running
Right batch and date insideYes, when the run data is sent to the readerThe /10/ and date values match the printed code
Web page worksNoThe link opens and shows the right content: a separate IT check
Print gradeNoGrade to ISO/IEC 15415 with a verifier

A sensible check order: decode; confirm the URI starts with the brand owner’s agreed domain; extract the GTIN after /01/ and compare it with the product running; extract batch and date and compare them with the run data, and with the printed date read by OCR where both are on the pack. OCR/OCV and code inspection covers stations that check code and text together.

What goes wrong when QR codes are printed on the line?

Inkjet QR codes printed at speed can lose modules, smear on film or print too small for the reader. A QR code that changes per batch also needs the coder’s data source to be right at every changeover, the same discipline as a date code; why wrong expiry dates still leave the line covers that discipline.

QR code faults on packaging lines
FaultUsual causeWhat the reader seesFix
Lost or merged modulesInkjet at speed, worn print head, smear on filmNo-read, or a read that needs heavy error correctionLarger module, print head care, slower print
Quiet zone cutCode placed against a seam, edge or textNo-read at the till or on a phoneArtwork: 4 modules clear on every side
Wrong batch in the URICoder data source not updated at changeoverReads perfectlyExpected batch from the recipe, compared in the reader
Wrong domain or old campaign linkTemplate from a previous artwork or promotionReads perfectlyCompare the full URI prefix, not only the GTIN
Code too small for the dataLong URI squeezed into a fixed print areaSlow or failed readsShorter domain and path; agree the module size first

Frequently asked questions

Can the camera check that the QR code’s web page works?

No. The station checks the code on the pack: present, readable and carrying the expected content. Whether the address resolves and shows the right page is checked by the brand owner’s IT or marketing team, ideally before the run starts.

Do we still need the EAN-13 if we add a QR code?

Yes, for now. GS1 requires 2D barcodes on retail items to be in addition to the linear barcode during the transition. Your retailers and GS1 South Africa’s guidance decide when that changes for your products.

How much space does a QR code need on the pack?

The symbol plus a quiet zone of 4 modules on every side. On retail items GS1 sets a module size of 0.396 to 0.990 mm; the number of modules depends on the length of the web address and the error correction level.

What is the difference between GS1 QR Code and a Digital Link QR code?

A GS1 QR Code carries GS1 element strings after an FNC1, like a GS1 DataMatrix. A Digital Link QR code carries a web address whose path holds the GS1 identifiers, so a phone can open it and a GS1-aware scanner can extract the data.

Sources

  1. GS1 General Specifications, Release 26.0 (Jan 2026), GS1 South Africa copy: 1.2.2.2.1, 1.2.4.4, 5.1, 5.7, 5.12.3.1, 6.3.3.1 (standard, checked 2026-10-27)
  2. GS1 Digital Link (standards body page, checked 2026-10-03)
  3. GS1: 2D barcodes (standards body page, checked 2026-10-03)
  4. GS1 South Africa: 2D in retail (Woolworths statement) (standards body page, checked 2026-10-27)
  5. GS1 South Africa: barcode types (standards body page, checked 2026-10-27)
// Next step

Have a line in mind?

Describe the product and the fault you need to catch. We test on your samples and reply with a feasibility note and a budget.