What Is Zillow’s Buyer-Seller Index, and How Is It Computed?
The Zillow Buyer-Seller Index (BSI) is a measure of the balance between sellers and buyers in a given market.

The Zillow Buyer-Seller Index (BSI) is a measure of the balance between sellers and buyers in a given market.
The Zillow Buyer-Seller Index (BSI) is a measure of the balance between sellers and buyers in a given market. A hot market, or sellers market, typically occurs when buyers are forced to compete for a limited supply of homes, often resulting in higher prices and/or quicker sales that tend to benefit sellers. A cold market, or buyers market, is the opposite: general lack of demand means homes can linger on the market longer and ultimately sell for less, putting negotiating power in the hands of buyers.
The media and others often use isolated housing market indicators and broad heuristics to classify markets as either hot or cold. Zillow’s BSI uses a consistent, rigorously developed set of granular housing market fundamentals to create a nuanced scale of market heat, incorporating historical and regional quantitative context.
The full index includes two measurements:
Together, they capture the dynamics of negotiating power in a local housing market. Both indices are computed monthly.
The BSI is computed using three input metrics:
The days on Zillow and sale-to-list ratio used in our BSI calculation are slightly different than those series published regularly on our website. We’ll explain in further detail below.
Because the input data from Percentage of Listings with a Price Cut is calculated separately, it has its own suppression rules to determine which observations in each regional time series are suspicious. Only unsuppressed (publicly published) observations from each aggregate series are retained as inputs to the BSI.
Using a property-level algorithm to match transactions to listings, the Median sale-to-list price ratio as well as the number of days on Zillow (time on market) per matched transaction are calculated. Unlike published data, in order to ensure a more stable input for the BSI, both of these metrics are subject to special data management concerning the observation count, the aggregation and imputation strategies. Both metrics are then subjected to the following property-level suppression rules:
Percentage of listings with a price cut is pre-aggregated to all regional levels. Both directly-calculated inputs, days on zillow and median sale-to-list price ratio are aggregated at the regional level by:
The aggregation uses a rolling median with a three-month window. Employing a rolling median with a smaller window leads to many regions having too few observations, while a bigger window does not significantly increase the number of regions for which data is observed. Data are considered too sparse in a given month for a region if the number of observations is fewer than 15. In these cases, the data value is reported as NA.
The three aggregate input metrics for BSI now have a time series structure for all regions of interest.
All input metrics can have significant month-over-month (MoM) volatility. To suppress outliers, MoM growth rates are calculated for each region and used to remove outliers. A metric’s value for a given month-region combination is reported as NA if the MoM growth is less than negative 50 percent or more than 100 percent (in other words, it less than halves or more than doubles). This is done at all geographic levels.
When data are missing, they are imputed for child regions of metros using the nearest observed period for the child region. We then carry its value backward and/or forward to the missing periods, using the parent-metro’s MoM growth rates. If a metro’s growth rates are missing for less than 12 months, they are linearly interpolated. If data are missing for more than one year, the state’s growth rates will be used. If those are missing as well (which rarely happens), then U.S. growth rates will be used. If regions are missing more than 50 percent of their respective time series observations, data will be suppressed.
As each of the inputs’ units are absolute, the inputs are normalized by forcing their respective distribution to be on the inclusive interval 0 to 1. As minimum and maximum values, the “global” maxima/minima across regions and time periods of the unsuppressed data are used. This implies a comparison of data across regions. However, this may be the least restrictive way of normalizing the inputs while maintaining a valid comparison over time.
The fundamental Buyer-Seller Index (raw BSI) is defined for a given region and month as the average of the three inputs. As it is a convex combination of normalized inputs, it is bound between 0 and 1. Due to strong seasonality, there exists a seasonal decomposed version of the raw BSI (trend component). The decomposition uses the X-13ARIMA-SEATS method. If the seasonal decomposition fails (due to non-convergence of likelihood optimizer), the region gets excluded from the dataset to ensure comparability between the seasonal decomposed BSI and raw BSI (this is the case for roughly 5 regions).
As the seasonally decomposed BSI and raw BSI can both still contain strong fluctuation, a three-month rolling (trailing) mean is calculated. This smoothed flavor of raw BSI is used to calculate the end products:
This yields two metrics (following the order described above):
The ranking for (2.) takes place in the following structure:
As the index is relative to its own history, it is computed monthly for all regions and time periods.
The final BSI lies on the inclusive interval of 0 to 10. A value of 0 indicates that the market is relatively cold/not tight/buyers have more negotiating power. A value of 10 indicates that the market is relatively hot/tight/sellers have more negotiating power.
It’s important to keep in mind that the index forces each observation to lie in the interval 0 through 10, even in markets which are relatively stable over time. Because of the forced boundaries, those markets may appear more volatile than they actually are.