Built for supplement brands

Your bestseller doesn't expire the same day as your slowest flavor.

Standard reorder-point math treats every SKU the same. Supplement brands can't afford that -- a 24-month shelf life on your hero powder and a 9-month shelf life on a seasonal flavor need different math, not the same formula applied twice.

The specific pain

A typical supplement brand on Shopify isn't managing one product -- it's managing one formula across 4-6 flavors, 2-3 sizes, and a handful of bundles, each with its own lot, its own expiry date, and its own sell-through rate. The hero SKU (say, unflavored whey, 2lb) sells fast enough that expiry is barely a concern. The seasonal flavor (pumpkin spice, limited holiday run) sells slowly enough that a lot bought too early can expire on the shelf before it clears -- while the hero SKU, reordered on the same generic schedule, runs out mid-month and costs you real sales.

Generic reorder-point calculators don't know the difference. They compute one number from average daily sales and lead time, and that number is wrong in two directions at once: too conservative for what actually moves, too aggressive for what doesn't.

Why normal reorder planning fails here specifically

Supplement-specific factorWhy generic reorder math misses it
Lot expiration varies by formula and flavorA single "lead time + safety stock" number ignores that one lot expires in 8 months and another in 20
Flavor/SKU proliferation10-30 SKUs per formula means manually tracking expiry per lot in a spreadsheet doesn't scale past a handful of products
Repeat-purchase / subscription demandSubscription cadence creates predictable demand spikes generic forecasting smooths over instead of anticipating
Bundles combine multiple expiry datesA bundle's true shelf life is its shortest-dated component, not an average
Supplier lead times + MOQ/case packsA supplier's minimum order quantity can force you to buy more than you can sell before the lot expires -- generic tools don't flag that tension
Promotional spikes (holiday flavors, bundles)A demand spike pulls the average up, which can trigger over-ordering for the slow season right after
Slow-moving variants sitting next to hero SKUsAggregate "total inventory value" views hide that one specific flavor is quietly heading toward expiry while the catalog average looks fine

How this actually plays out

The two failure modes that cost supplement brands the most money are opposites, and they usually happen on the same shelf at the same time:

Stockout of a hero product. Your best-selling SKU runs out because the reorder point was calculated the same way as your slow movers -- too conservative for a fast seller. Every day it's out is a lost sale, and worse, a customer who may not come back for a restock notification.

Expiry before sell-through on a slow mover. A seasonal or lower-velocity flavor gets reordered on the same schedule as everything else. The new lot arrives, stacks behind old stock that hasn't cleared, and a portion of it expires before it's ever sold -- cash that's gone, not just tied up.

The Foreshelf workflow for this

  1. Import your batch/lot data. Foreshelf tracks quantity remaining and expiry date per lot, per SKU -- not one shelf-life number for the whole catalog.
  2. Marcus computes sell-through per lot. Using your real sales velocity for that specific SKU, Foreshelf projects whether the current lot (and any lot you're considering ordering) will sell through before its expiry date.
  3. The reorder decision accounts for both directions. If a SKU is trending toward a stockout, Marcus flags it as CRITICAL and proposes a purchase order. If a SKU's current stock won't sell through before expiry, Marcus recommends against reordering -- even if the stock looks low on a simple days-of-cover chart.
  4. You approve, Marcus doesn't act alone. Every purchase order or discount action Marcus proposes requires your explicit approval, with a 60-second window to cancel after you approve it.

A worked example (illustrative numbers, not a specific customer)

Seasonal flavor, 120 units in stock, selling 3 units/day, lot expires in 30 days.

At 3/day, the lot sells through in 30 days if velocity holds steady -- right at the edge. A generic reorder-point tool sees 120 units and 30 days as "adequate cover" and stays quiet. Foreshelf's expiry-aware check runs the same math against the expiry date specifically: if velocity drops even slightly (a realistic risk for a seasonal flavor as the season ends), a meaningful fraction of that lot won't clear in time -- and flags it as a discount/liquidation candidate now, while there's still time to act, instead of after it's already spoiled.

Which Foreshelf features apply here

Batch & expiry tracking

Per-lot quantity and expiry date, FEFO-ordered.

Expiry-aware reorder

The core wedge -- reorder math that checks expiry, not just velocity.

Marcus proposals with approval

Purchase orders and discount actions, never executed without your sign-off.

Supplier lead time per SKU

Different formulas from different suppliers, tracked separately.

Not yet built: automatic MOQ/case-pack rounding on suggested order quantities. If your supplier has a hard minimum order size, you'll still need to round up manually for now.

Setup

Install from the Shopify App Store, connect your store (read access to products, orders and inventory), and import your current batch/expiry data via CSV -- no expiry setup is required to see your first forecast, since Foreshelf works from sales history alone if you don't sell anything with a shelf life. Expiry tracking only activates for the SKUs you actually import lot data for.

FAQ

Do I need to track expiry for every SKU?

No. Import batch data only for the SKUs that actually have a shelf life. Non-perishable accessories or merch can be left alone -- Foreshelf forecasts them on sales history the same way any inventory app would.

What if I sell bundles combining multiple formulas?

Track expiry on the underlying components. A bundle's real shelf life is its shortest-dated ingredient -- Foreshelf's forecast doesn't currently compute a bundle-level expiry automatically; you'd track the component with the tightest date.

Does this replace my supplement compliance/lot-recall system?

No. Foreshelf is a reorder-decision tool, not a compliance or recall-management system. If you need FDA-level recall traceability, that's a different category of tool.

Compared to a manual spreadsheet

A spreadsheet can track lot expiry dates fine, for a while. What it can't do is combine that expiry date with a live sales-velocity number and tell you, today, which of your 20 flavor/size combinations is quietly heading toward a discount decision versus which one is about to stock out. That comparison, done by hand across dozens of SKUs every week, is the actual work Foreshelf removes -- not the data entry, the constant re-checking.

See what's actually at risk in your catalog

Free plan, no credit card. Import your data and see your first forecast in minutes.