Next game
Advanced stats
CollegeFootballData's play-by-play measures of how efficient and explosive a team was, placed against every other FBS team. How it works →
Profile vs. FBS, 2024
Farther out is better on every spoke. Dashed ring: the FBS median.
- EPA per playExpected points added on an average snap: how much each play moved the scoring odds.
- Success rateShare of snaps that stayed on schedule: half the yards needed on 1st down, 70% on 2nd, all of them on 3rd or 4th.
- ExplosivenessAverage EPA on the successful snaps: how big the good plays were.
- Rushing EPAEPA per designed run.
- Passing EPAEPA per pass play.
- Standard downsSuccess rate on downs where either a run or a pass makes sense, like 1st and 10 or 3rd and 2.
- Passing downsSuccess rate on downs that all but force a pass, like 2nd and 8 or longer, or 3rd and 5 or longer.
- Line yardsRushing yards per carry credited to the offensive line, weighting the first few yards most.
- Stuff rateShare of runs stopped at or behind the line of scrimmage.
- HavocShare of snaps with a tackle for loss, sack, forced fumble, interception or pass breakup.
Percentiles among the 134 FBS teams this season, where higher is better for the offense and the defense alike (a defense's numbers are what it allowed). The line in each bar is the FBS median. Garbage time excluded. Source: CollegeFootballData.
Expected points
YardLine's expected-points model values every snap by what a drive from that spot is worth on average, so a drive can be judged against where it started. How it works →
Drives vs. expectation, 2024
Points over expected per drive, from where each drive started.
Per drive against an average FBS opponent, neutral field.
Points over expected per trip inside the opponent's 40.
Average expected points where drives started.
Every snap has an expected-points value: what a drive from that spot, down and distance is worth on average. A drive over expected beat its starting spot; defense counts what Air Force allowed, so lower is better. The adjusted number fits every team against the opponents it actually played, so it leans toward average early in a season. Ranks are among FBS teams.
Game by game
Bars above the line: better than expected for Air Force.
Players
YardLine's player model credits every play's value to the players involved, so each one's season can be measured in wins above a typical backup. How it works →
Players, 2024
Quarterback is the most valuable starting slot by a wide margin: the gap between a top-decile and a median FBS quarterback is about twice the gap at any other position.
- Quentin HayesQB146 plays · +0.322 pts/play · 98th of 232 QBs0.88WAR0.56 to 1.21
- Dylan CarsonRB114 plays · +0.153 pts/play · 75th of 373 RBs0.33WAR0.25 to 0.39
- John BushaQB91 plays · +0.073 pts/play · 200th of 232 QBs0.12WAR−0.08 to 0.32
- Owen AllenRB48 plays · +0.111 pts/play · 244th of 373 RBs0.10WAR0.07 to 0.12
- Matthew DaporePK12 plays · +0.262 pts/play · 84th of 114 kickers0.06WAR0.03 to 0.09
- Cade HarrisWR40 plays · +0.065 pts/play · 247th of 452 WRs0.05WAR0.01 to 0.09
- Tylor LathamWR18 plays · +0.025 pts/play · 359th of 452 WRs0.01WAR−0.01 to 0.03
By position group, against FBS
Linemen and defenders are valued as units, in points per game against the median FBS unit, because play-by-play doesn't say who was on the field. Players are valued against a replacement-level backup, so the two aren't added together.
Wins above replacement credits each play's expected points to the players involved, adjusted for the opponent, and compares Air Force's players with a typical backup; 53 points make a win. Only snaps while the game was in doubt count, so a starter on a team that blows opponents out plays fewer of them: read value per play beside WAR. The line under each player (or the range on a phone) is the 90% interval. Ranks are among FBS teams and players. How this works
Transfer portal, 2024
0 players transferred in and 11 out. WAR is each one's 2023 season, before the move. Every team's portal
No quarterbacks, skill players or specialists with FBS snaps.
- John EldridgeRB · 2★to undecided0.26-
- Caleb RillosTE · 3★to Florida0.01-
The other 9
- Anthony WensonWR · 3★to Coffeyville C.C.--
- Brady PhillipsDL · 3★to Idaho State--
- Jacob KilzerQB · 3★to North Dakota State--
- Jacob TafoyaS · 3★to undecided--
- Aidan BehymerTE · 2★to North Dakota--
- Caden BlumDL · 2★to undecided--
- Herman Brister IIISto Southern--
- Jarius StewartCBto Eastern New Mexico--
- Jonah JensenSto Hillsdale College--
Only quarterbacks, skill players and specialists have a WAR of their own, so they make up these totals; linemen and defenders count in the moves but add none. 2023 is the player's season at his old school, 2024 his season after the move. A dash means no FBS snaps that season. Rosters tie CFBD's portal entries to players, which works for about 19 in 20 skill-position moves.
Fourth downs
YardLine's fourth-down model values going for it, kicking and punting on every real fourth down, so each call can be checked against the numbers. How it works →
Fourth-down calls vs. the numbers, 2024
Calls that matched the option with the best modeled win probability.
Summed over every call that differed, in points of win probability.
Went for it when going beat every other option by a point or more.
Each real fourth down is valued three ways (go for it, kick, punt) from the score, clock and field position before the snap, using league-wide odds rather than Air Force's own. A call that differs gives up the gap to the best option; gaps under one point are close calls, and the 1 clear-cut one accounts for 0.01 of the 0.07 expected wins. The model sees the situation, not the injury report, so a call it disagrees with can still be right. Ranks are among FBS teams; 1st gave up the least.
Costliest calls against the numbers
- vs ORSTQ2 0:00 4th & 4 at ORST 34, up 14Kicked a field goal; the numbers favored going for it1.1 pts
- vs NAVYQ4 10:07 4th & 5 at NAVY 11, down 20Went for it; the numbers favored a field goal (close call)0.7 pts
- vs NAVYQ2 6:54 4th & 2 at AF 28, down 7Punted; the numbers favored going for it (close call)0.7 pts
- vs SJSUQ2 0:07 4th & 2 at SJSU 46, down 7Went for it; the numbers favored a field goal (close call)0.6 pts
- vs CSUQ2 7:05 4th & 2 at AF 9, tiedPunted; the numbers favored going for it (close call)0.6 pts
- at ARMYQ4 6:13 4th & 11 at AF 30, down 10Went for it; the numbers favored punting (close call)0.5 pts
- at SDSUQ4 9:31 4th & 4 at SDSU 49, up 11Punted; the numbers favored going for it (close call)0.5 pts
- vs FRESQ3 9:46 4th & 4 at FRES 19, down 4Kicked a field goal; the numbers favored going for it (close call)0.3 pts
Every call this season (94)
- AgreedQ1 12:534th & 10 at MRMK 38, tied, Went for it
- AgreedQ1 1:454th & 1 at MRMK 41, up 7, Went for it
- Close callQ2 14:084th & 6 at MRMK 42, up 7, Punted
- AgreedQ2 7:314th & 8 at MRMK 49, up 7, Punted
- AgreedQ2 5:414th & 8 at MRMK 9, up 7, Kicked a field goal
- AgreedQ3 13:304th & 7 at AF 28, up 14, Punted
- AgreedQ3 8:514th & 9 at AF 15, up 14, Punted
- Close callQ4 12:344th & 5 at MRMK 44, up 14, Punted
- AgreedQ4 11:434th & 1 at MRMK 5, up 14, Went for it
- Close callQ4 3:404th & 3 at AF 27, up 21, Punted
- AgreedQ1 9:024th & 5 at AF 40, down 7, Punted
- AgreedQ1 5:294th & 2 at SJSU 6, down 7, Went for it
- AgreedQ1 2:304th & 7 at AF 28, down 7, Punted
- AgreedQ2 14:534th & 19 at AF 17, down 7, Punted
- AgreedQ2 11:384th & 19 at AF 36, down 7, Punted
- AgreedQ2 6:354th & 5 at AF 37, down 7, Punted
- AgreedQ2 3:464th & 1 at AF 32, down 7, Went for it
- Close callQ2 0:074th & 2 at SJSU 46, down 7, Went for it
- AgreedQ3 15:004th & 1 at AF 34, down 7, Went for it
- AgreedQ3 10:584th & 4 at AF 42, down 7, Punted
- AgreedQ3 4:024th & 6 at AF 36, down 7, Punted
- AgreedQ3 0:324th & 10 at SJSU 47, down 7, Punted
- Close callQ4 1:224th & 10 at AF 34, down 10, Went for it
- AgreedQ1 12:484th & 1 at AF 34, tied, Went for it
- AgreedQ1 7:404th & 24 at AF 48, tied, Punted
- Close callQ1 4:384th & 2 at AF 33, down 3, Punted
- AgreedQ2 12:514th & 12 at BAY 27, down 3, Kicked a field goal
- AgreedQ2 6:324th & 2 at BAY 42, down 3, Went for it
- AgreedQ2 2:194th & 5 at BAY 9, down 3, Kicked a field goal
- AgreedQ2 0:584th & 8 at AF 23, tied, Punted
- AgreedQ3 10:424th & 9 at AF 26, down 10, Punted
- AgreedQ3 0:074th & 1 at AF 34, down 20, Went for it
- Close callQ4 12:574th & 2 at AF 33, down 28, Punted
- AgreedQ1 11:534th & 3 at AF 44, tied, Went for it
- AgreedQ1 7:294th & 3 at AF 32, down 7, Punted
- AgreedQ2 14:564th & 5 at WYO 11, down 7, Kicked a field goal
- AgreedQ2 0:234th & 7 at WYO 10, up 3, Kicked a field goal
- AgreedQ3 9:284th & 5 at AF 43, down 1, Punted
- AgreedQ3 2:074th & 7 at AF 28, down 8, Punted
- Close callQ4 1:194th & 24 at AF 42, down 12, Went for it
- Close callQ1 11:044th & 1 at AF 32, tied, Punted
- Close callQ1 0:214th & 2 at AF 33, down 14, Punted
- Close callQ2 6:544th & 2 at AF 28, down 7, Punted
- AgreedQ2 0:584th & 14 at AF 45, down 14, Punted
- AgreedQ3 12:284th & 5 at AF 46, down 14, Punted
- AgreedQ3 2:004th & 9 at NAVY 43, down 20, Went for it
- Close callQ4 10:074th & 5 at NAVY 11, down 20, Went for it
- AgreedQ4 5:344th & 17 at AF 18, down 27, Punted
- AgreedQ4 0:004th & 4 at NAVY 49, down 27, Went for it
- AgreedQ1 7:234th & 1 at UNM 29, tied, Went for it
- AgreedQ1 4:494th & 9 at UNM 26, tied, Kicked a field goal
- AgreedQ2 13:324th & 13 at AF 22, down 4, Punted
- AgreedQ3 13:224th & 1 at AF 34, down 11, Went for it
- AgreedQ3 2:364th & 1 at AF 46, down 21, Went for it
- AgreedQ4 9:304th & 1 at AF 42, down 28, Went for it
- Close callQ4 2:184th & 7 at UNM 39, down 21, Went for it
- AgreedQ1 9:144th & 7 at AF 34, tied, Punted
- AgreedQ1 5:414th & 6 at AF 48, tied, Punted
- Close callQ1 0:004th & 3 at AF 34, tied, Punted
- Close callQ2 7:054th & 2 at AF 9, tied, Punted
- AgreedQ2 0:114th & 1 at AF 49, down 14, Went for it
- AgreedQ3 12:014th & 9 at CSU 43, down 14, Punted
- AgreedQ3 8:334th & 7 at AF 46, down 21, Punted
- AgreedQ4 3:114th & 2 at AF 38, down 8, Went for it
- AgreedQ4 1:234th & 6 at AF 23, down 8, Went for it
- AgreedQ4 0:214th & 12 at AF 31, down 8, Went for it
- AgreedQ4 0:034th & 10 at AF 43, down 8, Went for it
- Close callQ1 12:484th & 1 at AF 34, tied, Punted
- AgreedQ1 4:224th & 22 at AF 13, down 3, Punted
- Close callQ1 1:284th & 3 at AF 14, down 3, Punted
- AgreedQ2 8:044th & 10 at ARMY 45, down 6, Punted
- AgreedQ2 1:474th & 5 at ARMY 14, down 6, Kicked a field goal
- AgreedQ3 7:194th & 16 at AF 30, down 10, Punted
- AgreedQ3 7:194th & 16 at AF 30, down 10, Punted
- Close callQ4 6:134th & 11 at AF 30, down 10, Went for it
- AgreedQ4 4:194th & 1 at ARMY 42, down 10, Went for it
- AgreedQ1 2:404th & 1 at FRES 20, down 7, Went for it
- AgreedQ2 6:494th & 1 at FRES 9, tied, Went for it
- AgreedQ2 2:264th & 1 at AF 34, tied, Went for it
- Close callQ3 9:464th & 4 at FRES 19, down 4, Kicked a field goal
- AgreedQ3 5:394th & 1 at FRES 21, down 1, Went for it
- AgreedQ3 2:304th & 2 at FRES 2, down 1, Went for it
- AgreedQ4 3:444th & 1 at FRES 16, up 12, Went for it
- AgreedQ4 1:564th & 15 at FRES 19, up 12, Kicked a field goal
After touchdowns: kick or go for two?
Tries that matched the option with the better modeled win probability.
Summed over every try that differed, in points of win probability.
Went for two when it beat kicking by a point or more.
Costliest tries against the numbers
- vs CSUQ4 5:50 Touchdown, down 8 before the tryWent for two; the numbers favored kicking (close call)0.9 pts
- vs FRESQ3 2:30 Touchdown, up 5 before the tryWent for two; the numbers favored kicking (close call)0.3 pts
- at WYOQ4 7:00 Touchdown, down 5 before the tryWent for two; the numbers favored kicking (close call)0.2 pts
Win probability
YardLine's model estimates each team's chance of winning before kickoff and again after every play, from the score, clock, down, distance and field position. How it works →
Record vs. expectation, 2024
49th of 134 FBS teams at beating the model's pregame expectations
Expected wins adds up Air Force's chance of winning each game as the model saw it at kickoff - a 70% favorite counts 0.7.
What moved it, 2024
Every game starts at Air Force's pregame chance; everything after that is the field. The model's own breakdown of each game's final play splits the on-field part by what drove it, and the parts add up exactly. How it works →
- Scoreboard+0.22
- Possession & field position+0.01
- Clock+0.03
- Timeouts−0.26
- Other−0.04
- Less the pregame edge, counted before kickoff+0.51
Game by game
- MRMKW 21-6 vs MRMK96% → 99%Before kickoff +46 · On the field +3: Scoreboard +7, Timeouts +1
- SJSUL 7-17 vs SJSU53% → 3%Before kickoff +3 · On the field −50: Scoreboard −48, Timeouts −4
- BAYL 3-31 at BAY9% → 0%Before kickoff −41 · On the field −9: Scoreboard −12
- WYOL 19-31 at WYO55% → 1%Before kickoff +5 · On the field −54: Scoreboard −43, Timeouts −1
- NAVYL 7-34 vs NAVY23% → 0%Before kickoff −27 · On the field −23: Scoreboard −26, Timeouts −1
- UNML 37-52 at UNM32% → 1%Before kickoff −18 · On the field −31: Scoreboard −34, Timeouts +1
- CSUL 13-21 vs CSU25% → 1%Before kickoff −25 · On the field −24: Scoreboard −24, Timeouts −8
- ARMYL 3-20 at ARMY9% → 1%Before kickoff −41 · On the field −8: Scoreboard −14
- FRESW 36-28 vs FRES18% → 98%Before kickoff −32 · On the field +80: Scoreboard +60, Timeouts −11
- ORSTW 28-0 vs ORST38% → 100%Before kickoff −12 · On the field +62: Scoreboard +57, Timeouts −1
- NEVW 22-19 at NEV35% → 94%Before kickoff −15 · On the field +59: Scoreboard +53, Clock +3
- SDSUW 31-20 at SDSU56% → 98%Before kickoff +6 · On the field +42: Scoreboard +48, Clock +3
Points of win probability, from Air Force's side.
Closest call
AF 41-38 SJSU (2016) - Air Force dropped to a 10.7% win probability before pulling it out.
Season arc, 2024
Every completed game this season, in order - each tile is Air Force's own win-probability curve.
Biggest swings of 2024
The largest single-play change in Air Force's win probability this season - one snap that moved the outcome the most.
Stolen wins
Air Force's own lowest win probability at any point in a game it went on to win, across the whole archive - the deepest holes it climbed out of.
Let it slip
Air Force's own highest win probability at any point in a game it went on to lose, across the whole archive - the biggest leads it didn't hold.
Stock & rivalries
Stock
Air Force's leaguewide Elo rating, tracked like a stock price - built from game results and margins, not the model's own win-probability predictions.
Series & rivalries
Air Force's most-played opponents across the whole archive - open one for the full head-to-head history.