blog · 2026-07-31 · written for: VC-1 — the enterprise CPG brand-owner supply-chain org (the VP / Senior Director of Supply-Chain Traceability — the seat that decides the mark)

QR or GS1 DataMatrix? One question decides it: who scans

One thesis: choosing between QR and GS1 DataMatrix is not a technical preference — it is a decision about who you want to be able to read your mark, and it belongs to you as the GTIN owner, not to Sunrise and not to your converter. Once the question is restated as who scans, the decision table is short and the answer is usually obvious per category.

You run the program office. The symbology decision, the payload-form decision, and the which-AIs decision are made at your desk and merely executed downstream by converters and co-packers. Sunrise 2027 sets the reading-side clock — retail POS expected to scan and process 2D by end of December 2027 — but it mandates nothing about your pack. Here is the decision, decomposed.

The one distinction that decides most cases

Modern retail lane imagers and professional handhelds decode both symbologies. Native phone camera apps do not: a consumer's phone reliably decodes QR; it does not reliably decode GS1 DataMatrix. DataMatrix is the lane and pharma symbology. QR is the consumer-reachable one. Conflating them is the easiest error to catch in any vendor deck, and the most expensive one to discover after an artwork cycle.

So the question who scans this mark? produces the table:

Who scansWinnerWhy
POS lane onlyGS1 DataMatrix or QRboth clear a 2D-capable lane; DataMatrix is smaller at equal data
Consumers' phonesQR carrying a Digital Link URIthe only combination a native camera app resolves
Pharma / DSCSAGS1 DataMatrixthe regulated ecosystem standardized on it — the scanner population is professional
Case / pallet logisticsGS1-128, ITF-14logistics labels remain 1D territory; 2D is an item-level decision

The pharma row is the instructive precedent: DSCSA put a serialized GS1 DataMatrix on every US prescription-drug package, and that ecosystem chose DataMatrix precisely because no consumer was ever the audience — every scanner in the chain is professional. Retail food and beverage faces the opposite audience mix, which is why the same reasoning lands on QR wherever the consumer option matters.

One more distinction rides inside the symbology choice: payload form. A symbol can carry the AI map as an FNC1 element string or as a Digital Link URI. Only the URI form resolves in a browser; element strings clear the lane but are web-mute. Consumer-reachable means QR × Digital Link URI — both choices, together, and both are yours.

Two renders, one identity

Here is the fact that takes the anxiety out of the decision: the symbology carries your data; it does not change your data. generate renders the same GTIN and AIs as either symbol:

$ barcoding generate --gtin 00036000291452 --ai 10=L23085 --ai 17=270901 \
    --form digital-link --symbol qr        > mark-consumer.svg
$ barcoding generate --gtin 00036000291452 --ai 10=L23085 --ai 17=270901 \
    --form element-string --symbol datamatrix > mark-lane.svg

Two files, two audiences. Feed both back through the resolver and the round trip closes:

$ barcoding resolve < mark-consumer.svg  → id 00036000291452, ai {10, 17}
$ barcoding resolve < mark-lane.svg      → id 00036000291452, ai {10, 17}

Identical canonical identity, identical AI map, from both renders — resolve(generate(x)) === x is the round-trip law the tooling enforces. The identity layer is symbology-independent, which means the decision is reversible at the next artwork cycle and can even differ by channel: DataMatrix on the pharmacy SKU, QR on the retail SKU, one GTIN registry underneath. Everything here runs pure and local — no account, no network — because the write side of the GS1 system is royalty-free under GS1's IP policy. Render your own marks before any vendor meeting; the payload grammar is documented at /schemes/dl.

What this does and does not settle

Settled by this table: which symbol, which payload form, which audiences can read it. Not settled: which AIs you encode (lot and expiry are your optional choice — Sunrise's baseline is GTIN extraction at POS, nothing more), your retailers' specific lane capabilities on their refresh schedules, and print-quality grading at your converters — a DataMatrix at case-grade print tolerance and a QR at consumer size are different production conversations.

And one decision hides behind the table's second row: if you choose the consumer-reachable combination, you have created a mark that can carry a first-party address — which turns a compliance artifact into a brand asset and changes which budget the program belongs to. That argument belongs to your brand organization as much as to yours, and it is made in full on the family's executive brief for the seat you share the decision with: the enterprise brand-owner's Sunrise read.

The compressed version of this post is one sentence, and it is the sentence to open your next symbology meeting with: the lane can read either; only QR reaches a phone; pharma proves DataMatrix where scanners are professional — so tell me who scans, and the symbology picks itself.

Keys open the network half of the verb set. Get an API key — say what arrives at your door, and the provisioning order follows the list.

We answer in writing. We take at most five conversations a month, only when you ask for one, and only after you already have the written read.