Stockout rate is the share of a brand’s catalog, or of its demand, that was unavailable for purchase during a defined period. Two formulations are mainstream and they measure different things: SKU-days out of stock divided by total SKU-days is an inventory-coverage view, and lost demand units divided by lost-plus-fulfilled demand is a revenue-impact view. Operators frequently quote one number and mean the other.
Demand-side mirror is lost demand / (lost + fulfilled) demand — the demand-weighted version of fill rate.
The first formulation — SKU-days OOS over total SKU-days in the window — is easy to compute from inventory snapshots. Count each SKU-day where available inventory hit zero, divide by the product of SKUs tracked and days in the period. It tells you how much of the catalog was dark. What it doesn’t tell you is the demand weight behind the dark SKUs: a 2% SKU-days-OOS number sounds clean, but if those SKUs were A-class movers the revenue gap can be large while the headline reads healthy.
The second formulation — lost demand units divided by lost-plus-fulfilled demand — is demand-weighted and answers the question the first one ducks. The catch is that lost demand is not directly observed; it has to be estimated. Two practical paths: back-in-stock signups give a directly observed signal of unmet demand on a specific SKU, and a counterfactual model projects expected demand against pre-OOS run-rate. This formulation is the demand-side mirror of fill rate — under a matched demand pool, stockout rate is the complement of fill rate.
Stockouts erode three things at once. The direct one is revenue: the order that didn’t happen. The under-counted one is repeat probability — customers whose first attempt was a stockout convert and return at lower rates, a finding documented in the retail out-of-stock literature. The third is paid-media efficiency. Ad platforms keep bidding on an OOS SKU’s audience until the operator pauses the ad set; the click lands on an out-of-stock PDP and converts near zero, which drags ROAS on every dollar still spent against that SKU.
For Shopify operators specifically, native inventory tracking surfaces stockouts at the variant level — inventory quantity hits zero, available-for-sale flips false — but it doesn’t quantify lost demand. Quantifying that requires either a back-in-stock signup app or a modeled counterfactual against pre-OOS run-rate. Unlike wholesale fulfillment, DTC stockouts usually cancel rather than queue: the shopper substitutes or leaves, so a stockout is lost revenue rather than delayed revenue. The inventory-side lever is safety stock sized against demand variability and lead time.