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 5,562 plays across 51 games.

Mostly a preseason projection so far. About 76% of a typical team’s number here is still its preseason estimate — last season’s rating, recruiting talent and returning production — with the games played so far nudging it. The ranges are wide on purpose and will narrow every week. Projection fitted on 10 previous seasons.

2026 is still being playedthrough week 1 · 1 game a team. These are early numbers on a small sample, not a season rating.

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.

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

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
119Ohio State+33.9+15.1#3-18.8#2
2110USC+32.7+22.0#1-10.7#12
3116Texas A&M+27.9+11.2#10-16.6#3
4116LSU+27.8+5.4#34-22.4#1
5120Miami+26.8+15.7#2-11.1#11
6118Notre Dame+26.4+13.9#6-12.5#7
7222Oregon+24.6+14.7#4-10.0#13
8124Alabama+24.5+9.2#20-15.4#4
9224South Carolina+23.8+11.8#9-12.0#9
10335Iowa+20.7+6.3#33-14.4#6
11335Indiana+20.3+13.1#7-7.3#27
12337Georgia+20.0+10.1#14-9.9#15
13337Penn State+19.4+9.6#16-9.9#16
14337Mississippi State+19.2+10.6#12-8.6#20
15338Texas Tech+19.2+3.9#40-15.3#5
16538SMU+18.0+10.8#11-7.1#28
17640Florida+17.6+9.9#15-7.7#26
18540Texas+17.3+9.6#17-7.8#25
19740Michigan+17.0+7.5#27-9.4#18
20649Utah+16.4+10.4#13-6.0#34
21746Oklahoma+16.4+6.4#31-10.0#14
22743Washington+15.9+3.7#42-12.1#8
23750Pittsburgh+15.3+8.4#23-6.9#29
24959Missouri+13.8+4.2#37-9.6#17
251060Vanderbilt+13.4+12.5#8-0.9#65
261052Ole Miss+13.3+14.5#5+1.1#82
271057Virginia+13.1+1.8#53-11.3#10
281054Louisville+12.9+9.1#21-3.8#52
291055UCLA+12.9+8.6#22-4.3#48
301063Tennessee+12.7+9.3#18-3.4#56
311060Wake Forest+12.4+4.0#39-8.4#22
321059Nebraska+12.2+8.3#24-3.9#50
331257Baylor+12.1+6.3#32-5.8#37
341065BYU+12.1+7.3#29-4.8#45
351366North Dakota State+10.8+2.8#48-8.0#24
361664Memphis+10.4+9.3#19-1.1#64
371477Arizona+9.0+4.1#38-4.9#43
381678San Diego State+8.6+2.3#51-6.3#33
391873Toledo+8.5+1.9#52-6.6#31
402076James Madison+7.7-0.8#66-8.5#21
412081New Mexico+7.4-1.6#76-9.0#19
421781Kansas State+7.4+3.8#41-3.6#54
432378Houston+7.0+5.0#36-1.9#60
442379Georgia Tech+6.8+2.9#45-3.8#51
452381Illinois+6.7+7.3#28+0.6#76
462281Texas State+6.5+8.2#25+1.6#86
472481Washington State+6.4-1.6#77-8.0#23
482481Boise State+6.3+2.8#47-3.5#55
492183Arkansas+6.0+7.8#26+1.7#90
502482North Carolina+5.5-1.4#73-6.9#30
512387Kentucky+5.1-0.8#67-6.0#35
522491UTSA+4.7+2.9#46-1.7#61
532783Duke+4.6-0.8#65-5.4#39
542493Arizona State+4.4-0.2#59-4.5#46
552493Old Dominion+4.3-1.6#75-5.9#36
562494Northwestern+4.1+3.3#43-0.8#67
573285San José State+3.6-2.2#88-5.8#38
583583Florida State+3.6+5.1#35+1.4#84
593585Auburn+3.3-3.2#93-6.5#32
603394Nevada+2.9+2.4#50-0.6#68
613594Western Michigan+2.7-2.3#90-5.0#41
623593South Florida+2.6-2.3#89-4.9#44
6331102Kansas+2.2+3.3#44+1.1#81
643699Cincinnati+1.8+1.3#54-0.4#71
6535106Maryland+1.6-1.7#78-3.3#57
6635106Iowa State+1.4-1.7#79-3.1#59
6737103Wisconsin+0.6-4.4#106-5.0#42
6838101UNLV+0.3-3.3#97-3.6#53
6938103Tulsa+0.1-4.3#105-4.4#47
7037112Southern Miss-0.1+0.0#58+0.1#73
7139106TCU-0.1-3.5#100-3.3#58
7237112Minnesota-0.2-0.7#64-0.5#70
7337114Virginia Tech-0.8+0.9#56+1.6#87
7441108Tulane-1.1-6.3#115-5.2#40
7540111NC State-1.1-0.6#63+0.5#75
7637118Louisiana Tech-1.3-2.8#91-1.4#63
7740112North Texas-1.4+6.5#30+7.9#126
7839120Purdue-1.8-1.1#70+0.8#77
7940120Utah State-2.0-0.3#61+1.7#89
8040120UCF-2.0-3.8#101-1.7#62
8150118Florida International-3.0-7.3#116-4.3#49
8252123Michigan State-4.0-3.2#92+0.8#79
8355126Liberty-4.6-1.2#72+3.4#98
8450128South Alabama-4.8-0.2#60+4.6#110
8551131UConn-5.1-0.6#62+4.5#108
8657126Colorado-5.1-6.0#112-0.8#66
8751131Temple-5.2-2.2#87+3.0#94
8859126Stanford-5.3-1.9#81+3.4#99
8959126Colorado State-5.4+0.1#57+5.5#120
9060126Coastal Carolina-5.7-0.9#69+4.7#112
9160126Boston College-5.8-4.1#104+1.7#88
9260127UAB-5.8+2.7#49+8.5#130
9359133East Carolina-6.3-6.1#113+0.2#74
9457134Louisiana-6.3-1.1#71+5.2#116
9557134Syracuse-6.5-5.7#111+0.8#78
9657135Army-6.7-1.9#83+4.7#111
9759135Kennesaw State-6.9-3.4#99+3.5#100
9859135Delaware-7.0-1.5#74+5.4#118
9967133Oregon State-7.8-3.8#102+4.0#105
10063135Georgia State-8.1-3.2#94+4.8#114
10163135Navy-8.1-2.1#86+6.0#122
10264135App State-8.2-5.0#109+3.2#96
10364135Georgia Southern-8.4-1.8#80+6.7#125
10465135Middle Tennessee-8.7-4.0#103+4.8#113
10571135West Virginia-8.7-5.0#108+3.8#103
10673135California-9.4-3.3#96+6.1#123
10777135Eastern Michigan-9.5-10.0#127-0.5#69
10873135Clemson-9.9-9.9#125-0.1#72
10976135Ohio-9.9-2.0#84+8.0#127
11073135Marshall-10.2-2.1#85+8.1#128
11178135Troy-10.4-8.5#119+1.9#91
11279135Rutgers-10.9+1.3#55+12.2#135
11378135Sacramento State-11.0-9.4#121+1.5#85
11479135Miami (OH)-11.2-5.6#110+5.7#121
11576135Fresno State-11.3-7.7#117+3.6#102
11679135Central Michigan-11.4-10.5#128+0.9#80
11782135Sam Houston-11.7-6.2#114+5.4#119
11881135Western Kentucky-11.8-3.2#95+8.6#131
11981135Florida Atlantic-12.1-1.9#82+10.1#133
12081136Rice-12.6-9.8#122+2.9#93
12182135New Mexico State-12.7-8.5#120+4.2#106
12281137Bowling Green-12.7-11.4#133+1.3#83
12383135Wyoming-12.9-9.8#123+3.1#95
12482135Arkansas State-13.2-3.4#98+9.8#132
12581138Buffalo-13.2-10.8#130+2.4#92
12685138Missouri State-14.5-10.0#126+4.6#109
12783139Air Force-14.9-0.9#68+14.0#137
12897138Oklahoma State-15.2-11.8#134+3.4#97
12993138Jacksonville State-15.3-9.9#124+5.4#117
13095138Massachusetts-15.4-10.5#129+4.9#115
13188139Charlotte-15.6-11.2#132+4.4#107
13299138Hawai'i-16.0-12.1#135+3.9#104
13399139Akron-16.5-5.0#107+11.5#134
13499139UTEP-16.9-13.4#136+3.5#101
135124139Ball State-22.5-16.2#138+6.3#124
136126139Northern Illinois-23.1-14.9#137+8.1#129
137126139Kent State-23.2-8.2#118+15.0#138
138129139UL Monroe-24.8-10.9#131+13.9#136

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.