Behind the wrapper
How the codes on our wrappers work
Every Creative Madness bar carries two kinds of code. One is for marketing and can change whenever we like. The other identifies the exact bar in your hand, down to its lot and best-before date. Here is what each one does, and why a small chocolate maker would bother.
The short version
- The barcode on the back is the one the till reads. It holds the bar's GTIN, a 13-digit product number, and nothing else.
- The marketing code on the front opens a page about the growers today. Next month it might open a recipe. The printed code never changes; where it points does.
- The product code is a GS1 Digital Link. It carries the same GTIN as the barcode, plus the lot number and best-before date, and it opens a page for that lot.
- The holiday code on our gift boxes switches pages on a schedule, so the same box shows gift ideas in December and the New Year box in January.
A code you can change after printing
Wrappers are printed months ahead. If the code on them pointed straight at a web page, we would be stuck with that page until the next print run. Instead the code points at a short link we control, and the short link forwards to the page. When we want the wrapper to say something new, we change the forward. Nobody reprints anything.
That is what people mean by a dynamic QR code. On the demo wrapper, the code first opens Meet our growers. Partway through the season we switch it to the hot chocolate recipe, and the same printed wrapper opens the new page. Scan counts per code tell us which pages people actually open, so we stop guessing what to put on the next wrapper.
For a packaged goods brand this is the cheapest marketing space it owns. The wrapper is already in the shopper's hand. QR codes for consumer packaged goods covers more ways brands use that space.
A code that knows which bar you are holding
The second code follows a global standard called GS1 Digital Link. It looks like any other QR code, but the link inside it is built from GS1 identifiers: the GTIN that identifies the product, and optional extras such as the lot number and the best-before date. A web page can read those values straight from the link.
That is why each lot of our bars opens its own page. Scan a Dark 72% bar from lot D2610A and you land on the 2026 harvest page, with that lot's best-before date. Scan a Sea Salt Caramel bar that is close to its date and you get an eat-it-soon page instead. A bar from last winter tells you its best-before has passed and points you to this season's bar.
For a small maker this does three useful things:
- Shoppers get information about the bar in their hand, not a generic product page.
- If a lot ever has a problem, its page can say so right away, while the other lots stay as they are.
- The link uses our own web address, so the code always opens on a domain that shoppers recognise as ours.
If the standard is new to you, this plain explanation of GS1 Digital Link is a good place to start.
Why the barcode stays for now
Retailers are moving their tills to read 2D codes like these alongside the familiar barcode. The industry name for that move is Sunrise 2027: the target for retail scanners to accept 2D codes that carry a GTIN. Until every till can, packs carry both. The barcode keeps checkout working today; the GS1 code is ready for the till of tomorrow and is already useful to shoppers with a phone.
The useful part for a brand is that nothing about the product number changes. The same GTIN sits in both codes. What the 2D code adds is room for the lot and the date, and a link to a page. The Sunrise 2027 guide explains the timeline and what retailers expect.
A code that runs on a schedule
Our holiday gift box has one more trick. Its code opens the holiday gifts page from mid-November to Christmas Eve, then the New Year box until early January. The switch happens on its own, at midnight in the factory's time zone. We set it once in October and stop thinking about it.
What this demo is, and is not
Creative Madness Chocolate Co. is made up. There is no factory, no shop and nothing to buy. The GTINs use the GS1 prefix reserved for demonstrations. We built it so that product videos and live demos can scan real codes and land on real pages, instead of showing mock-ups. Everything you scan here goes through the same kind of short link a real brand would use, on a custom domain. If you want to try the same thing on your own packaging, custom domains for QR codes is the part most brands ask about first.