Skip to content

Case Label Template With a GS1-128 Barcode (Free Excel)

A free case label template: what goes on a shipping case, the GTIN-14 check digit by formula, and the GS1-128 string with the lot and use-by date.

By Koa Sterling. Product specialist at TaroStack and small business owner. Yes, I am a real human, and I actually sit in front of a computer and write these articles. Reviewed October 15, 2026 · 7 min read

A case label tells whoever handles the case what's inside it without opening it: the product, how many, the lot, the date, and a barcode a warehouse can scan. For a small producer, it becomes a question the first time a distributor or a grocery chain's warehouse asks for "a GS1-128 label with lot and date". That barcode carries three things in one: the case's GTIN-14, its use-by or best-by date, and the lot. Below is what goes on a case label, how the GTIN-14 and its check digit are built, how the GS1-128 string is put together, a filled-in example for a salsa maker, and a free template that builds the string and the check digit by formula.

The short version

  • Product name, SKU, how many units and the net weight, and who it's from.
  • The lot and the date, in words and in the barcode.
  • A case GTIN-14: an indicator digit, your GS1 company prefix and item number, and a check digit.
  • The GS1-128 string: (01) GTIN-14, then (17) use-by or (15) best-by as YYMMDD, then (10) lot, last.
  • The same lot that's on the units inside, so a recall can find every case.
  • TaroStack prints lot labels with the GTIN, date and lot in a GS1-128 barcode, and reads them at receiving. More below.

What goes on a case label

Field Example Why
From Saguaro Salsa Co., Tucson, AZ Who to call
Product Fresh salsa roja, 16 oz tubs What's inside
SKU SR-16-CS Your code, for your picking and theirs
Contents 12 units, 12 lb (5.44 kg) How many, and how heavy
Lot SR-261012A Which batch, for a recall
Use by October 26, 2026 When it must be gone
Case GTIN-14 10061414110010 The case's own GS1 number
Barcode (01)10061414110010 (17)261026 (10)SR-261012A All three, scannable

The lot on the case is the lot on every tub inside it; a case that mixes lots should say so, or better, not exist. How lot codes are built is in how to create lot numbers, and how a buyer reads the codes on a package is in how to read lot codes on food.

The case GTIN-14 and its check digit

A GTIN is the number under a retail barcode, and it comes from GS1: you license a company prefix and number your products with it. A case of the same tubs gets its own GTIN-14: an indicator digit for the packaging level, the company prefix and item number, and a check digit. How to get a prefix and what it costs is in GS1 barcodes for small food producers.

The check digit is arithmetic. Take the first 13 digits, multiply them by 3, 1, 3, 1 and so on from the left, add the results, and the check digit is whatever brings the total up to the next multiple of 10:

Digits 1 0 0 6 1 4 1 4 1 1 0 0 1
Weight 3 1 3 1 3 1 3 1 3 1 3 1 3
Product 3 0 0 6 3 4 3 4 3 1 0 0 3

The products add up to 30, already a multiple of 10, so the check digit is 0 and the GTIN-14 is 10061414110010. The example uses 0614141, the company prefix GS1 uses in its own examples; use your own, and never make one up.

The GS1-128 string

A GS1-128 barcode strings data together, each piece behind a two-digit application identifier, shown in brackets under the bars:

Identifier Means Example
(01) GTIN-14, fixed length 10061414110010
(17) Use-by or expiration date, YYMMDD 261026
(15) Best-by date, YYMMDD, instead of (17) on a shelf-stable product
(10) Lot or batch, variable length SR-261012A

The lot goes last because its length varies; anything after a variable-length field needs a separator character, and putting it at the end avoids that. A barcode printer or a barcode generator is fed the string without the brackets, 01100614141100101726102610SR-261012A run together, and prints the brackets in the human-readable line underneath. The template builds both.

A filled-in example

Saguaro Salsa Co., a made-up salsa maker in Tucson, Arizona, I use in these examples, ships two pallets of fresh salsa to a distributor, 20 cases of each:

Product Lot Use by Cases Case GTIN-14 Human-readable line
Fresh salsa roja, 16 oz tubs SR-261012A Oct 26, 2026 20 10061414110010 (01)10061414110010 (17)261026 (10)SR-261012A
Fresh salsa verde, 16 oz tubs SV-261013A Oct 27, 2026 20 10061414110027 (01)10061414110027 (17)261027 (10)SV-261013A

Each of the 40 cases carries its own label, and the distributor's dock scans them in, lot and date included. What else a distributor or grocery buyer asks of a new supplier is in selling to grocery stores requirements.

Get the template

Download the case label template. Three sheets: your products, where the check digit and the case GTIN-14 fill in from the first 13 digits; a shipment sheet, where each line's product, GTIN, GS1-128 string and human-readable line fill in from the SKU, lot and date; and a printable 4 × 6 case label for the first line. The barcode itself comes from a label printer or a barcode generator fed the string. It's an ordinary Excel file with no macros, and it works in Google Sheets, LibreOffice and Numbers.

Where this stops working

A spreadsheet builds the string, but someone types the lot and the date for every line, and a typo on a case label is a case the distributor can't trace. With a few shipments a week, the labels, the lots the cases really hold, and the lots recorded against each customer drift apart.

How TaroStack does it

TaroStack prints lot labels with the GTIN, date and lot in a GS1-128 barcode, and reads them at receiving.

Lot labels from the batch. When an item has a 14-digit GTIN, its lot labels carry (01) the GTIN, (17) the use-by date and (10) the lot in a GS1-128 barcode, from the batch that made it, so nobody types the lot; without a GTIN, the label carries the lot code. Labels also come as a ZPL file for Zebra label printers. TaroStack doesn't issue GTINs; those come from GS1.

Scanning the other way. At receiving, scanning a supplier's GS1-128 case label fills in its lot and date, so your ingredients arrive with their lots recorded.

The lots each customer got. When the cases ship, the lots in them are recorded against the customer, so a recall is one report: which batches, which customers, what's still on your shelves.

The job Spreadsheet In TaroStack
The lot on the label Typed for each case From the batch
A supplier's case label Typed in at receiving Scanned
Which customer got lot SR-261012A Search the paperwork One recall report
Zebra label printer Set up by hand A label file to print

Lots, lot labels, scanning and recalls are on every plan, from $49 a month. The first 30 days are free, with no credit card. If you'd like a hand setting up, ask, and we'll do it with you.

Questions people also ask

What goes on a case label?

The product, SKU, how many units and the net weight, who it's from, the lot, the use-by or best-by date, the case GTIN, and a barcode that carries the GTIN, date and lot.

How do you calculate a GTIN-14 check digit?

Multiply the first 13 digits by 3, 1, 3, 1 and so on from the left, add them, and the check digit is the number that brings the total to the next multiple of 10. The template does it by formula.

What is a GS1-128 barcode?

A barcode that strings data together behind application identifiers: (01) for the GTIN, (17) or (15) for a date, and (10) for the lot, among others. Warehouses scan it to record all three at once.

Do I need GS1 barcodes on my cases?

If a distributor or retailer asks for them, yes, and the GTIN has to come from GS1. A small producer selling directly may only need a clear label with the product, lot and date.

We use AI to help with the research for these articles. Every one is read, checked against its sources and edited by Koa before it's published. Spot a mistake? Tell us and we'll fix it and say so. How we write these.

Let’s get your stack in order.

Get TaroStack

Sign up now for your free 30 day trial. No credit card required.