The big idea

Traditional polls ask people to rank teams subjectively. This system assigns every team a rating number, then sorts them. The Top 25 is not voted on — it is the 25 highest ratings that week.

  • All 138 FBS teams are rated, not just 25
  • Every team is judged by the same rules
  • Every rating change can be traced and explained

Two phases: before and after kickoff

Before the season

Preseason rating

Every team starts with a number built from last year’s results, roster talent, returning players, and the transfer portal. Think of it as an educated starting guess before any 2026 game is played.

Once games begin

Weekly updates

After each publish week, completed games update ratings. Games are processed in kickoff-time order across the full season so far — not isolated week-by-week. Teams that outperform expectations rise; teams that underperform fall. The preseason number fades as more games add new information.

Preseason: four questions

Before kickoff, we ask four measurable questions about each program. The answers are weighted, combined, and placed on a scale where 1500 ≈ average and higher is better.

Prior strength

40%

How good was the program last year?

We combine last season’s Elo, SRS, and SP+ ratings. Strong programs that finished high last year start higher.

Examples: National title contenders, playoff teams, consistent winners

Roster quality

25%

How talented is the roster on paper?

We look at the Talent Composite and recruiting rankings. Programs that consistently sign elite recruits score higher here.

Examples: Blue-chip recruiting classes, top national talent scores

Returning production

15%

How much of last year’s team is back?

We measure returning usage — how much production from last season’s offense and defense returns. More experience back helps.

Examples: Returning starters, proven quarterbacks, veteran lines

Transfer portal

20%

Did the portal help or hurt?

We track transfers in and out — how many, how highly rated, and the net effect. A strong portal haul can boost a team; heavy losses can drag it down.

Examples: Star transfers in, key departures, net portal gains

Preseason rating

Start at 1500, then add points from each category based on how far above or below average the team is nationally.

Rating = 1500 + (40% × Prior) + (25% × Roster) + (15% × Returning) + (20% × Transfer)

Weekly: did you beat expectations?

Winning matters — but how you win or lose matters too. A favorite that wins by 3 when expected to win by 30 will likely drop. An underdog that loses by 3 when expected to lose by 28 will likely rise.

  1. Estimate what should happen

    Before each game, the model predicts the score margin from both teams’ ratings and home-field advantage (3.79 points at home, 0 on a neutral field). FBS opponents use the same formula; FCS opponents use separately maintained opponent ratings.

  2. Compare to what actually happened

    After the final whistle, we compare the real margin to the expected margin. Beating expectations helps; falling short hurts — even in a win.

  3. Move the ratings

    FBS teams shift by 12.5% of the surprise each game. FCS opponent ratings (used when an FBS team plays them) shift by 20%. Ratings move gradually so one weird game doesn’t swing everything.

  4. Reorder the poll

    The public poll ranks all 138 FBS teams by rating. The Top 25 is whoever is rated highest that week — nothing more. FCS opponents are tracked separately and never appear in this poll.

In plain terms

  • Home field is worth 3.79 points on the scoreboard (0 at a neutral site)
  • 100 rating points ≈ 15 points of expected margin
  • FBS ratings move 12.5% of the surprise each game — steady, not chaotic
  • FCS opponent ratings move 20% per game when those teams play
  • Opponent strength is already baked in — beating a strong team counts more than beating a weak one

FCS opponents (non-FBS teams)

The public poll covers 138 FBS teams only. When an FBS team plays an FCS opponent, we still need a real strength number for that opponent — not a flat placeholder. CFB Ranked maintains a separate 100-team FCS opponent pool: every FCS team scheduled to play at least one FBS game in 2026.

These are not national FCS rankings. List order on the FCS Opponents page is sorted by current rating within that 100-team pool only, for margin modeling when FBS teams play them.

  • Only the 100 FCS teams scheduled to play at least one FBS opponent in 2026
  • Preseason rating from prior-year SRS: 1415.75 + (4.106 × SRS)
  • Same expected-margin math as FBS games once kickoff arrives
  • 20% weekly update rate (FBS teams use 12.5%)
  • FCS-vs-FCS results can update an opponent before their first FBS game

Auditing and downloads

Nothing is hidden behind the UI. Published snapshots, game audits, and CSV exports let anyone verify the math.

Poll page

Each published week has a Download CSV link with all 138 FBS ratings for that snapshot.

Team pages

Every FBS team page shows preseason inputs, a game-by-game audit, and links to preseason, weekly ratings, and game-audit CSV files.

FCS opponents

Each week has downloadable ratings CSV files. Published weeks also include a game-audit CSV. Preseason has ratings only. Open page →

What we do not use

No human ballots

There are no weekly voters, media panels, or coaches’ polls in this model.

No AP Poll input

The AP Poll may be interesting to compare against — it never feeds into our ratings.

No conference bonuses

Being in the SEC or Big Ten does not automatically add points. Strong conferences show up through results.

No “ranked opponent” shortcuts

Every opponent has a real rating. Team #26 is not treated as worthless just because they missed the Top 25.

Why trust this?

No ranking system is perfect. The difference here is that nothing is hidden. Preseason inputs, weekly game audits, CSV downloads, and the FCS opponent table are published so anyone can check the math.

Formula-based Same rules for every team, every week
Results-driven Games move ratings after the season starts
Auditable See why each team moved, game by game
Reproducible Same inputs always produce the same outputs

View the current poll →