Batch & Lot Traceability for Food: Complete Setup Guide
From defining lot structure to running a traceability query in under 5 minutes. The practical guide to batch traceability for food businesses.
Traceability is not just for recalls — it's for running a better business
When most food business owners hear "traceability," they think of product recalls. And since recalls are rare events, traceability gets filed under "regulatory requirement I'll deal with later." This is a mistake, and it costs money every day.
Batch and lot traceability — the ability to track a specific group of products from their source through your business to the end customer — is the foundation of expiry management, waste reduction, supplier quality assessment, and regulatory compliance. You don't implement traceability because the FDA might ask for it. You implement it because it makes your business better at everything that involves inventory.
Here is the complete setup guide, from defining your lot structure to running your first traceability query.
Not sure how much you're losing to expiry?
Run a free inventory waste audit — find your bleeding SKUs in 60 seconds. No sign-up required.
Run free auditWhat is a batch? What is a lot?
The terms "batch" and "lot" are used interchangeably in most food businesses, but technically:
Batch: A quantity of product manufactured in a single production run under identical conditions. All units in a batch have the same recipe, the same manufacturing date, and (usually) the same expiry date.
Lot: A quantity of product grouped for distribution, logistics, or regulatory purposes. A lot may contain multiple batches if they share the same product and are shipped together.
For practical purposes in a retail or food service setting: a lot is a group of identical products from the same supplier with the same expiry date. This is the tracking unit you'll use. When you receive 50 units of Product X from Supplier A, all with expiry date June 15, 2026 — that's your lot.
The three levels of traceability
Level 1: Product-level traceability (basic)
You know: "We have 50 units of Product X from Supplier A."
This tells you what you have and where it came from. It does not tell you when specific units expire, which units were sold to which customers, or which supplier delivery contained a specific batch.
Level 2: Lot/batch-level traceability (standard)
You know: "We have 30 units of Product X, Lot A456, expiring June 15, and 20 units, Lot B789, expiring August 30. Lot A456 came from Supplier A on March 1. Lot B789 came from Supplier B on March 10."
This tells you everything Level 1 does, plus: which units expire when, which supplier provided each batch, and which batch to sell first (FEFO).
Level 3: Unit-level traceability (advanced)
You know: "Unit #47 of Product X, Lot A456, was sold to Customer Y on March 12 at 3:42 PM, from Register 2."
This adds individual unit tracking. Most food businesses don't need this level unless they handle high-value items or face specific regulatory requirements (like FSMA 204).
For most food businesses, Level 2 is the target. It enables expiry management, supplier quality tracking, recall response, and regulatory compliance without the complexity of unit-level tracking.
Setting up batch traceability: step by step
Step 1: Define your lot structure
For each product category, determine what constitutes a lot:
Packaged goods (from manufacturers):
Lot = the manufacturer's batch/lot number, as printed on the packaging. You adopt their lot identifier.
Fresh produce (from farms/suppliers):
Lot = supplier + delivery date. All tomatoes from Supplier A delivered on March 10 are Lot "SupA-0310."
In-house prepared items (deli, bakery, food service):
Lot = your internal production batch. All chicken salad prepared on March 10 morning shift is Lot "CS-0310-AM."
Repackaged items (bulk to retail):
Lot = original product lot + repackaging date. Rice from Lot R-5678 repackaged on March 10 becomes Lot "R-5678-0310."
Step 2: Capture lot data at receiving
Every delivery must be logged with:
| Data point | Example | Source |
|---|---|---|
| Product name/code | Organic Whole Milk 1gal | Your product master |
| Lot/batch number | L24-5678 | Supplier invoice/packaging |
| Quantity received | 24 units | Physical count |
| Expiry/use-by date | 2026-03-25 | Packaging label |
| Supplier | Valley Dairy Co. | Purchase order |
| Date received | 2026-03-10 | System date |
| Reference document | Invoice #INV-8901 | Supplier document |
Speed matters. If capturing this data takes 30 minutes per delivery, staff will skip it. If it takes 3 minutes (via invoice OCR or barcode scanning), they'll comply. Choose tools that make the capture fast.
Step 3: Link lots to sales
When a product is sold, the POS should record which lot was deducted. In a FEFO system, the lot with the nearest expiry date is automatically selected.
For POS-scanned products: The system handles this automatically. Cashier scans Product X, system deducts from Lot A456 (nearest expiry).
For manually selected products (produce, deli): The system deducts from the oldest lot by default. If the staff member selects from a different lot (e.g., a customer requests a specific item), the system should allow override with logging.
For food service (recipes/production): When ingredients are used in a recipe, the system deducts from the nearest-expiry lot of each ingredient. The finished product gets its own lot number linking back to the ingredient lots used.
Step 4: Track lot movement across your operation
For businesses with multiple locations, warehouses, or departments, track lots as they move:
- Warehouse to store: Lot A456, 12 units, transferred March 12
- Store A to Store B: Lot A456, 5 units, transferred March 15 (inter-store transfer for inventory balancing)
- Display to backroom: Lot A456, 3 units, pulled from display March 18 (near-expiry segregation)
Each movement creates a record. The complete chain: manufacturer → your warehouse → your store → specific customer (or disposal).
Step 5: Record lot disposal
When products from a lot are disposed of, record:
- Lot number
- Quantity disposed
- Reason (expired, damaged, recalled, quality concern)
- Method (destruction, return to supplier, donation)
- Date
This closes the traceability loop. For every unit of every lot received, you can account for its fate: sold, transferred, returned, donated, or disposed.
Running a traceability query
The acid test of your traceability system: can you answer the question "what happened to Lot X?" within 5 minutes?
Forward traceability (what happened to a lot after you received it)
Query: "Lot L24-5678 of Organic Whole Milk — where did it go?"
Answer: "Received 24 units on March 10 from Valley Dairy. 18 units sold between March 10-17 across 14 transactions. 3 units transferred to Store B on March 15 (all sold there by March 18). 2 units donated to Community Kitchen on March 22. 1 unit disposed (expired) on March 26."
Backward traceability (where did a product come from)
Query: "Customer reported buying spoiled milk on March 14 at 2 PM from our store. What lot was it from?"
Answer: "Sale at 2:03 PM on March 14 was from Lot L24-5678. This lot was delivered by Valley Dairy Co. on March 10, with expiry date March 25. The product was within its sell-by window at the time of sale. Other units from the same lot generated no complaints."
Recall response
Query: "Valley Dairy Co. has recalled Lot L24-5678. What's our exposure?"
Answer: "We received 24 units. 18 were sold, 3 transferred to Store B (all sold), 2 donated to Community Kitchen (notified), 1 disposed. Zero units remain in inventory. 21 units were sold to customers — we can identify the transactions and notify customers who used loyalty cards or credit cards."
The recall response scenario demonstrates why Level 2 traceability matters even for businesses that have never experienced a recall. When a recall happens (and in the food industry, it's when, not if), your ability to respond quickly and completely determines your liability exposure and customer trust.
Traceability for FSMA 204 compliance
The FDA's FSMA 204 Food Traceability Rule requires businesses handling specific high-risk foods (leafy greens, shell eggs, certain cheeses, seafood, and others on the Food Traceability List) to maintain detailed traceability records.
The good news: the lot-level traceability system described in this guide satisfies the core FSMA 204 requirements. The Key Data Elements (KDEs) mandated by the rule — traceability lot code, product description, quantity, supplier, receiving date, reference document — are exactly the data points captured at receiving in Step 2 above.
The 24-hour response requirement (you must produce records within 24 hours of an FDA request) is satisfied by any searchable digital system. The query capability described in the section above can produce FSMA 204-compliant reports in minutes.
Common implementation challenges
Challenge 1: Products without lot numbers
Some products — particularly from small suppliers, local farms, or imported goods with unfamiliar labelling — arrive without printed lot numbers.
Solution: Assign internal lot numbers. Format: Date-Supplier-Sequence. Example: "0310-FarmA-01" (first delivery from Farm A on March 10). This internal lot serves the same purpose as a manufacturer lot for your traceability needs.
Challenge 2: Bulk items split across lots
You receive a 50 lb bag of flour. Over the next month, you use portions of it in various recipes. The bag doesn't have a "batch" — it's a single unit used incrementally.
Solution: Treat the entire bag as one lot. When you open it, log the open date. As you use portions, deduct from that lot. When the bag is finished, the lot is closed. Recipe-based deductions handle this automatically if your system supports recipe management.
Challenge 3: Staff resistance
Capturing lot data at every receiving event adds work. Staff may see it as bureaucratic overhead.
Solution: Demonstrate the value. When the system catches a near-expiry batch before it expires (saving $100 in waste), point it out. When a supplier complaint is resolved quickly because you have lot-level purchase records, mention it. When regulatory compliance is achieved without a scramble, acknowledge the system.
Also: make the capture as fast as possible. Invoice OCR reduces receiving time below what manual count-and-shelve takes. When the new process is faster than the old process, resistance evaporates.
The business case for traceability
Traceability is not a cost center. It's an investment that returns value through:
- Waste reduction: FEFO enforcement based on lot-level expiry data reduces expiry waste by 30-50%
- Supplier quality: Lot-level data reveals which suppliers deliver fresher products, enabling better negotiations
- Recall protection: Fast, complete recall response protects your reputation and limits liability
- Regulatory compliance: FSMA 204 and state/local food safety regulations require traceability
- Operational insight: Knowing exactly what you have, where it is, and when it expires makes every inventory decision better
For a food business doing $300,000 in annual purchases, the waste reduction alone (2-3% of purchases) returns $6,000-9,000 per year. Traceability systems cost $600-2,400 per year. The ROI is 3-15x.
ShelfLifePro provides complete batch and lot traceability for food businesses — from receiving with invoice OCR to FEFO sales to disposal logging. Searchable records, automated alerts, and FSMA 204-ready reporting.
Start with receiving. Every delivery logged with lot data is another link in the traceability chain. Every link makes your business more resilient, more efficient, and more compliant.
See what batch-level tracking actually looks like
ShelfLifePro tracks expiry by batch, automates FEFO rotation, and sends markdown alerts before stock expires. 14-day free trial, no credit card required.