Skip to content

CORE Ratings

Analysis

How good each team is per play, once you account for who they played and the situations they were in. Zero is an average team; higher is better. points per 100 qualifying plays, above average. Built from 95,298 plays across 776 games.

Offense against defense

Offense across, defense up. Best teams are top right. Both numbers are adjusted for who each team played, so a soft schedule does not flatter anyone.

-20+0+20-20-10+0+10+20CORE offense (points per 100 plays)← worsebetter →CORE defense (vs average)← worsebetter →
131 teams · dashed lines mark the league medianr = -0.21(r² = 0.05)

Where efficiency and the poll disagree

The gap between a team’s CORE rank and its AP rank. This is the column worth arguing about — it is where one of the two measures is about to be shown up.

#TeamCOREOffenseDefense
112Georgia+39.8+20.9#2-18.9#2
225Ohio State+33.7+22.9#1-10.8#16
326Alabama+30.5+14.9#11-15.6#4
426Michigan+30.2+14.9#10-15.3#5
538LSU+26.9+16.9#6-10.0#17
6510Tennessee+24.1+20.1#4-4.0#43
7514Florida State+22.3+16.3#7-6.0#30
8617Texas+20.2+11.3#14-8.8#21
9622James Madison+19.1+2.3#55-16.8#3
10724Penn State+17.7+6.0#35-11.7#14
11726TCU+17.1+11.3#15-5.9#32
12728Utah+16.5+7.3#27-9.3#20
13828Kansas State+16.5+8.6#21-7.9#23
14828Pittsburgh+16.4+1.3#60-15.0#6
15835Oregon+15.1+15.8#8+0.7#69
16835Oregon State+15.1+3.5#44-11.6#15
17836Mississippi State+14.5+2.7#49-11.8#13
18936Clemson+14.3+2.0#56-12.2#11
19939Illinois+14.1+1.8#58-12.3#10
20939Louisville+13.6+3.9#43-9.6#18
211039UCLA+13.2+15.0#9+1.8#75
221039Boise State+12.8+6.8#30-6.1#29
231039Tulane+12.7+8.0#26-4.7#38
241140USC+12.1+20.1#3+8.1#110
251141Ole Miss+12.0+11.2#16-0.8#58
261246Auburn+11.2+3.5#45-7.6#25
271444Maryland+11.0+4.4#40-6.6#27
281352Wisconsin+10.6-1.5#67-12.0#12
291552Oklahoma+10.3+10.7#17+0.4#67
301552Washington+10.3+14.0#12+3.7#83
311553Iowa+10.1-10.7#120-20.8#1
321554Kentucky+10.1-2.7#77-12.8#8
331553Kansas+10.1+17.0#5+6.9#106
341558Air Force+9.4+5.5#36-3.9#44
351758UTSA+9.0+8.4#22-0.7#59
361859UAB+8.8+8.3#25-0.5#61
371859Florida+8.7+8.3#23-0.3#62
381760Minnesota+8.6+4.0#42-4.7#40
392463Notre Dame+6.8+1.9#57-4.9#37
402464Western Kentucky+6.6+6.1#34-0.5#60
412466Texas A&M+6.3+0.4#64-5.9#31
422667South Carolina+6.1+4.0#41-2.1#53
432669Iowa State+5.8-6.8#100-12.7#9
442769Toledo+5.5-0.8#65-6.3#28
452769Fresno State+5.4+1.6#59-3.9#45
462870Duke+5.1+6.9#29+1.8#74
472970Purdue+4.9+2.4#54-2.5#52
482871Marshall+4.9-10.0#117-14.9#7
492971NC State+4.9-4.4#87-9.3#19
503070Houston+4.8+9.4#20+4.6#90
512970Wake Forest+4.8+7.2#28+2.4#76
523171East Carolina+4.5+6.2#33+1.6#72
533471Texas Tech+4.3-1.6#69-5.8#33
543572Arkansas+3.8+8.3#24+4.5#89
553572Cincinnati+3.8-3.9#83-7.7#24
563573Missouri+3.7-4.5#88-8.1#22
573672North Carolina+3.5+13.0#13+9.5#115
583674Baylor+3.3+2.4#53-0.8#57
593977Syracuse+2.7+2.6#50-0.1#63
603976UCF+2.5+5.3#37+2.8#80
613977Troy+2.3-4.8#91-7.2#26
623980Liberty+1.4-3.3#80-4.7#39
633983App State+1.0+6.5#31+5.5#98
644183South Alabama+0.8-2.2#71-3.0#49
654185BYU+0.6+6.2#32+5.6#99
664385Memphis+0.4-3.3#79-3.7#46
674387Washington State+0.3-2.3#72-2.6#51
684487Georgia State+0.0-1.5#68-1.5#56
694688Oklahoma State-0.3-3.8#82-3.5#48
704788Coastal Carolina-0.8+9.8#19+10.6#119
715491West Virginia-1.7+2.5#51+4.2#86
725494San Diego State-2.0-7.0#104-5.0#36
735697Miami-2.3-6.0#94-3.6#47
745994North Texas-2.5+1.1#62+3.5#82
755997Arizona State-2.9+3.3#46+6.2#102
765997Arizona-3.0+10.1#18+13.1#125
776297SMU-3.3+4.8#38+8.1#111
7862100Nebraska-4.0+1.1#61+5.1#96
7962100Southern Miss-4.1-9.1#111-5.0#35
8062101San José State-4.4-1.6#70+2.7#79
8163100Louisiana-4.4-4.4#86+0.0#65
8263101California-4.6-4.5#89+0.0#66
8363105Virginia-5.0-10.2#118-5.2#34
8466101Eastern Michigan-5.1+3.0#48+8.1#109
8567105Tulsa-5.4-1.3#66+4.1#85
8668104Middle Tennessee-5.4-8.0#109-2.6#50
8768106Georgia Tech-5.7-9.9#116-4.2#42
8871108Virginia Tech-6.9-7.0#105-0.1#64
8971108Ohio-6.9+2.4#52+9.4#114
9072109Buffalo-7.5-6.1#96+1.4#71
9171109Florida Atlantic-7.5-2.7#76+4.8#94
9272109Michigan State-7.7-2.3#73+5.4#97
9373109Indiana-7.8-7.1#106+0.7#68
9473111Boston College-8.2-6.9#103+1.3#70
9576109Georgia Southern-8.3+4.6#39+12.9#124
9673112Rutgers-8.3-12.9#122-4.6#41
9778114Kent State-9.3+0.4#63+9.7#116
9878115Northwestern-9.4-11.3#121-1.9#54
9978114Wyoming-9.5-5.5#93+4.0#84
10080116Temple-10.2-7.1#107+3.1#81
10182117Vanderbilt-10.8-2.6#75+8.2#112
10283117Stanford-10.9-3.9#84+7.0#107
10383117Army-11.0-4.3#85+6.7#105
10485117Navy-11.2-6.6#98+4.6#92
10587117Central Michigan-11.3-6.9#102+4.4#88
10688120Bowling Green-12.2-6.0#95+6.2#103
10788119Old Dominion-12.3-6.6#99+5.7#100
10890123UNLV-13.1-2.6#74+10.5#118
10993123UConn-13.6-6.4#97+7.2#108
11094123Utah State-13.7-9.4#114+4.2#87
11194124Akron-14.3-8.1#110+6.2#101
11297124Ball State-14.6-12.9#123+1.6#73
11397125UL Monroe-14.7-4.8#90+9.9#117
11498125Miami (OH)-15.3-10.5#119+4.8#95
115100125Texas State-15.5-12.9#124+2.6#78
116101126South Florida-16.6+3.0#47+19.7#131
117106127Rice-17.3-5.3#92+12.1#123
118106127Colorado State-17.8-15.3#126+2.5#77
119106127Northern Illinois-18.0-3.2#78+14.7#127
120108127UTEP-18.5-6.8#101+11.6#122
121108127Arkansas State-18.5-7.2#108+11.4#121
122108128New Mexico State-18.8-9.6#115+9.3#113
123111128Nevada-19.9-15.3#127+4.6#91
124112128Louisiana Tech-20.4-9.3#112+11.1#120
125116131Western Michigan-22.1-17.3#128+4.8#93
126116131Charlotte-22.8-3.4#81+19.4#130
127122131New Mexico-24.9-26.5#131-1.7#55
128125131Hawai'i-26.5-9.4#113+17.1#129
129125131Florida International-27.3-14.0#125+13.3#126
130125132Massachusetts-27.6-21.4#130+6.2#104
131129132Colorado-33.5-18.8#129+14.8#128

Four ways to measure a team, and where each fails

This site publishes all four. That is not indecision — each answers a different question, and where they disagree is the information, not the noise.

Results · Elo, SRS

Measures: who beat whom, and by how much

Fails when: It cannot tell a good team from a lucky one. Elo moves on outcomes, and a season is twelve of them — a team that won three one-score games is rated as though it earned all three.

Efficiency · CORE, SP+

Measures: how good each play was, adjusted for situation and opponent

Fails when: It is indifferent to winning. A team can be the most efficient in the country and lose to the second-most because a punt was blocked, and the rating will not notice, because the rating is not about that.

The market · closing spreads

Measures: everything anyone knows, priced

Fails when: It is not published as a rating and it has no memory. It is the sharpest number available on any single game and it will not tell you who the fourth-best team in the country is.

Human polls · AP, coaches

Measures: reputation, weighted by results

Fails when: Inertia and brand. A preseason ranking survives contact with reality for weeks, and a team that starts unranked has to be much better than one that started at 12 to pass it.

How CORE is computed

  1. Remove the situation. For each play, predict its EPA from the game state alone — period, seconds left, score margin, down, distance, field position, home/away/neutral, pass or rush. No team identity is in those features, so what the model learns is what an average offense does from that spot. The residual is the part the situation does not explain.
  2. Remove the opponent. Offenses and defenses form one connected network across a season. Fit both sides at once — residual ~ offense(team) + defense(opponent) — by ridge regression over team dummies. Ridge rather than plain least squares because in September the schedule graph is barely connected, and an unregularised fit hands a huge rating to whoever beat up an overmatched opener.
  3. Report in points per 100 plays. Offense is points created above average; defense is points allowed above average, so lower is better; overall is the difference.

Excluded: overtime, garbage time, FBS vs FCS, special teams, non-scrimmage plays.

How sure is any of this? The small range under each rank is where a team would sit if its rating were one standard error better, or worse, than the estimate — about a two-in-three chance of covering the truth. It is wide on purpose: a season is a dozen games, and most of this table is one good afternoon away from a different order. Those bars are checked rather than claimed: fitting 2025’s odd and even weeks separately and standardising every team’s difference by its own two errors gives a spread of 0.93 on offense and 0.94 on defense, where 1.00 is exactly right-sized. It covers sampling error only — not the shrinkage the ridge applies on purpose, and not a team that changed in November.

What this is not. Not a prediction, not a forecast, not a projection of next week. It is a measurement of what happened per play, adjusted. The model that forecasts games is a different object and lives on the model record, where its actual edge is stated with the same bluntness.