Fill Rate vs. In-Stock Rate: What’s the Difference and Why It Matters?

Fill Rate vs In-Stock Rate: What's the Difference and Why It Matters

At the start of any engagement with a client, one of our first tasks is to agree on the language we'll use to talk about inventory performance. One of the most important metrics is how much of your product is in-stock and available for sale to customers each day. In this post, we'll talk through different ways to measure in-stock performance, how to calculate each one, and how each one can help you improve customer service in different ways.


A sample of terms we hear clients use to talk about inventory performance include:

• Fill rate

• Backorder Rate

• In-Stock Rate

• Service Level

While each of the terms above has a textbook definition, we've found that it's rare for clients to use that exact definition in their operation. Below, we'll stick to the most common usage of each.

Fill Rate / Backorder Rate

Fill rate and backorder rate both refer to the percentage of actual demand from customers that you were able to fill immediately from inventory on the shelf. In companies that do not allow backordering, order lines that cannot be filled from stock are generally cancelled, and the customer is notified.

For example, assume a customer orders 100 units of an item, and you only have 50 in stock. You ship the 50 and backorder or cancel (depending on your policy) the remaining 50 units. In this case, you have a unit fill rate of 50% (from here on out we will use "fill rate" to mean both fill rate and backorder rate).

Unit, Line, and Order Fill Rate Examples

In the example above, we are using units shipped from stock for our fill rate. Many companies will instead measure their line fill rate. The difference is that 100% of the units on a line must be in-stock for that line to count as in-stock. So if a customer placed a 10 line order and all lines were fully in stock except the one above, that order would have a 90% line fill rate - we don't get any credit for the 50 unit partial fill.

An order fill rate works the same way - all units on all lines of the order must be 100% in-stock in order for the order to count as in-stock. If we received 10 customer orders and all but the order above were 100% in-stock, we'd end up with a 90% order fill rate. We don't get any credit for the 9 perfect lines on that last order, because the 10th line only had a 50% unit fill rate. Another term for order fill rate is "perfect order rate" since from the customer's perspective, a successfully filled order, where all units on all lines are in-stock, is the best possible outcome.

We'd recommend tracking all three - unit, line, and order fill rate. Unit fill rate is the standard in many industries, but it can be dominated by low-impact items if you sell some SKUs at extremely high quantities relative to others. Line fill rates can correct for that sort of bias. Finally, order fill rates are probably the best measure of a total customer service success.

In-Stock Rate

In-stock rate measures the percentage of expected demand that you have in-stock and available for sale. There are two major implications of using expected demand, rather than actual demand, as an inventory metric:

1) In-stock rates are generally based on a sales forecast, and as such, are subject to forecast error. For example, if you haven't sold an item for a couple of months, you may have a zero forecast and won't "ding" yourself if you are out of stock on that item. Of course, that doesn't mean that a customer won't buy that item. The broader and longer the "tail" of low volume items in your catalog, the less reliable in-stock rate will be as a metric.

2) In almost every business we work with, sales are depressed when an item is out of stock. Even among companies that don't purport to advertise or share inventory status with customers, we see fewer orders arrive on days when items are out of stock vs in-stock. What this means is that fill rate (which measures only actual demand from customers) is going to be a falsely optimistic measure of performance, since you can't have a backorder if the customer never bought the item! This is the main reason to utilize in-stock rates as well as fill rates in your metrics. (We'll do a future article on "spill rate" which will allow you to quantify the financial impact of lost sales when out of stock.)

When is an Item In-Stock?

Generally, we recommend counting an item as in-stock if it has at least one day of expected demand or the median customer order quantity (whichever is greater) in stock at the start of the day. However, we find that unless you run an extremely tight inventory, the result you get using this method will be extremely close to the result achieved if you count any item that has any units available as in-stock.

Weighting In-Stock Rate

Most of our clients that utilize in-stock rate track this metric for each sales velocity class. For example, they will have an in-stock rate for A, B, C, and F items. While this is a good start, we strongly recommend weighting in-stock rate by sales volume at the item level.

For instance, if you have an item that sold 80 times in the last 90 days, and another item that sold 20 times, both may be "A" items. But the former item is four times more impactful to customer service if it is out of stock. A single, weighted in-stock rate is usually the best indicator of overall customer experience.

Simply take all the SKUs you stock, find the percentage that are in-stock on a given day, and then weight that percentage by each item's forecast, recent sales, or some other volume indicator. We recommend weighting by order lines rather than units if possible, and find that lines sold during a rolling 90 day period is a good measure.

Service Level

Service level is a term that has a wide range of definitions among our clients. Generally, it refers to either the fill rate, backorder rate, or in-stock rate... depending on which of those metrics the client in question tends to prioritize. So feel free to be as liberal as you like with this term.


Leave a Reply

Your email address will not be published. Required fields are marked *