Build or Buy Serial, Lot and Expiry Tracking on Shopify?
Serial, lot and expiry tracking on Shopify is a CUSTOMIZE decision: native inventory has no serial, lot or expiry field, just an Available count. Capture the lot or serial at pack, where the unit is touched, and write it back to the order as metafields. Recall lookups become one query, $15,000–$40,000 to build (Deploi estimate, illustrative). Serializer, the one purpose-built app, has 6 reviews; Cin7 Core tracks all three from $349/month (verified Sep 2026).
Your profile — see how the verdict shifts
- Confidence
- Medium — Read Shopify's inventory-tracking setup page: inventory is tracked as a number of Available units per product or variant, and no serial, lot, batch or expiry field appears anywhere on it (verified Sep 2026). Checked the three App Store listings the category offers: Serializer (4.9★, 6 reviews, Built for Shopify), Cin7 Core (4.6★, 49 reviews; the listing shows expiry dates and batch tracking, and its help center documents serial and batch picking plus a batch/lot recall workflow) and inFlow Connector (1.5★, 2 reviews; syncs orders, product info and stock counts, with no lot or serial mention). inFlow's own lot + serial + expiry tracking launched 2026-08-20 and is unproven. The gap is certain; the build band is a Deploi estimate, and whether a 3PL can scan per line at pack varies by 3PL.
- Reference scenario
- $20M–$100M revenue · beauty, supplements or serialized hard goods with 200–2,000 SKUs · a 3PL fulfills DTC, own warehouse ships wholesale · Shopify is the order system of record, no ERP · agency dev bench
- As of
- September 2026
Decision at a Glance
| Your profile | Verdict | Why |
|---|---|---|
| In-house fulfillment, serialized goods, under ~5,000 orders a month | BUY | Serializer at $9–$19/month (verified Sep 2026) records a serial, batch or expiry detail against each sold item, and your own packers enter it. With 6 reviews, treat it as a trial with an export test, not a platform. |
| 3PL-fulfilled, lot-controlled goods (beauty, food, supplements) | CUSTOMIZE | The reference scenario. The 3PL scans the lot at pack, a write-back stores it on the order, and a metaobject registry holds every lot's expiry and supplier, $15,000–$40,000 (Deploi estimate, illustrative). No app puts that lot on the Shopify order for you. |
| Running or adopting Cin7 Core or a WMS with lot tracking | BUY | Let the inventory platform be the system of record: Cin7 Core tracks serial, batch and expiry at receiving, picking and packing with a batch/lot recall workflow, from $349/month (verified Sep 2026). Sync to Shopify only what customer service needs to see. |
| Regulated recall duty across DTC, wholesale and retail channels | CUSTOMIZE | One registry has to answer for every channel, and each channel's fulfillment path needs its own capture step. The build grows with the channel count; an app covers one path at best. |
What Serial, lot, and expiry tracking Actually Drives
| Outcome | Impact | How it works |
|---|---|---|
| Operational efficiency | High | A recall becomes a query instead of a week of matching pick dates to lot receipts, and a 3PL mis-ship dispute is settled by the serial recorded on the order. |
| Data & insight | High | Lot-level sell-through and expiry aging by SKU show the buyer which lots sit 90 days from expiry, which Shopify's single Available count can never show. |
| Customer experience | Medium | Recall notices reach only the customers who received the affected lot, instead of every buyer of the SKU across a two-month window. |
| Retention & LTV | Medium | A warranty or authenticity question answered from the serial on the order, in one reply, keeps a high-ticket customer from opening a dispute. |
| Revenue — direct | Low | Traceability changes nothing at checkout; the money is in avoided write-offs of good stock pulled with the bad, and narrower recalls. |
Spend ceiling: Size the spend to one recall you cannot scope: notifying every buyer of a SKU across 60 days instead of the 300 customers who received the lot, plus writing off good stock pulled with the bad. A registry and write-back at $15,000–$40,000 (Deploi estimate, illustrative) costs less than one over-broad recall; Serializer at $9–$19/month (verified Sep 2026) costs less still where your own packers enter the data.
What buying enables (top apps)
- + Serial, batch or expiry details recorded against each sold item and searchable from the order, for $9–$19/month (Serializer, verified Sep 2026)
- + Full serial, batch and expiry workflows at receiving, picking and packing, plus a batch/lot recall workflow, inside Cin7 Core's WMS from $349/month (verified Sep 2026)
- + Vendor-maintained scanning UX at the pack station, which is the step a build has to design for itself
What building additionally unlocks
- + A lot and unit registry in Shopify metaobjects, up to 1,000,000 entries per definition (verified Sep 2026), that customer service, wholesale and DTC all read from
- + Per-order lot and serial write-back from any 3PL's pack scan, without moving your inventory system of record
- + Recall lists exported straight to your email platform, containing only the customers who received the lot
- + Expiry aging by lot feeding markdown and pull decisions that Shopify's single Available count cannot support
Find Your Verdict in 3 Questions
Does anyone scan a lot or serial number per line when a unit is packed?
Yes: Go to question 2.
No: Your verdict: CUSTOMIZE — the capture step is the whole job; get the 3PL or your pack station scanning per line first, then build the write-back and lookup ($15,000–$40,000, Deploi estimate, illustrative).
Do you run, or plan to run, an inventory platform with lot and serial tracking, such as Cin7 Core or a WMS?
Yes: Your verdict: BUY — let the platform be the system of record (Cin7 Core $349–$1,199/month, verified Sep 2026) and sync to Shopify only what customer service needs to see.
No: Go to question 3.
Is fulfillment in-house, with your own packers, under about 5,000 orders a month?
Yes: Your verdict: BUY — Serializer at $9–$19/month (verified Sep 2026) records the serial or batch per sold item; it carries 6 reviews, so export-test it in the trial before depending on it.
No: Your verdict: CUSTOMIZE — a metaobject lot registry plus per-order write-back from the 3PL's pack scan, $15,000–$40,000 (Deploi estimate, illustrative).
The TCC Scorecard — 12 Dimensions
TCC — Total Cost of Capability: what it actually costs to have this capability over three years, whichever way you get it. Each dimension is scored 0–5 for both paths. How we score →
| Dimension | Buy | Build | Why |
|---|---|---|---|
| Cost | |||
| Acquisition & implementation | Serializer installs in a day and Cin7 Core is a platform migration measured in months; the registry and write-back build is 5–10 weeks (Deploi estimate, illustrative), much of it 3PL coordination. | ||
| Recurring fees | Serializer is $9–$19/month and Cin7 Core $349–$1,199/month (verified Sep 2026); the build's recurring line is upkeep only, with no per-item charge. | ||
| Maintenance & upgrades | Vendors maintain the scanning UX and their own schema; the build needs ~$2,500–$8,000/yr (Deploi estimate, illustrative) for API version bumps and changes to the 3PL's confirmation feed. | ||
| Switching & exit | Serial history inside Cin7 Core or an app is a migration on exit, and a 6-review vendor's export is untested; metaobjects on your own store are already portable. | ||
| Risk | |||
| Vendor risk | A 6-review app and a 2-review connector carry the App Store side of this category, and Cin7 Core's listing still sits at its pre-acquisition handle; a build has no vendor to lose. | ||
| Security & compliance surface | Serial numbers tied to customers are warranty and authenticity data; either lane keeps them inside Shopify's or a vendor's permission model, and neither adds a public surface. | ||
| Platform-deprecation exposure | Metaobjects and order metafields are first-class, stable primitives; an app's custom item details live in that app's schema and follow its roadmap. | ||
| Value | |||
| Fit to requirement | Serializer records details on sold items and Cin7 Core tracks lots at the warehouse; only a build puts the lot on the Shopify order for every channel and every 3PL you use. | ||
| Time to market | An app this week; a registry and write-back in 5–10 weeks, gated by how fast the 3PL adds a scan step to its pack process. | ||
| Performance & scale | A metaobject definition holds up to 1,000,000 entries (verified Sep 2026), years of lots and serials; Serializer's Starter tier bills $0.25 per tracked item after 50 (verified Sep 2026), which scales the other way. | ||
| Data ownership & AI-readiness | Lot-level sell-through, expiry aging and serial-to-customer history are yours as metaobjects; inside an app or a WMS they are an export request at the worst possible time. | ||
| Focus & opportunity cost | Traceability is compliance plumbing with no storefront upside; the build is small, but the 3PL coordination costs an ops lead's attention for a quarter. | ||
The App Landscape
| App | Status | Pricing | Best for |
|---|---|---|---|
| Shopify inventory tracking | Native — First-party inventory tracks the number of Available units for a product or variant, per location. No serial number, lot or batch number, or expiry date field exists anywhere in native inventory (verified Sep 2026), so traceability never lives in Shopify unless something writes it there. | Included on every plan | Counting units, which is all it does |
| Serializer ‑ Product Tracking | Live — flagged — 4.9★, 6 reviews; young listing, Built for Shopify. Adds serial numbers, warranty or any custom item detail such as batch numbers or supplier SKUs to sold products or the POS cart, and searches orders, customers and items by that detail; expiry dates are one example field. 7-day free trial. The data is entered by whoever packs, so a 3PL has to be part of the process. | Starter $9/month plus $0.25 per tracked item after 50 free items; Unlimited $19/month (verified Sep 2026) | In-house packers on serialized goods who will export-test a 6-review app first |
| Cin7 Core | Live — 4.6★, 49 reviews; listed under its legacy DEAR Inventory slug; no Built for Shopify badge | Standard $349/month (5 users, 2 integrations, 6,000 sale orders a year, unlimited locations), Pro $599/month (10 users, 4 integrations, 24,000 orders, material requirements planning), Advanced $1,199/month (15 users, 6 integrations, 120,000 orders, advanced warehouse management); annual billing saves 8%; 14-day free trial (verified Sep 2026) | Brands adopting an inventory platform anyway, with lot tracking as one reason among several |
| inFlow Connector | Live — flagged — 1.5★, 2 reviews. The connector syncs orders, product info and stock counts with Shopify and mentions no serial, lot or expiry data. inFlow itself announced combined lot and serial tracking that traces a batch from receipt to customer on 2026-08-20, two weeks before this check; whether that data reaches Shopify through the connector is unconfirmed. | Connector free (verified Sep 2026); the inFlow subscription is priced separately and was not verified here | Existing inFlow users, once the new tracking has a track record |
| Lot registry and per-order write-back (custom) | Build lane — A lot or unit metaobject registry (lot number, SKU, supplier, received date, expiry, quantity), a write-back that stores each shipped line's lot or serial on the order as a JSON metafield from the 3PL's pack scan, and a lookup that answers which orders shipped a lot and which serial went to which customer. | $15,000–$40,000 one-time plus ~15–20% a year in upkeep (Deploi estimate, illustrative) | 3PL-fulfilled, lot-controlled goods where the recall list has to be exact |
The Build Path
- Lot and unit registry as metaobjects: A lot metaobject definition (lot number, SKU, supplier, received date, expiry, quantity received) and, for serialized goods, a unit definition keyed by serial number, each referencing the product variant. Definitions hold up to 1,000,000 entries (verified Sep 2026).
- Capture at pack: The 3PL or your own pack station scans the lot or serial per line and includes it in the fulfillment confirmation; where a 3PL cannot, a pack-station web form does the same job. Ask the 3PL in writing before scoping anything else, because this step is the whole project.
- Write-back to the order: A JSON order metafield (128KB limit, verified Sep 2026) holding a list of line, SKU, lot or serial and quantity, so a one-line shipment drawn from two lots is recorded correctly, and a return re-enters the registry.
- Recall and dispute lookup: A small admin page or Flow that answers every order that shipped a given lot, exported straight to your email platform for recall notices, and which serial went to which order for a 3PL mis-ship dispute or a warranty claim.
- Effort band
- $15,000–$40,000 build — Deploi estimate (illustrative); spans the $10–25K and $25–75K contact-form bands depending on how many fulfillment paths need a capture step
- Typical timeline
- 5–10 weeks (Deploi estimate, illustrative), paced by how fast the 3PL adds a per-line scan at pack
- Maintenance, honestly
- ~15–20% of build cost per year (Deploi estimate): roughly $2,500–$8,000/yr (Deploi estimate, illustrative) for API version bumps, changes to the 3PL's confirmation feed and new fulfillment paths. There is no subscription line and no per-item charge.
- What you own — and what you take on
- You own: the lot registry, the per-order lot and serial records, the recall lookup and the expiry aging by lot. You take on: holding the 3PL to the scan step, handling returns back into the registry, and the small upkeep above.
3-Year Total Cost of Capability
| Buy (app path) | Build (custom path) | |
|---|---|---|
| Year 0 (setup) | $5,000–$15,000 (Cin7 Core setup and migration) | $15,000–$40,000 |
| Years 1–3 (recurring) | $12,600–$21,600 (Standard to Pro tier) | $7,500–$24,000 (maintenance) |
| 3-year total | ≈$17,600–$36,600 | ≈$22,500–$64,000 |
- † All figures illustrative samples for the reference scenario — not quotes, not verified pricing.
- † Buy path: Cin7 Core as inventory system of record at the Standard or Pro tier ($349–$599/month, verified Sep 2026) plus an illustrative setup and migration cost; Serializer at $9–$19/month is the in-house alternative and prices far lower but covers less.
- † Build path: lot metaobject registry, 3PL write-back and recall lookup; three-year horizon with upkeep at 15–20% of build cost. Any 3PL fee for the added scan step is excluded from both columns.
What the Sticker Price Hides
On the buy path
- — Serializer carries 6 reviews (verified Sep 2026); test the data export in the 7-day trial before a single serial depends on it
- — Cin7 Core's serial and batch detail lives in Cin7 Core; the Shopify connector pushes stock counts, so customer service works from a second screen
- — inFlow's lot + serial + expiry tracking is two weeks old (launched 2026-08-20) and its Shopify connector lists no lot or serial sync; unproven for this job
- — Cin7 Core at $349–$1,199/month (verified Sep 2026) is an inventory-platform decision, not a traceability add-on
On the build path
- — The capture step is the whole job: if the 3PL will not scan lots per line at pack, no registry can be filled
- — Multi-lot shipments (one line, two lots) need a list, not a field; design the order metafield as JSON from day one
- — Serials on returns have to re-enter the registry, or the count drifts within a quarter
- — ~$2,500–$8,000/yr upkeep (Deploi estimate, illustrative)
What Merchants Say
Brands describe the recall week the same way: the supplier names a lot, the 3PL can say how many units of it are still on the shelf, and nobody can say which 300 customers already received it.
The recurring inventory-platform complaint is the connector, not the platform: stock counts sync fine, but the lot and serial detail stays inside the WMS, so customer service works from two screens.
If You Change Your Mind Later
If you bought and outgrow it
Serializer stores serial and batch details as custom item details on the order; export them before you cancel and check the format during the trial, because a 6-review vendor's export is the exit. Cin7 Core's lot and serial history lives inside Cin7 Core and leaves with a platform migration, which is a separate project with its own timeline.
If you built and want out
The registry and the per-order lot records are metaobjects and metafields on your store; nothing strands, and a future WMS or app reads them as-is. If you later adopt Cin7 Core or a WMS, the write-back keeps running from the new system's pack scan and the history stays continuous.
When This Answer Changes
We're watching for:
- ▸ Shopify adding lot, batch, serial or expiry fields to native inventory (none as of September 2026; inventory tracks one Available quantity per variant)
- ▸ inFlow's lot + serial + expiry tracking (launched 2026-08-20) reaching its Shopify connector, which today lists order, product-info and stock-count sync only
- ▸ Serializer's review count clearing 30, or the listing going quiet; a 6-review vendor is a trial, not a platform
Verdict change log:
No changes since first publication (September 2026).
Common Questions
Does Shopify track serial numbers, lot numbers or expiry dates?
No. Shopify's native inventory tracks a single Available quantity per product variant, and the inventory-tracking setup docs mention no serial, lot, batch or expiry field (verified Sep 2026). A merchant who needs to know which unit shipped in which order, or which lot a recall affects, keeps that data elsewhere. The options are a metafield-based registry, a small app such as Serializer, or an inventory platform such as Cin7 Core tracking lots in the warehouse.
Which Shopify app tracks lots and serial numbers?
Serializer is the one App Store listing built for it: $9/month plus $0.25 per tracked item after 50 free items, or $19/month unlimited, Built for Shopify, with 4.9★ on 6 reviews (verified Sep 2026). Six reviews makes it a trial, not a platform. Cin7 Core ($349–$1,199/month, verified Sep 2026) tracks serial, batch and expiry inside its own WMS with a batch/lot recall workflow, and pushes only stock counts back to Shopify.
How does a brand find which customers received a recalled lot?
A brand finds recalled customers by joining two records it creates itself. The first is a lot registry: lot number, SKU, supplier, expiry, quantity. The second is a per-order record of the lot behind each shipped line, which exists only if the 3PL scans the lot at pack and writes it back. Every order that shipped lot 2411-B then becomes one query. The registry and write-back cost $15,000–$40,000 to build (Deploi estimate, illustrative).
Your Next Steps
If you're going with CUSTOMIZE(matches your selected profile)
- Ask your 3PL, in writing, whether it can scan a lot or serial per line at pack and include it in the fulfillment confirmation
- Define the lot metaobject: lot number, SKU, supplier, received date, expiry, quantity received
- Build the write-back to an order metafield as a JSON list of line, SKU, lot or serial and quantity
- Ship the recall lookup first: every order that shipped a given lot, exported to your email platform
- Run one mock recall end to end before you need a real one
If you're going with BUY
- Trial Serializer for 7 days on one SKU and export the data before relying on it
- If Cin7 Core is the lane, plan it as an inventory-platform migration with its 14-day trial, not as an add-on
- Confirm who enters the serial at pack and what happens to it on a return
- Diary a re-check when a 3PL takes over fulfillment; the capture step moves with it
Official Docs & Sources
- Set up inventory tracking — Shopify Help Center
- Metaobjects — Shopify Help Center
- Locations — Shopify Help Center
Official documentation linked for verification — our verdicts and estimates are our own.
Related Decisions
Build or Buy Assortment Planning and Open-to-Buy on Shopify?
Stocky ended 2026-08-31 with no native open-to-buy replacement, and the apps that name OTB carry 12, 0 and 7 reviews. Build the planning model on data you own.
Build or Buy Inbound PO Email and PDF Capture on Shopify?
Two young apps parse emailed and PDF purchase orders into Shopify draft orders, capped near 100 a month. Above that, buy extraction and build the mapping layer.
Build or Buy Kitting at the Pick Face on Shopify?
No dedicated kitting app exists on Shopify. Assemble-to-order lives inside a WMS, and Shopify Bundles tracks component stock overall, not by location.
Build or Buy Order Merge and Consolidation on Shopify?
Two Built for Shopify apps merge same-customer orders for a few dollars per merge; nothing native does. Buy, and build only a hold window ahead of your 3PL feed.
Should You Build or Buy Your NetSuite Integration on Shopify?
NetSuite integration is the honest DEPENDS: buy a connector for standard flows, build middleware when the flows are the business.
Ready to answer a recall with a query instead of a guess?
Shopify will never hold the lot for you. We scope the capture step with your 3PL, build the registry and write-back on metaobjects you own, and ship the recall lookup first, so the affected-customer list is exact the first time you need it.
Contact us todayVerdict scored for the reference scenario above. Estimates are not quotes; app pricing carries its verification date and gets re-verified quarterly. Full scoring anchors: see the TCC methodology.
Read how we score these decisions (the TCC Framework). No affiliate links, no paid placement — no app vendor pays to appear here.