Econometric decomposition · Merchandising

SKU Sales Decomposition — What's Really Moving the Number

When ecommerce mattress sales move period-over-period, how much is new launches vs discontinued SKUs vs genuine like-for-like change — and which SKUs are silently collapsing?
Illustrative · synthetic data

Where the −$2.0M actually came from

Melitz-Polanec splits the YoY change into entering / exiting / continuing SKUs; the continuing block is Shapley-split into traffic, conversion, and price.
The −3.8% headline hides a −$4.3M like-for-like decline. Continuing SKUs lost −$2.1M traffic and −$3.4M conversion (only +$1.2M price offset) — a −$4.3M real drop papered over by +$6.2M of new launches. The silent killer is conversion, concentrated in four SKUs the CUSUM monitor flagged weeks before the trend showed up in the P&L.

CUSUM-flagged SKUs — conversion collapsing

Per-SKU cumulative-sum change detection auto-flags a break in conversion before the noisy weekly number reveals it.
SKUCategoryConv Δ QoQFlagged
Hybrid King 12"Mattresses−38%Week 22
Adjustable Base ProBases−31%Week 20
Cooling Gel PillowAccessories−27%Week 23
Memory Foam QueenMattresses−22%Week 21

Continuing-SKU drivers (Shapley)

The like-for-like block, attributed to traffic / conversion / price.
Method

Melitz-Polanec (NBER w18182) entry/exit decomposition + Shapley split (arXiv 2102.05799) of the continuing SKUs into traffic / conversion / price, with Page/Harrison-Davies CUSUM change-detection to auto-flag per-SKU conversion breaks. Python.

Recommendation

Put the CUSUM-flagged SKUs on a merchandising watchlist, and report like-for-like (continuing-SKU) movement as the real demand signal — instead of the headline number that new-launch volume is propping up.

Synthetic figures for portfolio illustration. Decomposition ties LY → TY exactly (entering + exiting + continuing); the continuing block's traffic/conversion/price shares are Shapley-consistent.