Who cuts down the nets
Model bracket
The picks that maximize expected bracket-pool points: the likeliest champion first, then the likeliest winner of every sub-bracket consistent with it. Each pick shows its chance of reaching that round. Hover or tab to a team to trace its run.
The last weekend
Advancement odds
Each team's chance of reaching each round, computed exactly over every possible path through the bracket. Hotter cells are likelier. Click a column to sort.
Matchup calculator
Any two Division I teams, using the model's own formula: score-model and Elo margins blended by logistic regression.
Team ratings
Power is the blended rating: expected margin against an average Division I team on a neutral court. Net, offense and defense come from the opponent-adjusted score model; offense and defense are adjusted points scored and allowed per game.
Backtest
Log loss by tournament
Lower is better. Ratings frozen at tip-off each year; no 2020 tournament.
Calibration
How often the favorite won, by predicted probability. Bars are ±1 standard error; dots on the diagonal are perfectly calibrated.
By season
Bracket points use ESPN scoring (10-20-40-80-160-320, max 1,920). Chalk always advances the better seed.
About this forecast
Everything on this page comes from game results: who played whom, where, the final score and the box score. No betting lines, no expert rankings, no polls, not even the tournament seeds. Here's how a season of games becomes a bracket.
Every game
Team ratings
Several independent views of how good each team really is.
Win chances
Any two ratings become a percentage for that matchup.
The bracket
Every possible path through the tournament, added up exactly.
Points, adjusted for who you played
The core rating asks a simple question: by how many points would this team beat an average Division I team on a neutral court? That's the "Power" number in the Ratings tab.
It starts from every final score and adjusts for the opponent. Beating a top-10 team by 5 says more than beating a last-place team by 20. It rates offense and defense separately and accounts for home court (a few points).
A rating with a long memory
The second view is an Elo rating, the system chess uses. After every game the winner takes rating points from the loser. An upset or a blowout moves more points; beating a team you were supposed to beat moves only a few.
Separating skill from luck
Some of a box score is mostly luck. Over a season, how well opponents shoot threes and free throws against you is largely out of a defense's hands. A team whose record leans on opponents missing open shots is probably not as good as its scores suggest, so the model discounts that.
It also looks at what teams do control: their own shooting, turnovers, offensive rebounds and getting to the free-throw line.
Adjusting for missing players
Ratings describe the team that played all season. If a key player just went down, that team is weaker than its rating, so the model checks who played in each team's most recent game.
Every rotation player (20+ minutes a game) is valued by his box-score production per minute. A regular who missed the last game counts as out, and the team's outlook drops by what he usually contributes. A star who has missed half the season is already partly baked into the rating, so only the part that isn't gets subtracted.
From ratings to a percentage
The ratings are blended into one number for each matchup: the chance each team wins. How much to trust each rating was learned from tens of thousands of past games, each predicted using only games played before it, so the model never peeks at the answer.
A percentage is not a promise. A 70% favorite should lose about 3 of every 10 games like that one. That's what makes March fun.
Every path, added up exactly
Many forecasts simulate thousands of random brackets. This one does the exact math instead: for each team it adds up every possible path to every round, weighting each opponent by how likely they are to get there. That's where the numbers in the Odds tab come from.
The model bracket starts with the likeliest champion, then fills each part of the bracket with its likeliest winner, which aims for the most points on average. Bracket scores swing on a handful of big upsets, though. In past tournaments it has scored about the same as simply picking the better seed every game.
How it has done
The main score used to judge it is log loss, which rewards confident correct picks and punishes confident misses hard. Lower is better, and a coin flip scores 0.693. See the Backtest tab for every season.
Why does the model bracket pick so few upsets?
Does it know about injuries?
Does it use betting lines, rankings or seeds?
No, by design. The only inputs are game results and box scores from ESPN's public scoreboard. Seeds appear in this dashboard only for display, and as a baseline in the Backtest tab to show how much better the model does than "just pick the better seed."
What about momentum, coaching or tournament experience?
Only as far as they show up in results. Recent games count a bit more than early-season ones, so a team that's been playing well lately gets credit. But there's no separate bonus for a hot streak, a famous coach or past March success. A short-memory "hot hand" rating was tested and added nothing. Coaching and tournament experience aren't measured at all.
Does playing close to home help in the tournament?
A little. Across thousands of neutral-site games, playing about 50 miles from campus instead of 800 is worth roughly a point. But big distance gaps are rare, and the committee already puts top seeds close to home, so adding it didn't make the forecast more accurate. The model leaves it out.
What does "Power" mean in the Ratings tab?
It's how many points a team would be expected to beat an average Division I team by on a neutral court. A team at +20 would be about a 7-point favorite over a team at +13.