Replenishment is a rate, a position and a rule, kept apart

A shelf goes empty for one of three reasons: the rate was wrong, the position was wrong, or the rule that joins them was wrong. Static minimums bake all three into one number that nobody can audit. A replenishment dataset stores them separately: how fast the item sells here, what is on hand and coming, and the target the two are compared against. Then the need is a subtraction anyone can check, and the fix for an empty shelf is visible: re-forecast, recount, or re-parameter.

The Cybex Merchandising & Replenishment dataset is five facts on one item and one site. It sits between the planning dataset, which owns the budget and the buy, and the allocation dataset, which owns the DC leg and store balancing. This one owns the store-level stock status, the replenishment parameters, the need at SKU and site, and the service outcome. Nothing here is specific to one retailer: parameter names, ABC scopes, horizon lengths and the private label convention are mapped to generic values at load time.

Rate
How fast, here
One de-seasonalised weekly rate per style and colour, apportioned to the store and size by index. Never re-derived per report.
Position
What is on hand and coming
On hand, DC on hand, on order, allocated and inbound per SKU and site, with the weekly sales history beside them.
Rule
Target and trigger
Cover weeks, safety, presentation minimum, min and max, reorder point and quantity, review cycle, lead time. Stored, dated, and read by the engine.
Source
DC first, then vendor
Need is filled from warehouse stock before a vendor reorder is raised; private-label need becomes a production run against blank supply.

Five facts, one item and one site

FactGrainQuestion it answersLoaded from
Stock statusOne row per style and colour per site (SKU beneath), as of a dateWhat is here, what is coming, how is it selling, and how many weeks will it last?Location stock, DC stock, open POs, allocations, weekly and monthly sales buckets, receipts
Replenishment parametersOne row per SKU (or style) and site, versionedWhat are we trying to hold here, and when do we act?Item and location parameters, ABC class, vendor lead time, review calendar, planner overrides
Demand and sales rateOne row per style and colour, with store and size indicesHow fast does it sell, de-seasonalised, and what will it sell over each horizon?Weekly sales history, seasonality index, weeks in stock, store index, size curve
Replenishment needOne row per SKU, site and source (DC fill, vendor reorder, production run)How many units, from where, by when, and in what priority?Stock status, parameters, demand, DC availability, blank supply, open commitments
ServiceOne row per SKU, site and week; forward cover beneath itWere we in stock, what did an empty shelf cost, and what will cover look like next week?Daily stock history, sales rate, forward cover projection, receipts due
Stock and sales ledger location and DC stock · open POs · weekly sales · seasonality · parameters · lead times one identity: style · colour · size · site, as of a date Statusstyle × siteon hand, WOS ParametersSKU × sitemin, max, cover Demandstyle × colourrate × indices NeedSKU · site · sourceDC, vendor, print ServiceSKU · site · weekin-stock, lost sales BI: status, reorder, ABC WOS, sales rate, in-stock AI: forecast, suggest targets, orders, stockout risk

Figure: the five facts share item and site; the need row names its source so a DC fill, a vendor reorder and a production run are never confused.

Generic dataset attributes

Attributes are grouped by role. BI marks the ones the stock-status, reorder and stockout reports aggregate; AI marks the ones the forecasting, parameter and suggestion engines consume. Most are both.

Stock status

GroupAttributesNotesUsed by
IdentityStyle, Colour, SKU, Site, Site type, Region, Department, Class, Vendor, Season, Category, Name-drop flag, As-of date, First received, Last received, Last saleCategory separates clothing, souvenirs and blanks; a blank is supply, not a store item, and is excluded from store status by category.BIAI
PositionOn hand, On hand at retail and cost, DC on hand, On order, Allocated, Inbound transfer, Committed stock, Minimum on hand (as set), Received in periodCommitted = floored on hand + on order + inbound. DC on hand is carried on the store row so the fill source is visible without a join.BIAI
Sales historyWeekly units W1 to W6 (completed weeks), W0 (in progress, display only), Monthly M1 to M4, Quarterly Q1 to Q4, Halves, Trailing year units and sales, Markdown units, Sales at retail, Gross marginBuckets are computed from the sales fact against the retail calendar; W0 is shown but never enters a rate.BIAI
DerivedSales rate (units per week at this site), Weeks of supply (committed ÷ rate), Weeks in stock, Stock-to-sales, Sell-through, Turn, Cover band (stockout, under, balanced, over)Rate at site = chain base rate × store index; WOS is committed cover at that site, so a store is judged on what it will have.BIAI

Replenishment parameters

GroupAttributesNotesUsed by
IdentitySKU or Style, Site, Parameter set version, Effective date, Set by (rule, planner, model), ReasonParameters are versioned so a change in service can be traced to a change in rule.BIAI
TargetsCover weeks, Safety weeks, Presentation minimum (units to look stocked), Minimum on hand, Maximum on hand, Target on hand (derived), Reorder point, Reorder quantity, Pack or case multipleTarget on hand = rate × (cover + safety), floored at the presentation minimum and capped at maximum or floor capacity.BIAI
SupplyPrimary source (DC, vendor direct, private label production), Vendor, Lead time (weeks), Review cycle (days), Minimum order, Order multiple, DC ranged flagLead time and review cycle set how far ahead the need must be seen; DC ranged says whether a fill is possible at all.BIAI
ClassificationABC class (scoped and dated), Lifecycle stage, Replenishable flag (core versus one-time buy), Seasonal window, Exclude flag with reasonABC drives service targets and review frequency; a one-time buy is never reordered by rule.BIAI

Demand and sales rate

GroupAttributesNotesUsed by
IdentityStyle, Colour, Season code, Lifecycle stage, First received, Weeks in stock, Weeks used in the baseWeeks used caps the averaging window at the weeks the item has actually been in stock, floored at one.AI
RateDe-seasonalised base weekly rate, Seasonal weight of the base window, Seasonality index by week, Forward factors for 4, 13 and 26 weeks, Forecast 4, 13, 26 and 52 weeksBase = average of completed weeks ÷ their seasonal weight; the 52-week horizon carries no factor because it spans one cycle.AI
ApportioningStore index per style, Size index per style, Cluster indexBoth sum to one per style, so a store or size rate rolls back to the chain rate exactly.AI
ProductivityGross margin trailing 12 months, Inventory at cost, GMROI, Turn, Sell-through, Full-price share, ABC rankDecides which items earn tighter service targets and which should not be replenished at all.BIAI
QualityStockout weeks excluded from the base, Data points in window, Rate confidenceA week out of stock is not a week without demand; it is dropped from the base and flagged.AI

Replenishment need

GroupAttributesNotesUsed by
IdentityRun id, Run date, Horizon (4, 13, 26, 52 weeks), SKU, Style, Colour, Size, Site (or DC for a vendor reorder), Source (DC fill, vendor reorder, production run), Size basis (model, style, colour)Horizon is discrete and matches the demand fact; a need is never a linear extrapolation.BIAI
CalculationForecast for horizon at site, Target on hand, Committed stock, Need (target + forecast − committed, floored at zero), Need by size (largest-remainder rounded)Size rounding ties exactly to the colour total so a transfer or PO never drifts from the need that justified it.BIAI
Source resolutionDC available for the SKU, DC fill quantity, Residual after DC, Vendor reorder quantity (rounded to multiple and minimum), Blank supply and private label quantity, Reason not filled (not ranged, DC short, below minimum, one-time buy)DC fill is resolved before a vendor reorder; the residual and its reason are the buying and ranging agenda.BIAI
PriorityPriority score (ABC, cover band, days to stockout, margin), Private label priority, Order-by date (from lead time and review cycle), Suggested PO groupPriority orders the work; order-by date says when the reorder must be placed to land before the shelf empties.BIAI
OutcomeAccepted quantity, Transfer or PO or work-order reference, Status, Landed date, Fill rate versus needCloses the loop so service can be attributed to the action taken or not taken.BIAI

Service

GroupAttributesNotesUsed by
IdentitySKU, Site, Retail week, Day (beneath), DC serving the site, ABC classWeek grain for reporting, day grain for the stockout duration.BI
In-stockDays in stock, Days out of stock, In-stock % (demand-weighted), Stockout flag, Stockout start and end, Positions with live demand at zeroWeighted by demand so a stockout on a fast seller counts more than on a slow one.BIAI
Cost of serviceLost sales units (rate × days out), Lost sales at retail, Lost margin, Overstock units (beyond 12 weeks cover), Overstock at retail, Aged unitsLost sales are an estimate from the rate; the method is stored with the number.BIAI
Forward coverForward weeks of supply by week (committed − forecast, week by week), Week of projected stockout, Receipts due by week, Cover after receiptsProjects the position forward so a stockout is seen before it happens, not after.BIAI
DC serviceUnit fill %, Order fill %, On-time ship % (when the WMS supplies order grain)Reserved columns; populated from the WMS distribution module rather than inferred from movement.BI
RateAtSite = BaseRate(style, colour) × StoreIndex × SizeIndex  ·  WOS = (OnHand⁺ + OnOrder + Inbound) ÷ RateAtSite
TargetOnHand = max(PresentationMin, RateAtSite × (CoverWeeks + SafetyWeeks)), capped at MaxOnHand
Need = max(0, TargetOnHand + Forecast(horizon) − Committed)  ·  DC fill first, vendor reorder for the residual
LostSales = RateAtSite × DaysOut ÷ 7  ·  ForwardWOS(week n) = (Committed + ReceiptsDue(≤n) − Forecast(≤n)) ÷ RateAtSite

Functional areas and what each reads

Functional areaReadsDeciding attributesBI outputAI output
Stock status and sales rateStock status, DemandOn hand, DC on hand, on order, weekly buckets, rate, WOS, stock-to-salesStock status by vendor, department and style; sales rate by style and vendor; stock-sales analysis by class, size and SKU; KPI tilesRate quality flags; cover-band drift alerts
Parameter managementParameters, Demand, ServiceCover, safety, presentation minimum, min and max, reorder point and quantity, ABC, lead timeParameter grid by SKU and site with versions; exceptions where minimum exceeds target or target exceeds capacityRecommended parameters per SKU and site from rate, variability, ABC and service target; simulation of service versus stock
Store replenishment from DCNeed (DC fill), Stock statusTarget, committed, DC available, ranged flag, priorityReplenishment lists by category and store; DC-fill quantities; residual by reasonFill prioritisation when the DC is short; predicted stockouts the fill prevents
Vendor reorderNeed (vendor), ParametersResidual after DC, lead time, order multiple, minimum order, order-by dateStock reorder lists by vendor, location and name-drop; suggested PO groupsSuggested reorder quantities per style, colour and size at the chosen horizon; order timing
Private-label private label planningNeed (production run), DemandBlank supply, private label forecast, private label priority, size curve by blankPrivate label priority and PO lists; cut versus buy by colour and sizeProduction run suggestions that respect finished stock and blank availability
ABC and prioritisationDemand, ParametersABC class and scope, GMROI, turn, marginABC analysis by style; colour forecast by ABC; service targets by classDynamic reclassification; service-target optimisation by margin contribution
Stockout and lost salesServiceDays out, lost sales, in-stock %, positions at zero with demandStockout lists by DC region; in-stock trend; lost sales by class and storeStockout risk by SKU and site for the coming weeks; root-cause split (rate, position, rule)
Forward coverService (forward), NeedForward WOS by week, receipts due, projected stockout weekForward weeks-of-supply matrix by style and week; receipts overlayReorder timing that lands before the projected stockout week

Rules the dataset carries

Rate and position

  • One rate, apportioned. Store and size rates come from the chain base rate and the indices; no report or engine derives its own rate from raw rows.
  • Never the week in progress. The base averages completed weeks the item was in stock; stockout weeks are excluded and flagged.
  • Cover is committed cover. WOS divides floored on hand plus on order plus inbound by the rate at that site.
  • Sales history is bucketed once. Weekly, monthly, quarterly and annual buckets are computed against the retail calendar in the ETL and read everywhere.

Parameters and need

  • Parameters are data the engine reads. A minimum maintained by the planner feeds the target calculation; a lever nobody reads is not a lever.
  • Target before need. Target on hand is computed from rate, cover, safety and presentation minimum, then need is the subtraction; the two are stored separately so each can be audited.
  • DC first, vendor for the residual. A need is filled from warehouse stock the item is ranged for before a reorder is raised; the residual carries its reason.
  • Discrete horizons, rounded sizes. Need is sized at 4, 13, 26 or 52 weeks and split to size with largest-remainder rounding so the order equals the need.

Service

  • In-stock is demand-weighted. A position with no demand does not count as a stockout; a fast seller at zero counts more than a slow one.
  • Lost sales state their method. Rate times days out, with the rate version recorded, so the estimate can be reproduced and challenged.
  • Forward cover, not just current. The projection subtracts forecast week by week and adds receipts due, so the stockout week is known in advance.
  • DC fill and on-time come from the WMS. Movement history cannot say what was demanded; those columns wait for order grain rather than being inferred.

Process workflow

The replenishment cycle is nightly for status and need, weekly for the reorder review. The Hub runs the left half unattended; planners and buyers run the middle; the AI layer parameterises and suggests ahead of the review and measures service behind it.

01
Capture
Sales, receipts, transfers, adjustments and open orders land; parameters and lead times are maintained.
02
Status
Nightly: stock status per style and site with buckets, rate, WOS and cover band; service for the elapsed day.
03
Forecast and target
Base rate and horizons refreshed from completed weeks; target on hand per SKU and site from the parameters.
04
Compute need
Need per SKU and site; DC fill resolved first; residual to vendor reorder or production run with priority and order-by date.
05
Review
Planners work the reorder and replenishment lists; parameter exceptions cleared; suggested quantities accepted or adjusted.
06
Execute
DC picks and ships; POs raised against OTB; production work orders released; references written back to the need rows.
07
Measure and learn
In-stock, stockouts, lost sales and forward cover tracked; parameter recommendations and ABC refreshed from service outcomes.

Cadence

WhenStepOutputOwner
ContinuousCaptureStock, orders and sales current to the last transactionPOS, WMS, purchasing
NightlyStatus, forecast, target, needStock status, rates, targets, need by source with priority, service for the dayAI Data Hub
DailyDC replenishmentStore fill lists released to the DCAllocation planner, DC
WeeklyReorder reviewVendor reorders and production runs accepted; POs raised; parameter exceptions clearedBuyers, planners
WeeklyService reviewIn-stock, stockouts, lost sales, forward cover by class and storeMerchandise planning, store operations
MonthlyLearn and tuneParameter recommendations, ABC refresh, seasonality and index refreshPlanning, data science

Where BI ends and AI begins

BI on the replenishment dataset

QuestionWhat is here, how fast it sells, what is short
UnitPositions, rates, WOS, need, in-stock
SurfaceStock status, reorder lists, stockout, forward cover matrix
RulesOne rate, committed cover, DC first
OutputA list a planner fills or orders

AI on the same dataset

QuestionWhat should the target be, how much to order, what will stock out
UnitForecasts, parameters, suggestions, risks
SurfaceSuggested orders, parameter proposals, insight pages
RulesLearned from service and sell-through
OutputA target and a quantity with a stockout it prevents

Both read the same five facts. The WOS a planner sees in stock status is the WOS the target was computed from, and the stockout the service report records is the one the forward cover predicted.

What a conforming dataset delivers

Target outcomes from a Merchandising & Replenishment dataset deployment

Empty shelves with a cause. Every stockout can be attributed to rate, position or rule, because the three are stored apart and the target between them is auditable.

Need resolved to its source. DC fill first, vendor reorder for the residual, production run for private label, each with a reason and an order-by date, posted against the plan.

Service measured forward and back. Demand-weighted in-stock and lost sales for the week behind; forward cover and stockout week for the weeks ahead.

5
Facts on one item and site
3 sources
DC fill, vendor reorder, production run
W1–W6
Completed weeks in the rate, never W0

Deployment approach

01
Map stock, orders and parameters · Week 1

Map location stock, DC stock, open orders and allocations; the parameter fields the client maintains today (minimums, reorder points, maximums) and which of them the engine will read; vendor lead times and review cycles; the DC-ranged flag.

02
Status and demand · Weeks 2–3

Build the stock status fact with calendar buckets, the demand features from completed weeks with stockout weeks excluded, and store and size indices. Publish stock status, sales rate, stock-sales analysis and ABC.

03
Targets, need and lists · Week 4

Compute targets from the parameters, need by source with DC-first resolution, priority and order-by dates; publish replenishment, reorder, stockout and private label lists; prove need ties to target and committed stock.

04
Service and learning · Weeks 5–6

Switch on the service fact with demand-weighted in-stock, lost sales and forward cover; connect need rows to transfers, POs and work orders; start parameter recommendations and the monthly ABC and index refresh.