First Ball Kill

2026 season · Nightly update Oct 29, 2026, 3:05 AM ET completed with warnings

Method

What the ratings measure

Volleyball is rally scoring, so the natural unit is the rally, not the set. Each rally has a serving team and a receiving team. The receiving team wins a sideout; the serving team wins a break point. A team’s offense is its sideout percentage and its defense is the sideout percentage it allows. The model reads every rally of every match in its data and fits one offense effect and one defense effect per team, adjusted for who they played and where, on a logit scale with a home-court term.

AdjSO is the sideout percentage a team would post against an average Division I server. AdjDSO is the sideout percentage an average receiver would post against the team’s serve, so lower is better. AdjNet is 100 × (AdjSO − AdjDSO) / (AdjSO + AdjDSO): the team’s expected margin in points per 100 rallies against an average opponent. Two teams’ adjusted rates give an expected share of rallies between them; a race-to-25, win-by-two recursion (15 in the fifth set) turns that share into set and match probabilities and the set-score distribution on the matchup page.

Fitting

The fit is a penalized binomial regression on set-level counts (receive rallies and sideouts for each team in each set), with a ridge penalty on the team effects, recency weighting with a 45-day half-life, and a prior that pulls each team toward a shrunk copy of its final rating from the previous season early in the year. Standard errors come from the fitted information with a quasi-binomial dispersion adjustment. SOS is the mean AdjNet of a team’s opponents. Luck is actual match win percentage minus the win percentage the model expected from the same matchups.

Backtest

In a rolling weekly backtest over 6,734 held-out regular-season matches (fall 2023 through fall 2025), each week’s fit used only matches played before that week. The model’s log loss was 0.466 against 0.549 for an RPI baseline and 0.591 for a record baseline, both scored on the same matches with their own fitted calibration, and it beat RPI in 48 of 48 weekly windows. Early-season ratings carry wide errors; the prior narrows them until each team has a few weeks of matches.

Data

Play-by-play comes from the public StatBroadcast archive of the schools that use it, which covers roughly two thirds of all Division I matches. One participating school is enough to capture a match, but a team whose own home matches are not published appears only in its road matches, has fewer matches in the data and carries wider standard errors (the SE off and SE def columns on the ratings page). Only Division I against Division I matches enter the fit. A match recorded by both schools is counted once.

Conference standings are copied each night from the 32 official conference standings pages in the order each conference publishes, with its tiebreakers applied; nothing in them is computed here. Every table shows when it was fetched. A page that fails a check (team count, conference wins and losses adding up, records consistent with percentages, every team recognized) is held: the site keeps the last table that passed and says so.

Season labels use the fall calendar year (2026). Timestamps are ET. Downloads: ratings, matchup matrix, standings.

Disclosure

The author uses these ratings to trade match markets on Kalshi. Positions, priced slates and picks are not published here, and nothing on this site is betting advice.