Guide

Batch and lot tracking for Shopify makers

If you make your own products, such as skincare, soap, candles, food or supplements, every unit you sell came from a specific batch, and every batch was made from specific supplier lots. Batch and lot tracking means keeping that chain on record so you can answer one question fast: who received products made with this lot?

What is the difference between a batch and a lot?

  • A supplier lot is one delivery of a raw material, identified by the supplier's lot number, with its own expiry date. For example, lavender oil lot LV-0331.
  • A batch (or finished lot) is the set of units you produced in one production run, with its own batch number and expiry date. For example, LAV-261012-01.

Full traceability links the two: supplier lot → recipe → batch → order → customer.

Why Shopify stores need it

  • Recalls. When a supplier warns you about a bad lot, you need the list of affected customers and to stop selling the stock that is left, quickly.
  • Expiry dates. Using the oldest-expiring stock first (FEFO) reduces waste, and expiry alerts stop you shipping expired products.
  • Records for audits. Food, cosmetics and supplement makers are often asked to show where an ingredient came from and where it went. Keeping lot records ready makes that easy.
  • True cost per unit. Knowing exactly which lots went into a batch gives you its real ingredient cost.

Why spreadsheets break down

Shopify tracks stock levels, not lots. Most small brands keep lot numbers in a spreadsheet, which works until a recall: then someone has to match production notes, supplier invoices and hundreds of orders by hand, under time pressure.

How to set up batch and lot tracking in Shopify with BatchTrail

  1. Receive supplier lots with their lot number, quantity, cost and expiry date, by hand or by importing a CSV.
  2. Create a recipe for each product: the materials and quantities that go into one unit.
  3. Record production. BatchTrail uses the oldest-expiring lots first, creates the batch number and adds the finished units to your Shopify inventory with their real cost.
  4. Ship as usual. When an order is fulfilled, each item is linked to the batch it came from, and the batch numbers are saved on the order.
  5. Trace or recall any supplier lot or batch: see every batch, order and customer affected, pull unsold stock from sale in one click, and export the customer list.

Frequently asked questions

Does Shopify have built-in lot tracking?

Shopify tracks inventory quantities by location but not lot numbers, expiry dates or which batch went into which order. Apps add that layer.

What is FEFO?

First expired, first out: always use or ship the stock that expires soonest first. BatchTrail applies it to both supplier lots in production and finished batches when orders ship.

Does BatchTrail make me compliant with food or cosmetics regulations?

No app can certify compliance. BatchTrail keeps the lot records that audits and recalls ask for, ready when you need them.

Try BatchTrail free. Batch and lot tracking, expiry dates and one-click recalls, inside your Shopify admin. Paid plans from $9 a month.

Install BatchTrail from the Shopify App Store →