Build vs. Buy>Inventory & Operations>Serial, lot, and expiry tracking

Build or Buy Serial, Lot and Expiry Tracking on Shopify?

Written by Deploi EditorialReviewed by Martin Dejnicki, Director of SEO & AI SearchUpdated September 2026Pricing verified September 2026

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

VerdictCUSTOMIZE (capture at pack, write back to the order as metafields, recall lookup) for 3PL-fulfilled lot-controlled goods · BUY Cin7 Core when an inventory platform is the plan anyway · Serializer only for in-house packers who accept a 6-review vendor
Buy score
4.8
Build score
6.6
Confidence
MediumRead 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 profileVerdictWhy
In-house fulfillment, serialized goods, under ~5,000 orders a monthBUYSerializer 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)CUSTOMIZEThe 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 trackingBUYLet 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 channelsCUSTOMIZEOne 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

OutcomeImpactHow it works
Operational efficiencyHighA 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 & insightHighLot-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 experienceMediumRecall notices reach only the customers who received the affected lot, instead of every buyer of the SKU across a two-month window.
Retention & LTVMediumA warranty or authenticity question answered from the serial on the order, in one reply, keeps a high-ticket customer from opening a dispute.
Revenue — directLowTraceability 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

  1. 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).

  2. 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.

  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 →

DimensionBuyBuildWhy
Cost
Acquisition & implementationSerializer 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 feesSerializer 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 & upgradesVendors 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 & exitSerial 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 riskA 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 surfaceSerial 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 exposureMetaobjects 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 requirementSerializer 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 marketAn 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 & scaleA 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-readinessLot-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 costTraceability 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

AppStatusPricingBest for
Shopify inventory trackingNativeFirst-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 planCounting units, which is all it does
Serializer ‑ Product TrackingLive — flagged4.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 CoreLive4.6★, 49 reviews; listed under its legacy DEAR Inventory slug; no Built for Shopify badgeStandard $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 ConnectorLive — flagged1.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 hereExisting inFlow users, once the new tracking has a track record
Lot registry and per-order write-back (custom)Build laneA 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
Illustrative cumulative cost over 36 months$0$11k$22k$32k$43kMo 0Mo 12Mo 24Mo 36Buy (app path)Build (custom path)
Illustrative cumulative cost: Cin7 Core at the Standard tier runs below the build across three years, but only if you wanted an inventory platform anyway; the lot detail still stays inside Cin7 Core. Where the 3PL already scans lots, the build shrinks to the write-back and lookup and lands at the low end of its band.
  • 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.
community-reported (2026 research corpus)
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.
app-store 1–2★ review theme

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)

  1. Ask your 3PL, in writing, whether it can scan a lot or serial per line at pack and include it in the fulfillment confirmation
  2. Define the lot metaobject: lot number, SKU, supplier, received date, expiry, quantity received
  3. Build the write-back to an order metafield as a JSON list of line, SKU, lot or serial and quantity
  4. Ship the recall lookup first: every order that shipped a given lot, exported to your email platform
  5. Run one mock recall end to end before you need a real one

If you're going with BUY

  1. Trial Serializer for 7 days on one SKU and export the data before relying on it
  2. If Cin7 Core is the lane, plan it as an inventory-platform migration with its 14-day trial, not as an add-on
  3. Confirm who enters the serial at pack and what happens to it on a return
  4. Diary a re-check when a 3PL takes over fulfillment; the capture step moves with it

Official Docs & Sources

Official documentation linked for verification — our verdicts and estimates are our own.

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 today

API & integration development

Verdict 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.

No affiliate links. No paid placement. We make money building and integrating solutions — not on referral fees.