Buffalo
- SP+
- −15.2 (#119)
- FPI
- −13.6 (#117)
- SRS
- −15.3 (#145)
- Resume
- #121
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, 2023
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 133 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, 2023
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 Buffalo 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 Buffalo.
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, 2023
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.
- Cole SnyderQB277 plays · +0.182 pts/play · 93rd of 250 QBs0.94WAR0.35 to 1.67
- CJ OgbonnaQB64 plays · +0.297 pts/play · 148th of 250 QBs0.36WAR0.20 to 0.50
- Ron Cook Jr.RB143 plays · +0.095 pts/play · 102nd of 383 RBs0.25WAR0.15 to 0.37
- Anthony VenneriP44 plays · +0.239 pts/play · 6th of 103 punters0.20WAR0.13 to 0.27
- Mike Washington Jr.RB75 plays · +0.120 pts/play · 169th of 383 RBs0.17WAR0.11 to 0.23
- Alex McNultyPK16 plays · +0.337 pts/play · 33rd of 113 kickers0.10WAR0.05 to 0.14
- Boobie CurryWR36 plays · +0.099 pts/play · 240th of 457 WRs0.07WAR−0.01 to 0.16
- Marlyn JohnsonWR36 plays · +0.069 pts/play · 286th of 457 WRs0.05WAR−0.02 to 0.11
Every player (9)
- Cole HarrityWR35 plays · +0.064 pts/play · 302nd of 457 WRs0.04WAR−0.03 to 0.12
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 Buffalo'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, 2023
12 players transferred in and 13 out. WAR is each one's 2022 season, before the move. Every team's portal
In 2023, the arrivals have added 0.36 WAR at Buffalo and the departures 0.01 wherever they went.
- CJ OgbonnaQB · 3★from Southeast Missouri State-0.36
The other 11
- Alex HeiningerOT · 3★from Central Michigan--
- Chance MorrowWR · 3★from Louisville--
- D'Andre GreeleyCB · 3★from Colorado State--
- Demetrius HarrisS · 3★from Cornell--
- Jacob OrlandoTE · 3★from Massachusetts--
- Joe AndreessenLB · 3★from Bryant--
- Jyaire StevensEDGE · 3★from Lafayette--
- Nick BeansIOL · 3★from Notre Dame College--
- Zion CarterTE · 3★from Dartmouth--
- Darrell HardingWR · 2★from Duke--
- Jerrod GentryCB · 2★from Tennessee--
- Matt MyersQB · 2★to undecided0.09-
- Jamari GassettWR · 3★to Florida A&M0.04-
- Trevor BorlandTE · 2★to Western Kentucky0.020.01
The other 10
- Ali FisherWR · 3★to Kent State--
- Anton RicumstrictEDGE · 3★to undecided--
- Brian PlummerQB · 3★to undecided--
- Casey CaseQB · 3★to Stony Brook--
- Jackson ParadisRB · 3★to Massachusetts--
- Jibrahn ClaudeS · 3★to undecided--
- Keyshawn CobbS · 3★to West Virginia--
- Khamran LabornWR · 3★to undecided--
- Jack HaszIOL · 2★to UNLV--
- Janik OgunladeIOL · 2★to undecided--
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. 2022 is the player's season at his old school, 2023 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.
Talent and roster
How much talent the roster had, by recruiting ratings, and how much of it showed up on the field, against every other FBS team. How it works →
What it had and what it did, 2023
- Roster talent: 296, 127th of 130 in FBSRoster talent247Sports' talent composite: the recruiting ratings of every player on the roster, transfers included.
- Recruiting: 140, 92nd of 130 in FBSRecruitingAverage 247Sports class score over this season's class and the three before it.
- Returning production: 57%, 56th of 128 in FBSReturning productionShare of last season's production (expected points added) by players still on the roster.
- SP+ rating: −15.2, 116th of 130 in FBSSP+ ratingThe result: Bill Connelly's opponent-adjusted rating, points per game better than an average FBS team.
Ranks and bars among the 130 FBS teams with a talent rating this season, best first; the line in each bar is the FBS median.
Talent conversion
Buffalo's SP+ of −15.2 is 4.5 points below the −10.7 its roster talent predicts, 87th of 130 in FBS.
The same comparison on each side of the ball, positive is better for both.
Conversion by season
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, 2023
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 Buffalo's own. A call that differs gives up the gap to the best option; gaps under one point are close calls, and the 4 clear-cut ones account for 0.05 of the 0.10 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
- at KENTQ3 5:43 4th & 3 at midfield, up 11Punted; the numbers favored going for it−1.2 pts
- vs BGSUQ2 0:03 4th & 3 at BGSU 32, down 17Kicked a field goal; the numbers favored going for it−1.2 pts
- at AKRQ4 8:24 4th & 5 at midfield, tiedPunted; the numbers favored going for it−1.1 pts
- vs CMUQ1 3:10 4th & 1 at CMU 1, up 7Kicked a field goal; the numbers favored going for it−1.1 pts
- vs LIBQ3 1:28 4th & 4 at BUF 31, down 20Went for it; the numbers favored punting (close call)−0.7 pts
- vs BGSUQ4 8:08 4th & 10 at midfield, down 10Went for it; the numbers favored punting (close call)−0.6 pts
- at WISQ3 12:21 4th & 2 at BUF 40, down 4Punted; the numbers favored going for it (close call)−0.6 pts
- vs EMUQ4 12:32 4th & 6 at BUF 24, down 14Went for it; the numbers favored punting (close call)−0.5 pts
Every call this season (116)
- Q1 11:084th & 4 at BUF 32, tied · PuntedAgreed
- Q2 13:094th & 1 at WIS 40, tied · Went for itAgreed
- Q2 11:424th & 10 at WIS 16, tied · Kicked a field goalAgreed
- Q2 6:294th & 6 at BUF 27, tied · PuntedAgreed
- Q2 3:084th & 6 at BUF 17, tied · PuntedAgreed
- Q2 0:074th & 6 at WIS 35, down 7 · Kicked a field goalAgreed
- Q3 12:214th & 2 at BUF 40, down 4 · PuntedClose call
- Q3 8:434th & 18 at BUF 46, down 4 · PuntedAgreed
- Q3 5:504th & 8 at BUF 41, down 11 · PuntedAgreed
- Q3 1:414th & 25 at BUF 16, down 18 · PuntedAgreed
- Q4 13:454th & 6 at BUF 29, down 21 · Went for itClose call
- Q4 9:354th & 1 at WIS 40, down 21 · Went for itAgreed
- Q4 6:384th & 1 at WIS 42, down 21 · Went for itAgreed
- Q4 3:434th & 3 at WIS 44, down 21 · Went for itClose call
- Q1 9:414th & 4 at BUF 29, down 3 · PuntedClose call
- Q1 6:564th & 2 at BUF 33, down 3 · PuntedClose call
- Q1 2:064th & 3 at LIB 22, down 10 · Kicked a field goalClose call
- Q2 13:534th & 15 at BUF 21, down 10 · PuntedAgreed
- Q3 9:404th & 3 at BUF 42, down 13 · Went for itAgreed
- Q3 8:384th & 2 at LIB 20, down 20 · Went for itAgreed
- Q3 1:284th & 4 at BUF 31, down 20 · Went for itClose call
- Q4 10:584th & 5 at LIB 10, down 28 · Went for itClose call
- Q4 6:344th & 10 at BUF 12, down 28 · PuntedAgreed
- Q4 5:394th & 8 at BUF 27, down 28 · PuntedAgreed
- Q4 3:094th & 8 at BUF 19, down 28 · PuntedAgreed
- Q4 1:494th & 5 at BUF 44, down 28 · Went for itClose call
- Q1 11:494th & 15 at BUF 6, tied · PuntedAgreed
- Q1 5:534th & 3 at BUF 48, tied · Went for itAgreed
- Q1 1:164th & 8 at BUF 28, down 7 · PuntedAgreed
- Q2 10:004th & 11 at BUF 38, down 7 · PuntedAgreed
- Q2 1:304th & 22 at BUF 29, down 10 · PuntedAgreed
- Q3 13:404th & 9 at BUF 26, down 10 · PuntedAgreed
- Q3 11:554th & 1 at UL 12, down 17 · Went for itAgreed
- Q3 5:324th & 9 at BUF 41, down 24 · PuntedAgreed
- Q4 10:424th & 5 at UL 28, down 17 · Kicked a field goalAgreed
- Q4 4:314th & 2 at UL 35, down 14 · Went for itAgreed
- Q1 11:034th & 12 at BUF 31, tied · PuntedAgreed
- Q1 6:254th & 27 at BUF 47, tied · PuntedAgreed
- Q3 13:224th & 10 at BUF 14, tied · PuntedAgreed
- Q3 5:464th & 1 at AKR 28, tied · Went for itAgreed
- Q3 3:304th & 9 at AKR 25, tied · Kicked a field goalAgreed
- Q4 11:424th & 12 at BUF 30, tied · PuntedAgreed
- Q4 8:244th & 5 at midfield, tied · Punted−1.1 pts
- Q4 3:104th & 2 at AKR 44, tied · Went for itAgreed
- Q4 0:184th & 20 at BUF 27, tied · PuntedAgreed
- Q1 13:044th & 4 at BUF 29, tied · PuntedClose call
- Q1 7:044th & 1 at midfield, up 7 · Went for itAgreed
- Q1 3:104th & 1 at CMU 1, up 7 · Kicked a field goal−1.1 pts
- Q2 8:264th & 4 at CMU 47, up 3 · Went for itAgreed
- Q2 5:004th & 10 at CMU 26, up 3 · Kicked a field goalAgreed
- Q2 0:004th & 7 at CMU 30, up 13 · Kicked a field goalAgreed
- Q3 6:324th & 4 at BUF 46, up 30 · PuntedClose call
- Q3 1:564th & 3 at BUF 22, up 30 · PuntedAgreed
- Q4 6:254th & 6 at CMU 6, up 30 · Kicked a field goalAgreed
- Q4 0:594th & 11 at BUF 37, up 24 · PuntedAgreed
- Q1 10:584th & 4 at BUF 34, tied · PuntedAgreed
- Q2 13:294th & 5 at BUF 40, down 3 · PuntedAgreed
- Q2 2:204th & 7 at BUF 38, down 10 · PuntedAgreed
- Q2 0:034th & 3 at BGSU 32, down 17 · Kicked a field goal−1.2 pts
- Q3 7:354th & 9 at BGSU 39, down 17 · Went for itAgreed
- Q3 0:174th & 1 at BUF 44, down 10 · Went for itAgreed
- Q4 8:084th & 10 at midfield, down 10 · Went for itClose call
- Q4 2:454th & 7 at BGSU 41, down 10 · Went for itAgreed
- Q1 11:044th & 6 at BUF 44, tied · PuntedAgreed
- Q2 4:184th & 9 at KENT 45, up 8 · PuntedAgreed
- Q2 4:184th & 9 at KENT 45, up 8 · PuntedAgreed
- Q2 1:024th & 10 at BUF 34, up 8 · PuntedAgreed
- Q3 11:554th & 6 at KENT 35, up 8 · Kicked a field goalClose call
- Q3 5:434th & 3 at midfield, up 11 · Punted−1.2 pts
- Q3 2:464th & 7 at BUF 43, up 11 · PuntedAgreed
- Q4 12:424th & 5 at KENT 16, up 11 · Kicked a field goalAgreed
- Q4 11:284th & 10 at BUF 38, up 11 · PuntedAgreed
- Q1 12:424th & 5 at BUF 45, down 7 · PuntedAgreed
- Q1 11:044th & 10 at BUF 31, down 14 · PuntedAgreed
- Q1 3:354th & 8 at BUF 3, down 7 · PuntedAgreed
- Q1 1:164th & 6 at BUF 11, down 7 · PuntedAgreed
- Q2 10:334th & 1 at TOL 41, down 14 · Went for itAgreed
- Q2 6:244th & 10 at TOL 18, down 14 · Kicked a field goalAgreed
- Q3 12:264th & 3 at BUF 44, down 17 · Went for itAgreed
- Q3 7:164th & 14 at BUF 19, down 17 · PuntedAgreed
- Q3 7:024th & 1 at TOL 16, down 24 · Went for itAgreed
- Q3 1:444th & 7 at TOL 7, down 24 · Went for itClose call
- Q4 7:084th & 10 at TOL 45, down 18 · Went for itClose call
- Q4 1:254th & 6 at TOL 6, down 18 · Went for itAgreed
- Q1 15:004th & 1 at OHIO 35, tied · Went for itAgreed
- Q1 7:204th & 1 at OHIO 14, tied · Went for itAgreed
- Q1 1:464th & 10 at BUF 43, tied · PuntedAgreed
- Q2 6:244th & 5 at OHIO 23, tied · Kicked a field goalAgreed
- Q2 5:214th & 1 at OHIO 44, up 3 · Went for itAgreed
- Q2 0:024th & 13 at OHIO 37, up 3 · Kicked a field goalClose call
- Q3 6:384th & 5 at BUF 11, tied · PuntedAgreed
- Q4 1:014th & 5 at BUF 36, down 10 · Went for itClose call
- Q4 0:324th & 11 at BUF 46, down 10 · Went for itClose call
- Q1 12:504th & 3 at BUF 32, tied · PuntedAgreed
- Q1 9:564th & 9 at BUF 28, tied · PuntedAgreed
- Q2 14:524th & 2 at M-OH 33, tied · Went for itAgreed
- Q2 10:194th & 17 at BUF 10, tied · PuntedAgreed
- Q2 6:264th & 6 at BUF 39, down 3 · PuntedAgreed
- Q2 0:004th & 5 at M-OH 30, down 10 · Kicked a field goalClose call
- Q3 5:374th & 4 at M-OH 49, down 10 · Went for itAgreed
- Q4 12:164th & 6 at BUF 26, down 3 · PuntedAgreed
- Q4 8:554th & 4 at BUF 14, down 10 · PuntedAgreed
- Q1 11:354th & 4 at BUF 16, tied · PuntedAgreed
- Q1 5:504th & 4 at BUF 31, down 7 · Went for itClose call
- Q1 2:524th & 4 at EMU 37, down 7 · Went for itAgreed
- Q2 2:234th & 9 at BUF 44, down 17 · PuntedAgreed
- Q3 11:464th & 5 at EMU 9, down 24 · Went for itClose call
- Q3 1:124th & 4 at BUF 36, down 14 · Went for itAgreed
- Q4 12:324th & 6 at BUF 24, down 14 · Went for itClose call
- Q4 10:574th & 1 at EMU 15, down 14 · Went for itAgreed
- Q4 6:014th & 13 at EMU 22, down 14 · Kicked a field goalAgreed
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 EMUQ3 4:45 Touchdown, down 18 before the tryWent for two; the numbers favored kicking (close call)−0.2 pts
- at ULQ3 0:47 Touchdown, down 12 before the tryWent for two; the numbers favored kicking (close call)−0.1 pts
- at ULQ4 4:32 Touchdown, down 15 before the tryKicked; the numbers favored going for two (close call)−0.1 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, 2023
132nd of 133 FBS teams at beating the model's pregame expectations
Expected wins adds up Buffalo's chance of winning each game as the model saw it at kickoff - a 70% favorite counts 0.7.
What moved it, 2023
Every game starts at Buffalo'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−2.01
- Possession & field position−0.03
- Clock−0.24
- Timeouts+0.22
- Less the pregame edge, counted before kickoff−0.12
Game by game
- WISL 17-38 at WIS7% → 0%Before kickoff −43 · On the field −7: Scoreboard −11
- FORL 37-40 vs FOR93% → 31%Before kickoff +43 · On the field −62: Scoreboard −23, Clock −1
- LIBL 27-55 vs LIB46% → 0%Before kickoff −4 · On the field −45: Scoreboard −48, Clock −1
- ULL 38-45 at UL23% → 2%Before kickoff −27 · On the field −21: Scoreboard −26
- AKRW 13-10 at AKR43% → 76%Before kickoff −7 · On the field +33: Scoreboard +33, Timeouts +20
- CMUW 37-13 vs CMU47% → 99%Before kickoff −3 · On the field +53: Scoreboard +46, Clock +1
- BGSUL 14-24 vs BGSU65% → 2%Before kickoff +15 · On the field −63: Scoreboard −59, Clock −2
- KENTW 24-6 at KENT75% → 99%Before kickoff +25 · On the field +24: Scoreboard +32, Clock +2
- TOLL 13-31 at TOL16% → 1%Before kickoff −34 · On the field −15: Scoreboard −22, Timeouts +1
- OHIOL 10-20 vs OHIO26% → 5%Before kickoff −24 · On the field −21: Scoreboard −35, Possession & field position −1
- M-OHL 10-23 at M-OH30% → 1%Before kickoff −20 · On the field −29: Scoreboard −30, Timeouts −1
- EMUL 11-24 vs EMU68% → 3%Before kickoff +18 · On the field −65: Scoreboard −58, Clock −3
Points of win probability, from Buffalo's side.
Closest call
BALL 48-51 BUF (2024) - Buffalo dropped to a 6.3% win probability before pulling it out.
Season arc, 2023
Every completed game this season, in order - each tile is Buffalo's own win-probability curve.
Biggest swings of 2023
The largest single-play change in Buffalo's win probability this season - one snap that moved the outcome the most.
Stolen wins
Buffalo'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
Buffalo'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
Buffalo'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
Buffalo's most-played opponents across the whole archive - open one for the full head-to-head history.