The MRI
2026 · Week 11

Method

MRI is a computer rating system for college football. It ran as an Excel workbook from 2000 to 2019 and was rebuilt in 2026. Two ratings are published: the original formula, unchanged, and its replacement.

MRI Classic

The 2018 formula, frozen. Each game earns a team credit weighted by how good its opponent was:

win   →  min( 35, margin) × OppWin%  × OppOppWin%
loss  →  max(−35, margin) × OppLoss% × OppOppLoss%

and the season rating adds those up alongside win percentage and four statistical z-scores:

MRI = 25 × Win%  +  25 × OppWin%  +  10 × OppOppWin%  +  Σ game credit
    +  5 × z(RushYds/G)  +  5 × z(PassYds/G)
    +  7 × −z(YdsAllowed/G)  +  3 × z(TurnoverMargin)

The Python port reproduces every rating published across the 2003–2019 workbooks to within 5×10−13, with identical top-25 ordering in all seventeen seasons. It is kept for continuity, and because a baseline you cannot beat is a baseline worth keeping.

MRI 2.0

Classic measures schedule strength as opponents' win percentage times their opponents' win percentage. That treats a 9–3 Sun Belt team and a 9–3 SEC team as equal tests, because win percentage does not know who anyone played.

MRI 2.0 turns every game into one equation —

margin  =  rating(home)  −  rating(away)  +  home field

— and solves the whole season at once. A team's rating then depends on its opponents' ratings, which depend on theirs, all the way down. Strength of schedule stops being a separate statistic and becomes a property of the solution.

Four further differences:

Two numbers

Power answers how good a team is, in points against an average FBS team, so the gap between two teams is a predicted spread. Résumé answers what a team has earned, measured as wins above what an average team would have managed against the same schedule at the same sites. Classic conflated these, which is why it was hard to bet with.

Does it work

Tested by walking forward through all seventeen archived seasons: fit on the games played so far, score the games that come next, never on data it has seen.

MRI 2.0MRI Classic
Straight-up accuracy73.6%72.0%
Margin error13.0 ptsn/a
Brier score0.177n/a

MRI 2.0 wins 13 of 17 seasons. Its hyperparameters were searched on 2003–2013 and the margin is reported on 2014–2019, which took no part in the search.

The retroactive track: 1978–2019

MRI 2.0 is also computed for every season back to 1978, the first year of the Division I-A split — the seasons pages label these "retroactive" and keep them in their own table, separate from both Classic and the current, real-time rating. Nothing about the formula changes; only the games do. 1978 rather than further back because before the split there is no consistent answer to who counts as top-division, and because shorter old-time schedules leave the schedule-strength solver with less to work with connecting one region to another.

1978–2002 comes straight from the game-by-game feed, the same source 2020–present already uses; 2003–2019 comes from the same workbooks Classic runs on. Both leave out the box-score offense/defense split Classic-era yardage makes possible — the Power and résumé numbers never used it anyway, so nothing about the rating itself is weaker for these seasons, only the extra split some seasons show and others don't. The chain's first three seasons, 1978–1980, start cold with no real prior behind them yet and are marked accordingly; by 1981 every rating carries as much real history as any other season's does.

Preseason priors

Every season starts from a prior, and for a long time the prior was last season's rating pulled 30% toward average for everyone. That treats a team that returns its whole roster like one that lost it to the transfer portal. It is now a regression of a season's final rating on three things known before a game is played:

last season's rating, counted at 0.47; the roster's talent (the 247Sports composite, as a z-score within FBS), worth +3.8 points per standard deviation; and returning production (the share of last year's production, by predicted points added, still on the roster), worth +7.9 points from none to all of it.

Fitted on 2015-2025, 2020 excluded (1,297 team-seasons). Scored by leaving each season out in turn it misses by 8.4 points where the old prior missed by 9.1. For the teams that returned under 10% of their production (21 team-seasons) the old prior over-rated them by 8.6 points on average, because a team like that falls about that far from last season. The new prior still over-rates them by about 3.

Every game of 2015–2025 (2020 aside) predicted from only the earlier weeks of its own season, once from each prior. Both chains run properly, each season starting from the previous season's ratings under the same method, with the new prior's coefficients fitted leaving the predicted season out.

Games inPredictedOld prior miss New prior missGain, pointsMarket miss
weeks 1-31,442 13.6013.00 +0.60 ±0.26 12.24
weeks 4-61,628 12.9712.69 +0.28 ±0.17 11.95
weeks 7-133,977 13.1212.89 +0.23 ±0.07 12.45
all7,047 13.1812.86 +0.32 ±0.08 12.30

The gain is largest in the first three weeks, where the prior is most of what the ratings know, and fades as results replace it. The market still wins every row.

Exceptions, on purpose. The service academies' recruits are not ranked the way everyone else's are, and the composite calls Army, Navy and Air Force about 2.4 standard deviations worse than average; across 28 team-seasons they beat what that implied by 20 points on average. With talent treated as unmeasured for them the prior is off by 1.8. Teams that were not FBS last year have no comparable last season and keep the old prior.

Talent and results. Talent alone explains about 32% of the variation in a season's rating. Each team page shows what its roster's talent alone would predict next to what it is actually rated. The gap is not just noise: a team that beat its talent one year did so the next with a correlation of 0.46. In testing, most of the improvement came from talent; returning production adds a smaller one on average, and matters most for the few teams that lose nearly everyone.

Home field by stadium

The model gives every home team the same 3.0 points. Tested in September 2026: should that number move with the stadium, or with the trip? Every FBS game from 2013 was predicted from ratings that had only seen earlier weeks, and what the scoreboard said beyond that prediction was split two ways — into the trip (altitude, miles, time zones, early kickoffs, how full the stands usually are), fitted by least squares, and into each stadium, with each stadium's average shrunk toward zero by empirical Bayes: n / (n + k) of its raw mean, where k is game-to-game noise over the real spread between stadiums.

Fitted only on seasons before the one being scored, neither piece, nor both, predicted games better than the single number: the best variant cleared a paired t of +0.17 against a bar of 2, and was better in 4 of 10 seasons. No stadium's own effect can be told apart from average. So the lines are unchanged, and the findings are published as a description of the past. The FCS games are left out of the fit: the model under-rates the FBS side in them by enough to swamp everything else, which is its own problem.

Simulation and the playoff

The simulation page plays the rest of the season 10,000 times. Each run first draws every team's true strength around its rating, with a spread that shrinks as games are played, then plays the remaining games, settles conference standings, plays the ten conference championship games, ranks the teams the way the selection committee would, selects the 12-team field, and plays the bracket. Counting the runs gives each chance.

The committee is modelled, not asked. It ranks by résumé far more than by strength. A blend of 70% résumé and 30% power recovers 10.8 of the committee's true top 12 and 3.7 of its top 4 across 2014–2025, with the average team landing 1.5 places from its real rank. A little noise is added on top, because even at its best the blend misses about one team in twelve. The field follows this year's rules: the ACC, Big 12, Big Ten and SEC champions are in; so is the highest-ranked team from the American, Conference USA, MAC, Mountain West, Pac-12 and Sun Belt; Notre Dame is in if it is ranked in the top 12; the remaining places go to the highest-ranked teams left.

Simplifications, stated. Ties in conference wins are broken by coin flip, not head-to-head. Injuries are invisible until they show up in results. The committee blend was chosen using the same twelve seasons it is reported on.

Graded the honest way: run as it would have been on the morning of weeks 3, 6, 9 and 12 of every season from 2014 to 2025 (2020 excluded), using only what was known then, and compared with whether each team finished in the committee's top 12. Each row groups the teams the simulation gave that chance; the last columns are how often they did.

PredictedTeam-seasonsAverage predicted Actually did
0%-2%4,204 0%0%
2%-10%489 5%4%
10%-30%435 18%18%
30%-50%181 39%41%
50%-70%153 60%56%
70%-90%146 80%84%
90%-100%144 97%95%

Brier score 0.035, against 0.083 for a forecast that knows only that 12 of about 130 teams make it. In Week 3 alone it was 0.050. Treating the ratings as exact, with no error bars, scored 0.035 overall — nearly the same, which is an honest finding: the uncertainty matters most in September and matters little by November.

Who to root for

Each team page lists the games this week that the team is not playing in but that move its playoff odds most, and the side to cheer. For every game still to kick off, the simulation is run twice more on the same random numbers: once with the home side forced to win, once with the visitor. The difference in a team’s odds between the two is that game’s effect on it. Using the same random numbers matters: both runs share every draw except that one game’s, so what is left is the game and not simulation noise. Reading the effect off the ordinary run instead — comparing the runs where the underdog happened to win with the rest — would mix in something else, because those are also the runs in which the underdog was drawn stronger for the rest of its season. A forced upset is drawn the way real upsets happen, usually close, not as a blowout.

The page shows at most five games, ranked by how much they move the playoff odds; anything under half a point is left out as noise. When nothing moves a team’s playoff odds that much but a game moves its conference title odds, the guide switches to those and says so. A team with less than a half-percent playoff chance, or more than 99.5%, gets one line instead: nothing this weekend moves the needle, or its fate is in its own hands.

Coaches: the hot-seat model

A logistic regression for the chance a head coach is fired or pushed out at a season's end, from what's known at that point: how the team did against its own normal level and against its own preseason expectation, win percentage and conference win percentage, tenure year, whether it's a power-conference job, and (where it's measurable) how the roster's talent compares. Walked forward by season - fit only on seasons before the one being scored - against a baseline of win percentage and tenure year alone.

ModelBaseline
AUC0.8540.810
Brier score0.07980.0905

The model cleared its own bar: beating the baseline on Brier score in 34 of 36 held-out seasons (1984–2025, 4525 coach-seasons, 527 of them a firing).

What it can't see: buyouts, the biggest confounder, aren't in any data source here - a program that can't afford to fire a coach keeps one this model would otherwise flag. Athletic-director turnover and scandals aren't either. And a coach leaving on their own for a better job is a real, common outcome this model was never asked to predict - that's a separate label entirely, not a gap in this one.

Chaos and Fallout

The Chaos archive measures how surprising a week's results were, against the model's own pregame odds rather than a plain upset count. For each completed game, the winner's pregame win probability p costs a surprisal of −ln(p): a 45% underdog winning costs little, a 5% underdog winning costs a great deal more. The model's own expectation for that cost — a game's entropy — is −[p ln p + (1−p) ln(1−p)]. A week's chaos is the total surprisal less the total entropy, standardised by the square root of its total variance — each game contributing p(1−p)·(ln(p/(1−p)))² — into a single z. The published score is z's percentile against every other archived week: "wilder than 91% of weeks since 1978."

Recalibrated first. The model's own lines run overconfident early in a season (see the priors above), and an overconfident line makes a week look chaotic simply because the model is wrong, not because the world was. Before scoring, every pregame probability is passed through a logistic recalibration fit separately for three bands of the season — walked forward from every archived season, never from the week it is scoring — and checked afterward: mean z within 0.1 of 0 and its standard deviation within 0.1 of 1, both overall and within each band.

Currently fitted through the 2025 season, week 17.

1978–1980 are scored and shown in the archive like any other season, flagged rather than dropped, but take no part in the recalibration fit, the self-check, or the percentile ranking: the chain starts cold there with no real prior, so those weeks read as more surprising than the football deserves credit for — exactly what the recalibration guard exists to catch, not import.

Fallout is a different question. Chaos asks how unlikely the results were; Fallout asks how much they mattered, as half the sum, over every team, of the week-over-week change in its playoff odds from the season simulation. A week can be wild with little at stake — blowout losses by teams already out of the race — or ordinary on the field but reshape the field, when the teams involved were exactly the ones a playoff spot rode on. Fallout only exists for the current season, since the simulation's own history starts with it, and is not yet percentile-ranked against anything.

What it cannot do

A margin error near 13 points is roughly where closing betting spreads sit. That is the honest signal that this model should not be expected to beat a closing line. If it has an edge anywhere it is against opening numbers, and that claim will be backtested and reported here before it is acted on — including if the answer is no.