Here is the most important sentence in college sports analytics: not all 11-1 records are created equal. Two teams can post the same gaudy mark, the same shiny scoring margin, the same highlight reel — and be separated by a canyon, because one of them played a murderer's row and the other feasted on the soft underbelly of the schedule. Strength of schedule (SoS) is how we measure that canyon. Let's build a real one.

The simplest honest SoS

There are fancy versions, but the cleanest place to start is also the most intuitive: the average winning percentage of the teams you played.

SoS(team) = mean( opponents' win% )

That's it. If your opponents collectively went .600, your schedule was tougher than a team whose opponents went .450. From here you can get more sophisticated — weighting by location, by margin, by opponents' opponents — but the core idea never changes: judge a team by the company it kept.

A worked example: Oregon, 2024

Oregon went undefeated in the 2024 regular season and earned the No. 1 seed. Was the schedule worthy? Here are selected opponents and their final records (the full slate and the script are in /scripts):

Selected 2024 Oregon opponents and their records. Full-schedule SoS ≈ 54% (mean opponent win% across 13 FBS opponents). Data: ESPN public API, retrieved June 2026.
OpponentRecordWin%
Boise State12-192.3%
Penn State11-284.6%
Ohio State10-283.3%
Illinois9-375.0%
Michigan7-558.3%
Washington6-650.0%
Oregon State5-741.7%
Purdue1-118.3%

Average those win percentages across the whole schedule and Oregon's SoS lands around 54% — a genuinely strong slate, top-heavy with playoff-caliber opponents (Boise, Penn State, Ohio State) and only one true gimme (Purdue). The undefeated record was earned.

The other side: padded résumés

Now the uncomfortable part. Run the same calculation for every team and a familiar name shows up among the easiest schedules in major college football:

Indiana went 11-1 in 2024 with the third-best raw scoring margin in the country — against opponents who won just 39.6% of their games, one of the softest slates in the FBS.

That's not a knock on Indiana's season; winning eleven games is hard against anyone. It's a demonstration of why analysts adjust. When we ran a one-pass schedule adjustment in our spreadsheet tutorial, Indiana fell from third in raw margin to roughly eleventh — exactly because of that 39.6%. The wins were real; the dominance was partly a function of who was on the other sideline.

Horizontal bar chart of the toughest 2024 FBS schedules by average opponent win percentage, led by Michigan near 65 percent.
The toughest 2024 FBS schedules by average opponent win%. Notably, several teams here finished with mediocre records — a brutal slate and a bad year often travel together. Data: ESPN public API, retrieved June 2026.

Look closely at that chart and you'll spot the trap in reverse: some of the toughest-schedule teams had losing records. Florida State played a top-five schedule and went 2-10. A hard slate doesn't make a team good — it makes a team's record look worse than its quality. That's the whole reason you can't read standings literally.

Why "opponents' opponents" matters

Average opponent win% has a flaw: it treats a 10-2 opponent the same whether that opponent earned its record against giants or against cupcakes. The next refinement folds in opponents' opponents' records — and once you start chaining that logic, you've reinvented an iterative ratings system, where every team's rating depends on everyone else's, solved by repeating the calculation until it stabilizes. SP+, the NET, and the public basketball ratings are all, at heart, that idea done carefully.

How to use SoS without abusing it

  • Pair record with schedule. "11-1" means nothing until you know against whom.
  • Beware early-season SoS. Opponents' records aren't settled in September, so SoS swings wildly early. It's a late-season tool.
  • Don't double-count. If you're already using an adjusted rating like SP+, schedule is baked in — quoting SoS on top is redundant.
  • Context, not excuse. A hard schedule explains a record; it doesn't erase losses.

Strength of schedule is the difference between counting wins and weighing them. Once you weigh them, the sport gets a lot more interesting — and a lot of "obvious" takes fall apart.

Sources & further reading

The CollegeAthleteInsider Analyst

I'm an independent analyst covering college football and basketball through public data. Every number here traces to a script in /scripts. More about the methodology →