From CollegeFootballData’s box score. Names lead to each player’s page. ★ a career high on file.
Team stats
Buffalo
Ohio
260
Total yards
474
238
Passing yards
317
22
Rushing yards
157
4.9
Yards per pass
10.9
0.8
Yards per rush
4.5
17
First downs
20
8–19
Third downs
4–9
2–3
Fourth downs
0–0
3
Turnovers
2
4–38
Penalties
7–51
29:46
Possession
30:14
0
Sacks (by defense)
6
Efficiency
Buffalo
Ohio
31%
Success rate
47%
−0.15
EPA per play
0.27
1.01
Explosiveness
1.41
−0.39
Rushing EPA
−0.09
0.07
Passing EPA
0.69
29%
Passing-down success
41%
−0.39
First-down EPA
−0.16
−0.18
Second-down EPA
0.90
0.04
Third-down EPA
0.13
13%
Havoc by its defense
23%
From CollegeFootballData.com: each offense’s efficiency, and the havoc each defense caused. The better side of each line is bold.
Before kickoff
Our ratings and the line, going in
Our ratings (scores only)
Ohio 52% to win. Elo’s favorite won.
The line
Buffalo −2.5, over/under 61.
The last line on file before kickoff: the consensus line when the books publish one, otherwise a single major sportsbook’s.
Before kickoff, the win chances were Buffalo 57%, Ohio 43%. CollegeFootballData.com’s estimate from the point spread.
Every drive
Solid bars scored; an outline in the other team’s color marks points the defense scored. Ohio drives left to right, Buffalo right to left.
Q1 BuffaloPunt, 3 plays, 9 yards
Q1 OhioTouchdown, 5 plays, 70 yards
Q1 BuffaloPunt, 3 plays, 0 yards
Q1 OhioField goal, 8 plays, 45 yards
Q1 BuffaloInterception, 3 plays, −4 yards
Q1 OhioTouchdown, 5 plays, 42 yards
Q1 BuffaloField goal, 10 plays, 65 yards
Q2 OhioPunt, 6 plays, 36 yards
Q2 BuffaloPunt, 5 plays, 14 yards
Q2 OhioTouchdown, 5 plays, 62 yards
Q2 BuffaloPunt, 3 plays, 6 yards
Q2 OhioPunt, 3 plays, −2 yards
Q2 BuffaloTouchdown, 8 plays, 35 yards
Q2 OhioEnd of half, 1 play, −3 yards
Q3 OhioPick-six, 3 plays (Buffalo scores), 6 yards
Q3 OhioTouchdown, 8 plays, 75 yards
Q3 BuffaloPunt, 3 plays, −1 yard
Q3 OhioFumble, 1 play, 28 yards
Q3 BuffaloTouchdown, 14 plays, 56 yards
Q3 OhioTouchdown, 7 plays, 80 yards
Q4 BuffaloFumble, 2 plays, −10 yards
Q4 OhioTouchdown, 2 plays, 12 yards
Q4 BuffaloTurnover on downs, 6 plays, 28 yards
Q4 OhioPunt, 4 plays, −4 yards
Q4 BuffaloFumble, 18 plays, 78 yards
Q4 OhioEnd of game, 7 plays, 22 yards
Play by play
1st quarter7 drives, then Ohio 17, Buffalo 0
Buffalo Punt, 3 plays
14:54
Tristian Vandenberg kickoff for 64 yds , Ron Cook Jr. return for 24 yds to the Buff 25
14:54
1st & 10 at own 25
Cole Snyder pass incomplete
14:54
2nd & 10 at own 25
Ron Cook Jr. run for 1 yd to the Buff 26
14:54
3rd & 9 at own 26
Cole Snyder run for 8 yds to the Buff 34
13:19
4th & 1 at own 34
Anthony Venneri punt for 36 yds
Ohio Touchdown, 5 plays
13:19
1st & 10 at own 30
Kurtis Rourke pass complete to Sam Wiglusz for 23 yds to the Buff 47 for a 1ST down
13:19
1st & 10 at opp 47
Nolan McCormick run for 2 yds to the Buff 45
13:19
2nd & 8 at opp 45
Kurtis Rourke pass complete to Nolan McCormick for 12 yds to the Buff 33 for a 1ST down
13:19
1st & 10 at opp 33
BUFFALO Penalty, Personal Foul (Jaylon Bass) to the Buff 16 for a 1ST down
11:22
1st & 10 at opp 16
Kurtis Rourke pass complete to Sam Wiglusz for 16 yds for a TD, (Nathanial Vakos KICK)Ohio 7, Buffalo 0
11:22
1st & 10 at own 35
Timeout OHIO, clock 11:22
Buffalo Punt, 3 plays
11:17
Tristian Vandenberg kickoff for 59 yds , Ron Cook Jr. return for 24 yds to the OHIO 41 BUFFALO Penalty, Offensive Holding (10 Yards) to the Buff 15
11:17
1st & 10 at own 15
Ron Cook Jr. run for 2 yds to the Buff 17
11:17
2nd & 8 at own 17
Cole Snyder run for 5 yds to the Buff 22
11:17
3rd & 3 at own 22
Cole Snyder sacked by Bryce Houston for a loss of 7 yards to the Buff 15
9:19
4th & 10 at own 15
Anthony Venneri punt for 50 yds
9:19
1st & 10 at own 35
Timeout OHIO, clock 09:19
Ohio Field goal, 8 plays
9:19
1st & 10 at own 35
Kurtis Rourke pass complete to Sam Wiglusz for 6 yds to the Ohio 41
9:19
2nd & 4 at own 41
Jake Neatherton run for 16 yds to the Buff 43 for a 1ST down
9:19
1st & 10 at opp 43
Kurtis Rourke pass incomplete
9:19
2nd & 10 at opp 43
Kurtis Rourke run for 18 yds to the Buff 25 for a 1ST down
9:19
1st & 10 at opp 25
Kurtis Rourke pass incomplete
9:19
2nd & 10 at opp 25
Nolan McCormick run for 4 yds to the Buff 21
9:19
3rd & 6 at opp 21
Kurtis Rourke run for 1 yd to the Buff 20
6:01
4th & 5 at opp 20
Nathanial Vakos 37 yd FG GOODOhio 10, Buffalo 0
Buffalo Interception, 3 plays
6:01
Timeout OHIO, clock 06:01
6:01
Tristian Vandenberg kickoff for 65 yds for a touchback
6:01
1st & 10 at own 25
Cole Snyder pass complete to Marlyn Johnson for a loss of 1 yard to the Buff 24
4:37
3rd & 14 at own 21
Timeout BUFFALO, clock 04:37
4:37
2nd & 11 at own 24
Cole Snyder sacked by Rodney Mathews for a loss of 3 yards to the Buff 21
4:27
3rd & 14 at own 21
Cole Snyder pass intercepted
4:27
3rd & 14 at own 21
Cole Snyder pass intercepted
Ohio Touchdown, 5 plays
4:27
1st & 10 at opp 42
Kurtis Rourke pass complete to James Bostic for 5 yds to the Buff 37
3:02
3rd & 4 at opp 36
Timeout BUFFALO, clock 03:02
3:02
2nd & 5 at opp 37
Nolan McCormick run for 1 yd to the Buff 36
3:02
3rd & 4 at opp 36
Kurtis Rourke pass complete to Sam Wiglusz for 32 yds to the Buff 4 for a 1ST down
3:02
1st & goal at opp 4
Nolan McCormick run for a loss of 1 yard to the Buff 5
1:38
2nd & goal at opp 5
Kurtis Rourke pass complete to Jacoby Jones for 5 yds for a TD, (Nathanial Vakos KICK)Ohio 17, Buffalo 0
Buffalo Field goal, 10 plays
1:38
Tristian Vandenberg kickoff for 65 yds for a touchback
1:38
1st & 10 at own 25
Cole Snyder pass complete to Jamari Gassett for 6 yds to the Buff 31
1:38
2nd & 4 at own 31
Cole Snyder pass complete to Justin Marshall for 27 yds to the Ohio 42 for a 1ST down
1:38
1st & 10 at opp 42
SNYDER, Cole pass up the middle complete for 11 yards to BORLAND, Trevor caught at the OHI36 and advanced to the OHI31 (MCCRORY, Jack). PENALTY BUF Ineligible Receiver Downfield on Pass on WRIGHT, Isaiah enforced 5 yards from the OHI42 to the OHI47 [NHSG]. NO PLAY (replay the down).
1:38
1st & 15 at opp 47
OHIO Penalty, Unnecessary Roughness (Zach Sanders) to the Ohio 26 for a 1ST down
0:00
1st & 10 at opp 26
Cole Snyder run for a loss of 1 yard to the Ohio 27
Q2 15:00
2nd & 11 at opp 27
Cole Snyder pass complete to Jamari Gassett for 4 yds to the Ohio 23
Q2 15:00
3rd & 7 at opp 23
Cole Snyder pass complete to Ron Cook Jr. for 13 yds to the Ohio 10 for a 1ST down
Q2 15:00
1st & goal at opp 10
Cole Snyder run for a loss of 1 yard to the Ohio 11
Q2 15:00
2nd & goal at opp 11
run for 1 yd to the Ohio 10
Q2 15:00
3rd & goal at opp 10
Cole Snyder pass incomplete
Q2 12:05
4th & goal at opp 10
Alex McNulty 28 yd FG GOODOhio 17, Buffalo 3
Q2 12:05
Timeout OHIO, clock 12:05
2nd quarter7 drives, then Ohio 24, Buffalo 10
Ohio Punt, 6 plays
12:00
Alex McNulty kickoff for 65 yds , Keegan Wilburn return for 16 yds to the Ohio 16
12:00
1st & 10 at own 16
Nolan McCormick run for 2 yds to the Ohio 18
12:00
2nd & 8 at own 18
Kurtis Rourke pass complete to Alec Burton for 6 yds to the Ohio 24
12:00
3rd & 2 at own 24
Kurtis Rourke pass complete to James Bostic for 25 yds to the Ohio 49 for a 1ST down
12:00
1st & 10 at own 49
Kurtis Rourke pass incomplete
10:01
3rd & 7 at opp 48
Timeout OHIO, clock 10:01
10:01
2nd & 10 at own 49
Nolan McCormick run for 3 yds to the Buff 48
10:01
3rd & 7 at opp 48
Kurtis Rourke pass incomplete
9:39
4th & 7 at opp 48
Jack Wilson punt for 39 yds, fair catch by Quian Williams at the Buff 9
Buffalo Punt, 5 plays
9:39
1st & 10 at own 9
Cole Snyder pass complete to Marlyn Johnson for 8 yds to the Buff 17
9:39
2nd & 2 at own 17
Al-Jay Henderson run for 7 yds to the Buff 24 for a 1ST down
9:39
1st & 10 at own 24
Al-Jay Henderson run for 3 yds to the Buff 27
9:39
2nd & 7 at own 27
Al-Jay Henderson run for a loss of 4 yards to the Buff 23
9:39
3rd & 11 at own 23
Timeout OHIO, clock 09:39
9:39
3rd & 11 at own 23
Cole Snyder pass incomplete
6:57
4th & 11 at own 23
Anthony Venneri punt for 38 yds , Sam Wiglusz returns for a loss of 1 yard to the Ohio 38
6:57
1st & 10 at own 38
Timeout OHIO, clock 06:57
Ohio Touchdown, 5 plays
6:57
1st & 10 at own 38
Julian Ross run for 3 yds to the Ohio 41
6:57
2nd & 7 at own 41
Kurtis Rourke pass complete to Sam Wiglusz for 49 yds to the Buff 10 for a 1ST down
6:57
1st & goal at opp 10
Julian Ross run for 8 yds to the Buff 2
6:57
2nd & goal at opp 2
Julian Ross run for a loss of 3 yards to the Buff 5
6:57
3rd & goal at opp 5
Timeout OHIO, clock 06:57
4:03
3rd & goal at opp 5
Kurtis Rourke pass complete to Sam Wiglusz for 5 yds for a TD, (Nathanial Vakos KICK)Ohio 24, Buffalo 3
Buffalo Punt, 3 plays
3:50
Tristian Vandenberg kickoff for 63 yds , Ron Cook Jr. return for 38 yds to the OHIO 27 BUFFALO Penalty, Illegal Block ( Yards) to the Buff 8
3:50
1st & 10 at own 8
Mike Washington run for 3 yds to the Buff 11
3:50
2nd & 7 at own 11
Cole Snyder run for 3 yds to the Buff 14
3:50
3rd & 4 at own 14
Cole Snyder pass incomplete
2:15
4th & 4 at own 14
Anthony Venneri punt for 59 yds, downed at the Ohio 17
2:15
1st & 10 at own 17
ROURKE, Kurtis scrambles up the middle for a gain of 7 yards to the OHI24 (DOLAC, Shaun). PENALTY Before the snap, OHI Illegal Formation enforced 5 yards from the OHI17 to the OHI12. NO PLAY (replay the down).
Ohio Punt, 3 plays
2:15
1st & 15 at own 12
Kurtis Rourke pass incomplete
1:45
3rd & 12 at own 15
Timeout BUFFALO, clock 01:45
1:45
2nd & 15 at own 12
Nolan McCormick run for 3 yds to the Ohio 15
1:45
3rd & 12 at own 15
Kurtis Rourke pass incomplete
1:32
4th & 12 at own 15
Jack Wilson punt for 20 yds
Buffalo Touchdown, 8 plays
1:32
1st & 10 at opp 35
Cole Snyder pass complete to Quian Williams for 9 yds to the Ohio 26
1:32
2nd & 1 at opp 26
Cole Snyder pass complete to Ron Cook Jr. for 1 yd to the Ohio 25 for a 1ST down
1:32
1st & 10 at opp 25
Cole Snyder pass incomplete
1:32
2nd & 10 at opp 25
Cole Snyder run for 2 yds to the Ohio 23
1:32
3rd & 8 at opp 23
Cole Snyder pass complete to Quian Williams for 11 yds to the Ohio 12 for a 1ST down
1:32
1st & 10 at opp 12
Cole Snyder pass incomplete
1:32
2nd & 10 at opp 12
Cole Snyder pass incomplete
0:20
3rd & 10 at opp 12
Cole Snyder pass complete to Justin Marshall for 12 yds for a TD OHIO Penalty, Defensive Pass Interference (Torrie Cox Jr.) declined, (Alex McNulty KICK)Ohio 24, Buffalo 10
Ohio End of half, 1 play
0:20
Alex McNulty kickoff for 65 yds for a touchback
0:00
1st & 10 at own 25
[NHSG] Kneel down by ROURKE, Kurtis at OHI22 (team loss of 3), clock 00:00.
3rd quarter5 drives, then Ohio 31, Buffalo 24
Ohio Pick-six, 3 plays (Buffalo scores)
14:55
Alex McNulty kickoff for 65 yds , Keegan Wilburn return for 16 yds to the Ohio 16
Kurtis Rourke pass complete to Will Kacmarek for 24 yds to the Buff 47 for a 1ST down
14:00
1st & 10 at opp 47
OHIO Penalty, False Start (Kurt Danneker) to the Ohio 48
14:00
1st & 15 at own 48
Kurtis Rourke pass complete to Will Kacmarek for 20 yds to the Buff 32 for a 1ST down
14:00
1st & 10 at opp 32
Cam Dorsey run for no gain to the Buff 32
14:00
2nd & 10 at opp 32
Kurtis Rourke run for 13 yds to the Buff 19 for a 1ST down
14:00
1st & 10 at opp 19
Kurtis Rourke pass complete to Miles Cross for 8 yds to the Buff 11
14:00
2nd & 2 at opp 11
Kurtis Rourke pass complete to James Bostic for 9 yds to the Buff 2 for a 1ST down
10:05
1st & goal at opp 2
Kurtis Rourke pass complete to Miles Cross for 2 yds for a TD, (Nathanial Vakos KICK)Ohio 31, Buffalo 17
Buffalo Punt, 3 plays
10:05
1st & goal at opp 3
Timeout OHIO, clock 10:05
10:05
Tristian Vandenberg kickoff for 65 yds for a touchback
10:05
1st & 10 at own 25
Cole Snyder pass incomplete
10:05
2nd & 10 at own 25
Cole Snyder pass incomplete
10:05
3rd & 10 at own 25
Cole Snyder run for a loss of 1 yard to the Buff 24 Cole Snyder fumbled, recovered by Buff
8:51
4th & 11 at own 24
Anthony Venneri punt for 50 yds , Sam Wiglusz returns for 7 yds to the Ohio 33
8:51
1st & 10 at own 33
Timeout OHIO, clock 08:51
8:39
1st & 10 at own 33
Julian Ross run for 28 yds to the Buff 44 Julian Ross fumbled, recovered by Buff Marcus Fuqua
Buffalo Touchdown, 14 plays
8:39
1st & 10 at own 44
Mike Washington run for 3 yds to the Buff 47
8:39
2nd & 7 at own 47
Cole Snyder pass complete to Quian Williams for 2 yds to the Buff 49
8:39
3rd & 5 at own 49
Cole Snyder pass complete to Quian Williams for 8 yds to the Ohio 43 for a 1ST down
8:39
1st & 10 at opp 43
Cole Snyder pass incomplete
8:39
2nd & 10 at opp 43
Mike Washington run for 2 yds to the Ohio 41
8:39
3rd & 8 at opp 41
Cole Snyder pass complete to Quian Williams for 18 yds to the Ohio 23 for a 1ST down
8:39
1st & 10 at opp 23
Mike Washington run for 6 yds to the Ohio 17
8:39
2nd & 4 at opp 17
Mike Washington run for 4 yds to the Ohio 13 for a 1ST down
8:39
1st & 10 at opp 13
Mike Washington run for 1 yd to the Ohio 12
8:39
2nd & 9 at opp 12
Cole Snyder run for 4 yds to the Ohio 8
8:39
3rd & 5 at opp 8
OHIO Penalty, Unsportsmanlike Conduct (Zach Sanders) to the Ohio 4 for a 1ST down
8:39
1st & goal at opp 4
Cole Snyder run for 1 yd to the Ohio 3
8:39
2nd & goal at opp 3
Cole Snyder sacked by Jack McCrory and Keye Thompson for a loss of 1 yard to the Ohio 4
8:39
3rd & goal at opp 4
Cole Snyder pass incomplete
1:46
4th & goal at opp 2
Cole Snyder pass complete to Mike Washington for 2 yds for a TD, (Alex McNulty KICK)Ohio 31, Buffalo 24
Ohio Touchdown, 7 plays
1:40
Alex McNulty kickoff for 65 yds , Miles Cross return for 20 yds to the Ohio 20
1:40
1st & 10 at own 20
Cam Dorsey run for 2 yds to the Ohio 22
1:40
2nd & 8 at own 22
Kurtis Rourke pass complete to Jacoby Jones for 43 yds to the Buff 35 for a 1ST down
0:00
1st & 10 at opp 35
Kurtis Rourke pass complete to Jacoby Jones for 19 yds to the Buff 16 for a 1ST down
Q4 15:00
1st & 10 at opp 16
Cam Dorsey run for 9 yds to the Buff 7
Q4 13:55
2nd & 1 at opp 7
Cam Dorsey run for 6 yds to the Buff 1 for a 1ST down
Q4 13:55
1st & goal at opp 1
Timeout OHIO, clock 13:55
Q4 13:55
1st & goal at opp 1
Kurtis Rourke run for no gain to the Buff 1
Q4 13:16
2nd & goal at opp 1
Cam Dorsey run for 1 yd for a TD, (Nathanial Vakos KICK)Ohio 38, Buffalo 24
4th quarter6 drives, then Ohio 45, Buffalo 24
Buffalo Fumble, 2 plays
13:16
Tristian Vandenberg kickoff for 53 yds
13:16
1st & 10 at own 25
Cole Snyder pass incomplete
13:01
2nd & 10 at own 25
Cole Snyder sacked for a loss of 10 yards to the Buff 12
Ohio Touchdown, 2 plays
13:01
1st & 10 at opp 12
Cam Dorsey run for 3 yds to the Buff 9
12:10
2nd & 7 at opp 9
Kurtis Rourke pass complete to Miles Cross for 9 yds for a TD, (Nathanial Vakos KICK)Ohio 45, Buffalo 24
Buffalo Turnover on downs, 6 plays
12:10
1st & goal at opp 3
Timeout OHIO, clock 12:10
12:10
Tristian Vandenberg kickoff for 64 yds
12:10
1st & 10 at own 25
Cole Snyder pass incomplete
12:10
2nd & 10 at own 25
Cole Snyder pass complete to Cole Harrity for 28 yds to the Ohio 47 for a 1ST down
12:10
1st & 10 at opp 47
Cole Snyder pass incomplete
12:10
2nd & 10 at opp 47
Cole Snyder pass incomplete
12:10
3rd & 10 at opp 47
Cole Snyder pass complete to Mike Washington for no gain to the Ohio 47
10:46
4th & 10 at opp 47
Cole Snyder pass incomplete
10:46
1st & 10 at own 47
Timeout OHIO, clock 10:46
Ohio Punt, 4 plays
10:46
1st & 10 at own 47
Cam Dorsey run for 2 yds to the Ohio 49
10:46
2nd & 8 at own 49
Kurtis Rourke run for 4 yds to the Buff 47
10:46
3rd & 4 at opp 47
Kurtis Rourke pass incomplete
10:46
4th & 4 at opp 47
OHIO Penalty, Offensive Holding (-10 Yards) to the Ohio 43
8:46
4th & 14 at own 43
Jack Wilson punt for 52 yds, downed at the Buff 5
8:46
1st & 10 at own 5
Timeout OHIO, clock 08:46
Buffalo Fumble, 18 plays
8:46
1st & 10 at own 5
Cole Snyder pass complete to Justin Marshall for 6 yds to the Buff 11
8:46
2nd & 4 at own 11
Cole Snyder pass complete to Robbie Mangas for 6 yds to the Buff 17 for a 1ST down
8:46
1st & 10 at own 17
Cole Snyder run for 6 yds to the Buff 23
8:46
2nd & 4 at own 23
Cole Snyder pass incomplete
8:46
3rd & 4 at own 23
Cole Snyder pass complete to Justin Marshall for 9 yds to the Buff 32 for a 1ST down
8:46
1st & 10 at own 32
Cole Snyder pass incomplete
8:46
2nd & 10 at own 32
Cole Snyder sacked by Adonis Williams Jr. for a loss of 3 yards to the Buff 29
8:46
3rd & 13 at own 29
Cole Snyder pass incomplete
8:46
4th & 13 at own 29
Cole Snyder pass complete to Quian Williams for 16 yds to the Buff 45 for a 1ST down
8:46
1st & 10 at own 45
Cole Snyder pass incomplete
8:46
2nd & 10 at own 45
Cole Snyder pass incomplete
8:46
3rd & 10 at own 45
Cole Snyder pass complete to Justin Marshall for 12 yds to the Ohio 43 for a 1ST down
8:46
1st & 10 at opp 43
Cole Snyder pass incomplete
8:46
2nd & 10 at opp 43
Cole Snyder pass complete to Robbie Mangas for 8 yds to the Ohio 35
8:46
3rd & 2 at opp 35
Cole Snyder pass complete to Robbie Mangas for 8 yds to the Ohio 27 for a 1ST down
8:46
1st & 10 at opp 27
Cole Snyder pass incomplete
8:46
2nd & 10 at opp 27
Cole Snyder sacked by Bryce Houston for a loss of 9 yards to the Ohio 36
4:19
3rd & 19 at opp 36
Cole Snyder pass complete to Robbie Mangas for 19 yds Robbie Mangas fumbled, recovered by Ohio Keye Thompson , return to the 50 yard line
Ohio End of game, 7 plays
4:19
1st & 10 at the 50
Kurtis Rourke pass complete to Miles Cross for a loss of 1 yard to the Ohio 49
3:29
3rd & 10 at the 50
Timeout BUFFALO, clock 03:29
3:29
2nd & 11 at own 49
Cam Dorsey run for 1 yd to the 50 yard line
3:29
3rd & 10 at the 50
Cam Dorsey run for 15 yds to the Buff 35 for a 1ST down
3:29
1st & 10 at opp 35
Cam Dorsey run for 3 yds to the Buff 32
3:29
2nd & 7 at opp 32
Kurtis Rourke run for 9 yds to the Buff 23 for a 1ST down
3:29
1st & 10 at opp 23
[NHSG] Kneel down by ROURKE, Kurtis at BUF26 (team loss of 3).
0:00
2nd & 13 at opp 26
[NHSG] Kneel down by ROURKE, Kurtis at BUF28 (team loss of 2), clock 00:00.
Play-by-play from CollegeFootballData.com, as its scorers wrote it. The clock is the time left in the quarter; the spot is from the side of the team with the ball.