You’re running your store on Shopify and it’s working. Then your food-safety consultant asks to see traceability records by lot. Or a supplement batch gets a supplier complaint and you need to know which orders it went into. Or three cases expire on the shelf because nobody knew which ones to pick first.
You open Shopify to find the lot number and the expiry date, and there is simply no field for it.
That is not a setup error. Shopify has no native lot, batch, or expiry date tracking. Shopify’s own perishable inventory guide (published March 2026) states directly: “To manage expiration dates, lot or batch tracking, or FEFO picking rules, use an inventory tracking software like Freshly.” That is Shopify’s own documentation confirming the gap.
Single-purpose Shopify apps, Batchly, Freshly, ExpiryPro, fill part of that gap. They track lots, expiry dates, and some support FEFO allocation on individual Shopify orders. What they typically don’t handle: purchase orders with lot-level receiving from suppliers, multi-warehouse FEFO picking across a full distribution operation, demand forecasting, or MRP/BOM for manufactured products.
This page is for the food, supplement, or cosmetics brand that has hit the operations ceiling, and needs to understand exactly where that ceiling sits, whether a narrow app is the right fit, and what the full operations layer looks like.
Shopify has no native lot number, batch code, or expiry date tracking. Its own guide recommends a third-party app for these. Single-purpose apps (Batchly, Freshly, ExpiryPro) solve the core lot and expiry tracking problem within Shopify. Some include FEFO-style allocation. What they typically don’t handle: purchase orders with lot-level receipt, multi-warehouse FEFO picking across a distribution operation, demand forecasting, and MRP/BOM. Qoblex adds the full operations layer while Shopify stays your storefront and sales channel.
Does Shopify track lot numbers and expiry dates? (the short answer)

Short answer: no. Not natively, and not with a workaround that holds up under pressure.
What Shopify does support natively
Shopify’s inventory layer tracks quantities per product variant and per location. You can set up multiple Shopify Locations, a warehouse, a retail store, a 3PL, and see stock levels per location. Shopify’s Winter 2026 release added flexible inventory transfers (multi-shipment, partial deliveries between locations). Shopify sends low-stock notifications via Shopify Flow and maintains 180 days of inventory adjustment history. For a DTC brand managing simple SKUs, it provides a working stock count.
Shopify’s Analytics and Profit reports apply a single static cost-per-item field to estimate gross margin. The reports reference a cost method, but this is one static cost per product, not multi-batch cost layers across purchases made at different prices.
What Shopify does NOT support, the lot, batch, and expiry gap
Shopify treats every unit of a SKU as identical. There is no lot number field, no batch code, no expiry date field, and no concept of FEFO picking. Shopify’s own perishable inventory guide (published March 2026) states: “To manage expiration dates, lot or batch tracking, or FEFO picking rules, use an inventory tracking software like Freshly.”
Additional gaps confirmed by independent sources: – No raw materials inventory tracking: Shopify is for finished goods only; there is no BOM or production workflow – No automated reorder logic tied to production schedules or supplier lead times – No purchase order management with lot-level receipt – Shopify Locations ≠ bin-level warehouse management: 2026 location improvements add transfer flexibility but no bin subdivision or intelligent FEFO routing
Questions readers commonly ask, answered directly:
- Does Shopify track lot numbers natively? No. There is no lot number field in Shopify.
- Does Shopify track expiry dates? No. Shopify’s own guide says to use a third-party app for this.
- Can Shopify do FEFO picking? No. Shopify has no picking rules tied to expiry dates.
- Does Shopify have multi-warehouse lot tracking? No. Shopify Locations tracks quantities per location but has no lot identity or FEFO layer.
What single-purpose Shopify expiry apps (Batchly, Freshly, ExpiryPro) do, and where they stop
Single-purpose Shopify lot and expiry apps solve the core lot-tracking and expiry-date problem within Shopify. It is worth being precise about what each app actually offers.
Batchly (launched April 2026): tracks lot numbers, expiry dates, and quantities per location; supports FEFO or FIFO allocation per product; includes multi-location support and Shopify Flow integration; notes a PO PDF import feature. Pricing: free plan (1 product), $15/month for unlimited products. It does not list demand forecasting or MRP/BOM.
Freshly: tracks inventory batches with expiry dates; supports FEFO/FIFO stock rotation; includes batch traceability to the order level. Multi-location fulfillment on Advanced and Plus plans. Pricing: free (10 products, 500 orders/month); $24/month Pro; $89/month Advanced; $199/month Plus. It does not list purchase order management, demand forecasting, or MRP/BOM.
Batch ExpiryPro: tracks batch/lot numbers and expiry dates; auto-assigns batches to customer orders; multi-location on the Standard plan ($19.99/month). The listing does not describe FEFO picking logic, purchase order management, demand forecasting, or MRP/BOM. Pricing: free (5 products, 10 orders); $9.99/month Basic; $19.99/month Standard; $29.99/month Premium.
What these apps don’t handle, regardless of which one you choose: purchase orders with lot-level receiving from suppliers (the inbound side), full multi-warehouse FEFO picking across a distribution operation, demand forecasting tied to Shopify sales history, or MRP/BOM for manufactured or assembled products. If your gap is purely on the outbound (Shopify order) side and you don’t need the inbound lot receipt or manufacturing layer, one of these apps may be the right fit. The “When a narrower tool is enough” section has an honest checklist.
Why the widget-only approach breaks as your operation scales
The workarounds Shopify users actually resort to
Shopify brands managing perishable or batch-tracked inventory typically go one of two routes:
A Shopify App Store expiry widget (Batchly, Freshly, ExpiryPro). These record lot numbers and expiry dates at the order or product level within Shopify. They solve the date-tracking and (in some cases) FEFO allocation problem for direct-to-consumer Shopify orders. They do not connect to supplier purchase orders, inbound lot receipt, or multi-warehouse pick operations beyond what Shopify’s location model supports.
A spreadsheet beside Shopify, a manual lot register that tracks which lots were received from which supplier, at what date, with what expiry. The warehouse team cross-references this spreadsheet when picking stock. The Shopify orders confirm the sale quantities; the spreadsheet (theoretically) confirms which lot each unit came from.
These are legitimate starting points. The failure mode is scale.
Where it falls apart
The purchase order blind spot. Shopify has no native purchase order management. The moment a lot enters your warehouse from a supplier, the only place that receipt is recorded is your accounting system (Xero, QBO) or a spreadsheet, not Shopify. A Shopify expiry widget only captures what you manually enter. One missed entry, one team member who forgot to update the app, and your lot register has a hole.
The multi-warehouse problem. If your stock sits across a warehouse, a 3PL, and a retail location, FEFO means picking the soonest-expiring lot from whichever location it’s in, not the nearest one. The narrow Shopify apps that do support FEFO operate within Shopify’s location model. A full multi-warehouse FEFO pick operation, with bin-level routing, cross-location allocation, and warehouse pick lists, is a different layer that none of these apps claim to provide.
The inbound lot gap. Batchly notes a “PO PDF in seconds” feature, but this is not the same as a purchase order management system with structured lot-level receiving, supplier lead time tracking, and open-PO visibility. The inbound leg, recording what lot arrived, from which supplier, on which purchase order, at what cost, remains either manual or managed in a separate system for all the narrow Shopify apps.
The compliance snapshot. A food business facing an FSMA 204 audit or a supplement brand under a GMP inspection needs a documented chain of custody: supplier → lot → received date → internal movement → customer order. A Shopify expiry widget that captures the outbound (Shopify sale) side only, with the inbound supplier lot living in a spreadsheet or accounting system, does not produce a closed traceability loop. See the compliance context below for the current FDA enforcement schedule.
What proper lot and expiry tracking requires for a Shopify brand (the operator’s checklist)
A food, supplement, or cosmetics brand selling through Shopify needs the following from its operations layer, none of which Shopify provides natively:
- Lot-level purchase order receipt. Record the supplier’s lot/batch code and expiry date at the moment goods arrive, tied to the purchase order, not entered separately into a widget.
- FEFO allocation on outgoing pick lists. When a Shopify order triggers a pick list, the system allocates the lot with the nearest expiry date first, regardless of warehouse location.
- Multi-location FEFO. If stock is spread across a warehouse and a 3PL, the system knows which lot is expiring soonest across all locations and allocates accordingly.
- Forward and backward traceability. Trace: given a lot number, find every Shopify order that shipped from it (for a recall). Trace: given a Shopify order, find every lot that went into it (for a customer complaint).
- Expiry alerts. The system flags lots approaching expiry before they become write-offs.
- Demand-informed replenishment. Because Shopify’s native reorder logic is minimal, and Shopify’s Stocky app is being discontinued 31 August 2026, reorder decisions need to come from a system that knows current stock by lot, forecasted demand, and supplier lead times.
Compliance context (food & beverage, supplements, cosmetics): FSMA 204 (FDA) requires Critical Tracking Events (CTEs) and Key Data Elements (KDEs) per lot for foods on the Food Traceability List. The current FDA enforcement date is 20 July 2028, extended by a Congressional directive from the original January 2026 deadline (Federal Register document 2025-14967, August 2025, confirm the current compliance date at FDA.gov). GMP for supplements (21 CFR Part 111) requires batch records tied to each production run. Cosmetics GMP (ISO 22716) requires traceability from raw material lot to finished product lot. A Shopify expiry widget that only captures the sale side of the transaction does not produce these records.
How Qoblex adds lot and expiry tracking to Shopify (Shopify stays your storefront)
How Qoblex delivers lot and expiry tracking
Qoblex is an operations platform, not a Shopify app, that handles the inventory, purchasing, and warehouse layer underneath your Shopify storefront. For lot and expiry tracking, Qoblex provides:
- Lot-level purchase order receiving. Every Qoblex PO records the supplier’s lot/batch code and expiry date as structured fields at receipt, not typed into a note.
- FEFO picking across multiple warehouses. When Qoblex generates pick lists for Shopify orders, it allocates from the lot with the nearest expiry date first, across all warehouse locations.
- Expiry alerts. Qoblex surfaces lots approaching expiry so you can discount, rotate, or quarantine before write-off.
- Forward/backward traceability. Trace any lot to every Shopify order it shipped in; trace any Shopify order back to every contributing lot. This is the single-record traceability chain needed for recalls or audits.
- Serial number tracking. For SKUs tracked unit-by-unit, Qoblex records a serial number per unit.
- Demand forecasting and reorder. Qoblex forecasts demand from your Shopify sales history and recommends reorder quantities, accounting for current lot stock levels and supplier lead times, filling the gap Shopify’s discontinued Stocky app used to partially address.
- MRP / BOM. If you manufacture or assemble finished products from raw materials, Qoblex handles bill of materials and production orders, with lot traceability through the production run.
Note on pricing: Qoblex’s lot, expiry, and serial tracking is available as an add-on to its base plan, see current pricing at qoblex.com/pricing. There is no setup fee and no long-term contract.
How the Shopify sync works: Qoblex handles operations, Shopify stays your sales channel
Shopify and Qoblex have distinct roles:
- Shopify keeps: storefront, product listings, customer-facing orders, payments, your DTC and direct-sales channel.
- Qoblex handles: inventory operations: stock receipt by lot, FEFO picking, warehouse transfers, purchase orders from suppliers, demand forecasting, MRP/BOM if you manufacture.
- What syncs: Shopify orders flow into Qoblex for fulfillment and stock deduction. Qoblex stock levels sync back to Shopify so your storefront shows accurate on-hand quantities.
If you also use Xero or QuickBooks Online for accounting, Qoblex syncs to those too, your accounting system gets COGS and stock adjustments without a second manual entry.
The primary buyer vertical: who this is for
This page is for the food and beverage brand, supplement manufacturer, or cosmetics producer that already sells through Shopify and has hit the operations ceiling. Specifically:
- A food brand using Shopify for DTC that now needs FSMA 204 lot traceability on their food traceability list items.
- A supplement manufacturer whose Shopify store is working great for sales, but whose GMP audit requires a documented batch record from supplier receipt to customer shipment.
- A cosmetics brand receiving retailer requests for lot traceability certificates.
- A Shopify seller who has tried a narrow expiry app and found it doesn’t connect to their purchase orders or multi-location picking workflow.
- Any Shopify brand preparing for post-Stocky reorder management (Shopify’s Stocky app discontinuing 31 August 2026).
When Shopify alone (or Shopify + a narrow expiry widget) is enough
Not every Shopify business needs Qoblex. Here is when a simpler approach may genuinely serve you:
You sell non-perishable, non-regulated products with no lot identity requirement
If your Shopify products have no expiry date, no lot number, no batch recall risk, standard merchandise, electronics accessories, print-on-demand, digital products, Shopify’s quantity tracking is adequate. You have no FEFO obligation and no traceability requirement.
You sell perishables but have a very small operation with a single active lot at a time
A boutique food maker with one or two products, very low SKU count, and a single location where every unit comes from a single active supplier lot may find that Shopify’s quantity tracking plus a manual spreadsheet remains manageable. When your active lot count grows beyond a handful, the spreadsheet starts to fail.
You only need expiry date and lot number visible on your Shopify orders, nothing more
If the only requirement is displaying a lot number and expiry date on packing slips or order confirmations, and you have no multi-lot pick logic, no compliance-grade traceability obligation, and no need to trace orders back to supplier lots, a narrower single-purpose Shopify app (Batchly, Freshly, ExpiryPro) may solve your problem for less cost. These apps start at approximately $9.99–$24/month on their paid tiers. Batchly and Freshly also support FEFO-style allocation for Shopify orders.
The right question: will you need PO-level lot receipt, a full FEFO warehouse operation across multiple locations, or supplier-to-customer traceability in the next 12–18 months? If yes, a narrow widget will cap out before you get there.
You are a large enough brand to justify a full WMS or ERP
If your Shopify operation runs more than a handful of warehouse staff, manages EDI with major retailers, or operates at a scale requiring a full warehouse management system (WMS) with RF scanning and slotting optimization, a heavier system (a full ERP or dedicated WMS) may be more appropriate than Qoblex, which is built for SMB scale.
Adding it up: what lot and expiry tracking on Shopify costs
Qoblex pricing
Qoblex’s lot, serial, and expiry date tracking is available as an add-on to its base plan, see current pricing at qoblex.com/pricing. There is no setup fee and no annual contract.
This is not the same cost structure as a narrow Shopify expiry widget. Qoblex’s base plan includes purchase order management, multi-warehouse operations, demand forecasting, and integrations (Shopify, Xero, QuickBooks). The add-on unlocks the lot/serial/expiry layer.
Narrow Shopify expiry apps (Batchly: $15/month; Freshly: $24/month Pro; ExpiryPro: $9.99–$19.99/month) solve a narrower problem. If your needs are narrower, a narrower tool costs less.
Other Shopify inventory and operations platforms also carry a monthly cost
Full operations platforms that integrate with Shopify, Cin7, Katana, inFlow, Unleashed, carry their own subscription fees, typically $119–$349/month or more depending on volume and tier. The comparison is not “Qoblex vs free” but “Qoblex vs the full cost of whichever operations layer your business needs.”
Comparison table: Shopify native vs Qoblex + Shopify
| Capability | Shopify (native) | Qoblex + Shopify |
|---|---|---|
| Lot / batch number tracking | No native lot number field | Yes, structured lot fields on PO receipt |
| Expiry date tracking | No native expiry date field | Yes, expiry date per lot, alertable |
| FEFO picking enforcement | No picking rules | Yes, FEFO allocation across warehouse locations |
| Serial number tracking | Not natively supported | Yes (included in lot tracking add-on) |
| Forward/backward lot traceability | Not possible without add-on | Yes, trace lot to orders; trace order to lots |
| Purchase order management | Not natively supported | Yes, PO management with lot-level receipt |
| Multi-warehouse / bin management | Multi-location stock (no bin subdivision) | Yes, multi-warehouse with FEFO across locations |
| Demand forecasting / reorder | No native forecasting; Stocky app discontinuing 31 Aug 2026 | Yes, demand forecasting and reorder recommendations |
| MRP / BOM (manufactured products) | Finished goods only; no raw materials | Yes, lightweight MRP/BOM included in base plan |
| Accounting / GL | Not Shopify’s role (integrate with Xero/QBO) | Stays in your accounting system (Xero/QBO sync) |
| Storefront / sales channel | Yes (system of record for DTC) | Stays in Shopify, syncs bidirectionally |
The Qoblex column reflects the base plan plus the lot/expiry/serial tracking add-on; see qoblex.com/pricing for current pricing.
FAQ
Does Shopify track lot numbers natively?
No. Shopify has no lot number field. Every unit of a SKU is treated as identical in Shopify’s inventory system. Shopify’s own perishable inventory guide (published March 2026) recommends adding a third-party app for lot tracking.
Does Shopify track expiry dates natively?
No. There is no expiry date field in Shopify’s inventory system. The same Shopify guide recommends using a third-party app for expiry date management.
Do single-purpose Shopify apps (Batchly, Freshly, ExpiryPro) handle lot tracking and FEFO?
Yes, partially. Batchly and Freshly both support lot numbers, expiry dates, and FEFO-style allocation for Shopify orders. ExpiryPro handles lot numbers and expiry dates but does not describe FEFO picking logic. What none of them handle is the full inbound side: purchase orders with structured lot-level receipt from suppliers, multi-warehouse FEFO pick operations at the distribution level, demand forecasting, or MRP/BOM for manufactured products. They are the right tool for a narrower need; Qoblex is the right tool for the full operations layer.
Is the Shopify Stocky app being discontinued?
Yes. Shopify’s Stocky app, its nearest native forecasting/PO tool, is being discontinued on 31 August 2026. Shopify’s own help page confirms this and advises merchants to transition before that date.
Does Qoblex replace Shopify?
No. Qoblex is the operations and inventory layer. Shopify stays your storefront and the system of record for customer-facing orders. They sync: Shopify orders flow into Qoblex for fulfillment; Qoblex stock levels update Shopify so your storefront reflects accurate stock.
How much does it cost to add lot and expiry tracking to Shopify via Qoblex?
The lot/serial/expiry tracking capability is an add-on to Qoblex’s base plan, with no setup fee and no annual contract, see current pricing at qoblex.com/pricing. Narrow single-purpose Shopify expiry apps start at approximately $9.99–$24/month on their paid tiers.
Can Shopify handle food traceability compliance (FSMA 204)?
Not natively. FSMA 204 (FDA) requires Critical Tracking Events (CTEs) and Key Data Elements (KDEs) at the lot level for foods on the Food Traceability List. The current enforcement date is 20 July 2028, extended by Congressional directive from the original January 2026 deadline, confirm the current compliance date at FDA.gov. Shopify tracks quantities but not lot identities. Meeting FSMA 204 requires a system that captures lot data from supplier receipt through customer shipment, a closed traceability loop that Shopify alone cannot provide.

