At a glance
Per-SKU current stock level compared against 30-day sales velocity, expressed as “days of stock remaining”. The card the buying team should refresh weekly; SKUs with <14 days of stock are urgent reorders, SKUs with >180 days are dead inventory candidates. The single most actionable inventory-management card in BigCommerce.
| What it counts | For each SKU: current_inventoryLevel ÷ (30D_units_sold ÷ 30) = days_of_stock_remaining. Ranks the catalogue by velocity-weighted urgency, with a colour band: red <14 days, amber 14-30 days, green 30-90 days, grey 90-180 days, blue >180 days (overstock). |
| VAT / tax treatment | n/a (unit-count and days-of-stock metric). |
| Shipping | n/a. |
| Discounts | n/a. |
| Refunds | Refunded units add back to stock (BC re-credits inventory on refund); we use the live inventoryLevel field, so refunds are already reflected. |
| Cancelled / voided orders | Cancelled-pre-fulfilment returns inventory; cancelled-post-fulfilment does not. We use BC’s net inventoryLevel. |
| Currency | n/a. |
| Channels / sources | Sales velocity sums across all channels; stock level is per-product (or per-variant if MLI is configured). Stores using Multi-Location Inventory see a per-location split available via toggle. |
| Variants | The card defaults to variant-level (a King size duvet and a Queen size duvet have different velocities and stock). Toggle to product-level for the merchandising-overview view. |
| B2B Edition note | B2B portal orders (case-quantity or wholesale) have very different velocity profiles than retail. Filter to retail / B2B for the segment that matters; mixing them inflates apparent velocity on shared SKUs. |
| Reorder lead-time gotcha | ”14 days of stock” means 14 days at current velocity, not “you have 14 days to act”. Subtract supplier lead-time (typically 7-21 days for domestic, 35-90 days for international shipping); the practical reorder window is days_of_stock minus lead_time. SKUs at 14 days with a 35-day lead time are already overdue. |
| Time window | 30D for velocity calculation; stock level is real-time. |
| Alert trigger | None on this card directly. Pair with Inventory Alerts for low-stock alerts. |
| Roles | owner, operations |
Calculation
Calculated automatically from your BigCommerce data. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.Worked example
A US homewares brand on BigCommerce Pro, 30-day window 14 Apr 26 to 14 May 26.| SKU | Product | Current stock | 30D units sold | Days remaining | Band | Action |
|---|---|---|---|---|---|---|
LIN-DUV-K-NAT | ”Linen duvet, King, natural” | 18 | 142 | 3.8 days | Red | REORDER NOW (45-day lead time = was overdue 41 days ago) |
TWL-6PK-IVR | ”Bath towel set 6pk, ivory” | 42 | 96 | 13 days | Red | Reorder this week |
LMP-CRMC-WHT | ”Ceramic table lamp, white” | 156 | 240 | 19 days | Amber | Reorder within 2 weeks |
THR-WLN-CHC | ”Wool throw, charcoal” | 220 | 88 | 75 days | Green | Healthy |
MUG-CRM-04 | ”Cream mug, set of 4” | 480 | 80 | 180 days | Grey | Slowing, monitor |
PNT-DCO-RND | ”Decorative round plate” | 1,200 | 48 | 750 days | Blue | OVERSTOCK, mark down or cut |
- The Linen duvet King at 3.8 days remaining with a 45-day lead time is a five-alarm event. It’s mathematically already going OOS for 41 days; the question is when, not if. Action sequence: (1) emergency air freight from supplier if available; (2) raise price 15-20% to slow velocity (extends days remaining); (3) prepare back-in-stock email list using BC’s native back-in-stock notify; (4) consider a “preorder, ships 30 May” button if supplier confirms a date. Doing nothing forfeits 6+ weeks of revenue on a hero SKU.
- The towel set at 13 days is the next-priority reorder. Lead time of 21 days for towels means it’ll go OOS for 8 days; tolerable but not ideal. Confirm reorder is in flight; if not, place today.
- The ceramic lamp at 19 days is the routine planning case. Reorder within 2 weeks; healthy operational rhythm.
- The wool throw at 75 days is the buy-team’s “do nothing” pile. Healthy stock-velocity ratio; the SKU is doing its job.
- The cream mug set at 180 days is starting to slow. Velocity has dropped; if it persists, this SKU will move to overstock band. Monitor for 4 weeks; if velocity hasn’t recovered, plan a markdown or reduce next-cycle reorder.
- The decorative plate at 750 days of stock is dead inventory. 1,200 units selling 48/month means 25 months to clear at current velocity. Cost to the business: storage + working capital + opportunity cost of the cash. Action: 30-50% markdown to clear in next 90 days, or write off and donate. Holding dead stock is more expensive than selling at a loss.
- Linen duvet emergency reorder today, in parallel: raise price, prepare back-in-stock notify, evaluate preorder button.
- Towel set and ceramic lamp reorders this week.
- Cream mug velocity monitoring start a 4-week trend watch.
- Decorative plate markdown plan decide on 30%, 40%, or 50% off; project clear-time at each price; communicate the markdown plan to merchandising.
- Weekly reorder cadence institutionalise this card as the buy-team’s Monday-morning ritual; every red SKU gets a decision.
Sibling cards merchants should reference together
| Card | Why pair it with Stock vs Sales |
|---|---|
| Inventory Alerts | The store-wide low-stock alert headline. This card is the per-SKU drill-down. |
| BC Channel OOS per Channel | Currently-OOS SKUs (already at zero); this card shows the trajectory toward zero. |
| BC Inventory Distribution | Healthy-vs-OOS-vs-overstock distribution. Tells you whether your portfolio is balanced or skewed. |
| BC Top SKUs | The velocity ranking; cross-reference to identify high-velocity-low-stock SKUs (the most urgent reorders). |
| BC Top SKUs Revenue | The revenue-impact view; high-revenue-low-stock SKUs are the highest-leverage reorders. |
| BC Alert OOS Spike | The OOS-trend alert; fires when many SKUs simultaneously approach zero. |
| Bottom Products | The flip view; SKUs in this card with >180 days of stock are bottom-product candidates. |
shopify.inventory_alerts | Cross-platform peer for stock-velocity reporting. |
Reconciling against the vendor’s own dashboard
Where to look in BigCommerce Control Panel: Products → View shows currentinventoryLevel per product. Reports → Inventory Snapshot on Pro / Enterprise plans gives a daily inventory level snapshot but does NOT calculate days-of-stock; you’d combine it with the Sales Reports manually. There’s no native days-of-stock view in BC, this card is one of the highest-value adds.
For warehouse-side truth, your ERP / 3PL system is the source-of-truth for physical inventory; BC’s inventoryLevel should match the ERP within sync-lag tolerance.
Why our number may legitimately differ from BC catalogue:
| Reason | Direction |
|---|---|
| Multi-Location Inventory (MLI). Stores using MLI track per-location stock; we sum across locations by default. Per-location view available via toggle. | Different aggregation by default |
In-flight stock. Stock that’s been ordered from supplier but not yet received doesn’t count in BC’s inventoryLevel; we use BC’s level only. To include in-flight stock, integrate ERP signals via the Vortex Mind ingestion API. | Vortex IQ LOWER than warehouse intent |
Reserved stock. BC reserves inventory for orders in Awaiting Payment / Pending states; we use net inventoryLevel. Pending orders that fail will release stock back. | Vortex IQ matches BC live |
| Velocity calculation period. We use 30-day rolling velocity; BC reports may use 7-day, 30-day, or other windows. | Different denominators |
Refund / return restocks. Refunded units that go back to inventory count in inventoryLevel; if your fulfilment doesn’t actually restock returned items (damaged returns), the BC level overstates the practical stock. | Vortex IQ may overstate practical stock |
| Card | Expected relationship | What causes legitimate divergence |
|---|---|---|
netsuite.ns_inventory_level | NetSuite ERP inventory should match BC inventory within sync-lag (typically 5-15 minutes). | Sync-lag at peak hours; physical-vs-system discrepancies during cycle counts. |
shipstation.ss_in_flight_stock | In-transit POs from suppliers; useful to add to days-of-stock for true reorder timing. | Cross-reference manually; not auto-overlaid in this card. |
Known limitations / merchant FAQs
My new SKU has 3 days of stock and 2 units sold, real urgency or noise? Almost certainly noise. Velocity calculations on SKUs with <50 lifetime units sold are unreliable; one good day distorts the 30-day average. Configure a min-lifetime-units filter (set to 30-50) to suppress new-SKU false positives. Or look at the absolute stock level: if 3 days = 6 units, that’s not necessarily an emergency. Why does the days-remaining shift week-over-week even when stock is stable? Because velocity is rolling 30-day. A high-sales day rolling out of the window or a low-sales day rolling in changes the denominator. Smaller week-over-week shifts (±15%) are normal; larger shifts (>30%) signal real velocity change. Should I reorder when days remaining hits lead time, or before? Before, with safety stock buffer. A SKU with 21-day lead time should be reordered when days-remaining hits ~30 days, giving 9 days buffer for delivery delays, customs, supplier issues. Critical hero SKUs deserve 14-day buffer (reorder at 35 days remaining). Tail SKUs can run to lead-time exact. My MLI store, do I see per-location days-of-stock? Yes, toggle the per-location view. Per-location matters because a SKU with 30 days at Warehouse A and 0 days at Warehouse B is OOS for customers routed to B. Multi-location stores often have larger total stock than single-location but worse practical availability. Why are some SKUs showing >1000 days of stock? Either (a) the SKU’s velocity is essentially zero (deprecated, seasonal-off-season, niche); (b) a recent inventory adjustment reset stock to a high number without selling many. Both are valid; the action is markdown / cut for (a), routine for (b). Should I cut all overstock automatically? No. Some overstock is strategic: pre-Black-Friday build, seasonal pre-stock for summer, B2B-volume products with long sell-through. Apply judgement: if the SKU has a clear seasonal sell-through coming, hold; if it’s drifted into overstock with no plan, mark down or cut. My subscription SKUs show low days remaining but I auto-reorder, do I need to act? No, if your subscription auto-renewal triggers a supplier auto-reorder. Tag subscription SKUs withauto_reorder = true in BC; configure the card to suppress alerts on tagged SKUs. The card is for human-decision SKUs; subscription auto-loops should be silent here.
What happens to the days-remaining when I’m OOS?
Zero stock means days = 0 by definition. The card surfaces OOS at the top of the red band; the action is restock urgently or hide the listing. Cross-reference BC Channel OOS per Channel.
Why does my variant view show different urgency than product view?
Variants have independent stock and velocity. The product view averages; one urgent variant (King size duvet at 3 days) gets diluted by healthy variants (Queen size at 60 days). Always reorder at variant level for accuracy; use product view only for merchandising / category planning.
A high-velocity SKU dropped to 0 velocity overnight, what happened?
Either (a) the SKU went OOS and orders stopped (cross-check inventory level); (b) the SKU was hidden / disabled (check availability field); (c) a competitor pricing move (cross-check pricing); (d) marketplace listing issue (cross-check Channel Manager). Run the diagnostic; this card surfaces the symptom, not the root cause.
Can I export this card to share with my buyer / supplier?
Yes, the card supports CSV export. Common workflow: export weekly, share the red-band SKUs with the buying team’s reorder spreadsheet, share the blue-band overstock with merchandising for markdown planning.
My B2B portal sells in case quantities, does the velocity reflect cases or units?
BC stores units regardless of sale unit; velocity here is in units. If your case = 12 units and you sold 5 cases, velocity = 60 units. Adjust mental math accordingly when planning reorders in case quantities.