From CollegeFootballData’s box score. Names lead to each player’s page. ★ a career high on file.
Team stats
Missouri
Ohio State
331
Total yards
203
128
Passing yards
106
203
Rushing yards
97
7.1
Yards per pass
4.4
3.8
Yards per rush
2.9
18
First downs
12
4–16
Third downs
2–15
3–3
Fourth downs
1–1
0
Turnovers
1
7–40
Penalties
8–57
33:53
Possession
26:07
4
Sacks (by defense)
6
Efficiency
Missouri
Ohio State
39%
Success rate
28%
0.11
EPA per play
−0.07
1.20
Explosiveness
1.15
0.24
Rushing EPA
0.00
−0.15
Passing EPA
−0.14
22%
Passing-down success
8%
−0.06
First-down EPA
0.07
0.30
Second-down EPA
−0.29
−0.14
Third-down EPA
−0.17
25%
Havoc by its defense
13%
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 State 69% to win. Missouri pulled the upset.
The line
Ohio State −6.5, over/under 51.5.
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 Ohio State 61%, Missouri 39%. CollegeFootballData.com’s estimate from the point spread.
The money
The Cotton Bowl was put on by the Cotton Bowl Athletic Association, a nonprofit. Its IRS Form 990 for the year to April 2024, which takes in this game, reports $18.2 million in revenue, $12.3 million of it from game related income, and $14.3 million in expenses. Its best-paid, president / CEO Rick Baker, was paid $1.1 million. The largest payments it lists that year:
College Football Playoff Administration LLC
college football
$2.8 million
Cotton Bowl Foundation
advance cb fndt’s mission
$705,000
From the organization’s IRS Form 990, via ProPublica Nonprofit Explorer and the IRS’s e-file data. Payments are the grants it lists on Schedule I of that return. See every filing at ProPublica (EIN 75-0863843).
Every drive
Solid bars scored; an outline in the other team’s color marks points the defense scored. Ohio State drives left to right, Missouri right to left.
Q1 Ohio StatePunt, 3 plays, −7 yards
Q1 MissouriPunt, 5 plays, 23 yards
Q1 Ohio StatePunt, 7 plays, 19 yards
Q1 MissouriPunt, 3 plays, 0 yards
Q1 Ohio StateField goal, 5 plays, 27 yards
Q1 MissouriPunt, 6 plays, 22 yards
Q1 Ohio StatePunt, 3 plays, −1 yard
Q2 MissouriPunt, 7 plays, 7 yards
Q2 Ohio StatePunt, 3 plays, 5 yards
Q2 MissouriPunt, 4 plays, 20 yards
Q2 Ohio StatePunt, 3 plays, 6 yards
Q2 MissouriPunt, 3 plays, 4 yards
Q2 Ohio StatePunt, 7 plays, 27 yards
Q2 MissouriEnd of half, 4 plays, 26 yards
Q3 MissouriPunt, 3 plays, −5 yards
Q3 Ohio StateMissed FG, 5 plays, 26 yards
Q3 MissouriPunt, 6 plays, 8 yards
Q3 Ohio StatePunt, 8 plays, 37 yards
Q3 MissouriTouchdown, 8 plays, 95 yards
Q4 Ohio StatePunt, 7 plays, 35 yards
Q4 MissouriTouchdown, 13 plays, 91 yards
Q4 Ohio StateFumble, 8 plays, 36 yards
Q4 MissouriEnd of game, 9 plays, 40 yards
Play by play
1st quarter7 drives, then Ohio State 3, Missouri 0
Ohio State Punt, 3 plays
15:00
1st & 10 at own 35
Harrison Mevis kickoff for 65 yds for a touchback
14:55
1st & 10 at own 25
TreVeyon Henderson run for a loss of 2 yards to the OSU 23
14:17
2nd & 12 at own 23
Devin Brown pass incomplete to Emeka Egbuka
14:09
3rd & 12 at own 23
Devin Brown pass incomplete to Emeka Egbuka
14:09
4th & 12 at own 23
Ohio State Penalty, Delay of Game (-5 Yards) to the OSU 18
13:56
4th & 17 at own 18
Jesse Mirco punt for 53 yds, downed at the MIZ 29
Missouri Punt, 5 plays
13:50
1st & 10 at own 29
Cody Schrader run for 4 yds to the MIZ 33
13:23
2nd & 6 at own 33
Brady Cook run for 17 yds to the 50 yard line for a 1ST down
13:11
1st & 10 at the 50
Brady Cook pass complete to Mookie Cooper for 1 yd to the OSU 49
12:44
2nd & 9 at opp 49
Cody Schrader run for 1 yd to the OSU 48
12:19
3rd & 8 at opp 48
Brady Cook pass incomplete to Luther Burden III
12:11
4th & 8 at opp 48
Riley Williams punt for 38 yds, punt out-of-bounds at the OSU 10
Ohio State Punt, 7 plays
12:07
1st & 10 at own 10
TreVeyon Henderson run for 3 yds to the OSU 13
11:38
2nd & 7 at own 13
Devin Brown pass complete to Emeka Egbuka for 7 yds to the OSU 20 for a 1ST down
11:02
1st & 10 at own 20
Devin Brown pass complete to Emeka Egbuka for 8 yds to the OSU 28
10:30
2nd & 2 at own 28
TreVeyon Henderson run for 12 yds to the OSU 40 for a 1ST down
9:45
1st & 10 at own 40
TreVeyon Henderson run for a loss of 1 yard to the OSU 39
9:07
2nd & 11 at own 39
Ohio State Penalty, False Start (Josh Simmons) to the OSU 34
8:34
2nd & 16 at own 34
Devin Brown pass complete to Emeka Egbuka for 1 yd to the OSU 35
8:08
3rd & 15 at own 35
Ohio State Penalty, False Start (Josh Fryar) to the OSU 30
7:47
3rd & 20 at own 30
Devin Brown sacked by Darius Robinson for a loss of 1 yard to the OSU 29
7:09
4th & 21 at own 29
Jesse Mirco punt for 61 yds, downed at the MIZ 10
Missouri Punt, 3 plays
7:04
1st & 10 at own 10
Cody Schrader run for 6 yds to the MIZ 16
6:33
2nd & 4 at own 16
Brady Cook run for 1 yd to the MIZ 17
5:55
3rd & 3 at own 17
Brady Cook sacked by JT Tuimoloau for a loss of 7 yards to the MIZ 10 Missouri Penalty, Intentional Grounding (Yards) to the MIZ 10
5:47
4th & 10 at own 10
Riley Williams punt for 43 yds, fair catch by Jayden Ballard at the OSU 47
Ohio State Field goal, 5 plays
5:37
1st & 10 at own 47
TreVeyon Henderson run for 20 yds to the MIZ 33 for a 1ST down
5:10
1st & 10 at opp 33
TreVeyon Henderson run for 7 yds to the MIZ 26
4:42
2nd & 3 at opp 26
Devin Brown sacked by Jaylon Carlies for a loss of 4 yards to the MIZ 30
3:50
3rd & 7 at opp 30
Devin Brown pass complete to Carnell Tate for 4 yds to the MIZ 26
3:17
4th & 3 at opp 26
Timeout Ohio State, clock 03:17
3:12
4th & 3 at opp 26
Jayden Fielding 44 yd FG GOODOhio State 3, Missouri 0
Missouri Punt, 6 plays
3:08
4th & 3 at own 35
Jayden Fielding kickoff for 63 yds for a touchback
3:02
1st & 10 at own 25
Missouri Penalty, Ineligible Downfield on Pass (-5 Yards) to the MIZ 20
2:55
1st & 15 at own 20
Brady Cook pass complete to Theo Wease Jr. for 6 yds to the MIZ 26
2:04
2nd & 9 at own 26
Cody Schrader run for 6 yds to the MIZ 32
1:46
3rd & 3 at own 32
Brady Cook run for 10 yds to the MIZ 42 for a 1ST down
1:03
1st & 10 at own 42
Cody Schrader run for 5 yds to the MIZ 47
0:25
2nd & 5 at own 47
Brady Cook pass incomplete
0:21
3rd & 5 at own 47
Brady Cook pass incomplete to Theo Wease Jr.
0:12
4th & 5 at own 47
Riley Williams punt for 44 yds, fair catch by Jayden Ballard at the OSU 9
Ohio State Punt, 3 plays
0:04
1st & 10 at own 9
TreVeyon Henderson run for no gain to the OSU 9
Q2 14:55
2nd & 10 at own 9
TreVeyon Henderson run for 6 yds to the OSU 15
Q2 14:21
3rd & 4 at own 15
Devin Brown sacked by Johnny Walker Jr. for a loss of 7 yards to the OSU 8 Devin Brown fumbled, forced by Johnny Walker Jr., recovered by OSU Devin Brown , return for 0 yards
Q2 13:13
4th & 11 at own 8
Jesse Mirco punt for 44 yds, fair catch by Kris Abrams-Draine at the MIZ 48
2nd quarter7 drives, then Ohio State 3, Missouri 0
Missouri Punt, 7 plays
13:10
1st & 10 at own 48
Cody Schrader run for 5 yds to the OSU 47
12:48
2nd & 5 at opp 47
Cody Schrader run for 3 yds to the OSU 44
12:10
3rd & 2 at opp 44
Brady Cook run for 1 yd to the OSU 43
11:35
4th & 1 at opp 43
Brady Cook run for 5 yds to the OSU 38 for a 1ST down
10:58
1st & 10 at opp 38
Brady Cook sacked by Jack Sawyer for a loss of 3 yards to the OSU 41
10:10
2nd & 13 at opp 41
Brady Cook pass complete to Theo Wease Jr. for a loss of 1 yard to the OSU 42
9:24
3rd & 14 at opp 42
Brady Cook sacked by Ty Hamilton for a loss of 3 yards to the OSU 45
8:41
4th & 17 at opp 45
Riley Williams punt for 40 yds, fair catch by Jayden Ballard at the OSU 5
Ohio State Punt, 3 plays
8:35
1st & 10 at own 5
TreVeyon Henderson run for 1 yd to the OSU 6
8:00
2nd & 9 at own 6
TreVeyon Henderson run for a loss of 2 yards to the OSU 4
7:22
3rd & 11 at own 4
TreVeyon Henderson run for 6 yds to the OSU 10
6:37
4th & 5 at own 10
Jesse Mirco punt for 59 yds , Kris Abrams-Draine returns for 1 yd to the MIZ 32
Missouri Punt, 4 plays
6:29
1st & 10 at own 32
Brady Cook run for 12 yds to the MIZ 44 for a 1ST down
5:55
1st & 10 at own 44
Brady Cook run for 1 yd to the MIZ 45
5:14
2nd & 9 at own 45
Cody Schrader run for 7 yds to the OSU 48
4:39
3rd & 2 at opp 48
Brady Cook pass incomplete to Cody Schrader
4:39
4th & 2 at opp 48
Timeout Missouri, clock 04:39
4:30
4th & 2 at opp 48
Riley Williams punt for 37 yds, downed at the OSU 11
Ohio State Punt, 3 plays
4:23
1st & 10 at own 11
Xavier Johnson run for 4 yds to the OSU 15
3:46
2nd & 6 at own 15
Lincoln Kienholz pass incomplete to Cade Stover
3:41
3rd & 6 at own 15
Lincoln Kienholz run for 2 yds to the OSU 17
3:10
4th & 4 at own 17
Jesse Mirco punt for 50 yds, fair catch by Kris Abrams-Draine at the MIZ 33
Missouri Punt, 3 plays
2:55
1st & 10 at own 33
Cody Schrader run for 2 yds to the MIZ 35
2:30
2nd & 8 at own 35
Cody Schrader run for 2 yds to the MIZ 37
1:47
3rd & 6 at own 37
Brady Cook pass incomplete to Mookie Cooper
1:38
4th & 6 at own 37
Riley Williams punt for 49 yds, fair catch by Jayden Ballard at the OSU 14 Ohio State Penalty, Illegal Block (Calvin Simpson-Hunt) to the OSU 7
Ohio State Punt, 7 plays
1:33
2nd & 13 at own 4
Timeout Missouri, clock 01:33
1:32
1st & 10 at own 7
TreVeyon Henderson run for a loss of 3 yards to the OSU 4
1:30
2nd & 13 at own 4
TreVeyon Henderson run for a loss of 3 yards to the OSU 1
1:30
3rd & 16 at own 1
Timeout Missouri, clock 01:30
1:27
3rd & 16 at own 1
Lincoln Kienholz run for 1 yd to the OSU 2 for a 1ST down Missouri Penalty, Unsportsmanlike Conduct (Johnny Walker Jr.) to the OSU 17 for a 1ST down
1:00
1st & 10 at own 17
Xavier Johnson run for 17 yds to the OSU 34 for a 1ST down
0:53
1st & 10 at own 34
Lincoln Kienholz pass incomplete to Carnell Tate
0:48
2nd & 10 at own 34
Lincoln Kienholz pass incomplete to TreVeyon Henderson
0:47
3rd & 10 at own 34
Timeout Ohio State, clock 00:47
0:41
3rd & 10 at own 34
Lincoln Kienholz pass incomplete to Jayden Ballard
0:28
4th & 10 at own 34
Jesse Mirco punt for 45 yds, downed at the MIZ 21
Missouri End of half, 4 plays
0:20
1st & 10 at own 21
Brady Cook run for 9 yds to the MIZ 30
0:08
2nd & 1 at own 30
Brady Cook pass complete to Mookie Cooper for 17 yds to the MIZ 47 for a 1ST down
0:08
1st & 10 at own 47
Timeout Ohio State, clock 00:08
0:03
1st & 10 at own 47
Brady Cook pass complete to Luther Burden III for 5 yds to the OSU 48
0:03
2nd & 5 at opp 48
Missouri Penalty, Delay of Game (-5 Yards) to the MIZ 47
0:01
2nd & 10 at own 47
Brady Cook pass incomplete to Theo Wease Jr.
3rd quarter5 drives, then Ohio State 3, Missouri 0
Missouri Punt, 3 plays
15:00
1st & 10 at own 35
Jayden Fielding kickoff for 65 yds for a touchback
14:55
1st & 10 at own 25
Brady Cook sacked by Jack Sawyer for a loss of 9 yards to the MIZ 16
14:19
2nd & 19 at own 16
Cody Schrader run for 4 yds to the MIZ 20
13:39
3rd & 15 at own 20
Brady Cook pass incomplete to Theo Wease Jr.
13:31
4th & 15 at own 20
Riley Williams punt for 38 yds , Jayden Ballard returns for 2 yds to the OSU 44
Ohio State Missed FG, 5 plays
13:25
1st & 10 at own 44
Lincoln Kienholz pass complete to Xavier Johnson for 24 yds to the MIZ 32 for a 1ST down
12:50
1st & 10 at opp 32
Emeka Egbuka pass incomplete to Carnell Tate
12:45
2nd & 10 at opp 32
Lincoln Kienholz run for 2 yds to the MIZ 30
12:29
3rd & 8 at opp 30
Lincoln Kienholz pass incomplete to Brandon Inniss
12:24
4th & 8 at opp 30
Jayden Fielding 48 yd FG MISSED
Missouri Punt, 6 plays
12:20
1st & 10 at own 30
Cody Schrader run for 2 yds to the MIZ 32
11:49
2nd & 8 at own 32
Brady Cook pass complete to Brett Norfleet for 2 yds to the MIZ 34
11:12
3rd & 6 at own 34
Brady Cook run for 17 yds to the OSU 49 for a 1ST down
10:32
1st & 10 at opp 49
TEAM run for a loss of 8 yards to the MIZ 43 TEAM fumbled, recovered by MIZ Brady Cook
9:45
2nd & 18 at own 43
Brady Cook pass complete to Luther Burden III for 3 yds to the MIZ 46
9:10
3rd & 15 at own 46
Brady Cook sacked by Jack Sawyer for a loss of 8 yards to the MIZ 38
8:39
4th & 23 at own 38
Riley Williams punt for 37 yds, fair catch by Jayden Ballard at the OSU 25 Ohio State Penalty, Offensive Holding (Nolan Baudo) to the OSU 15
Ohio State Punt, 8 plays
8:35
1st & 10 at own 15
TreVeyon Henderson run for no gain to the OSU 15
7:56
2nd & 10 at own 15
Xavier Johnson run for 3 yds to the OSU 18
7:20
3rd & 7 at own 18
Xavier Johnson run for 11 yds to the OSU 29 for a 1ST down
6:40
1st & 10 at own 29
TreVeyon Henderson run for 8 yds to the OSU 37
5:58
2nd & 2 at own 37
TreVeyon Henderson run for 15 yds to the MIZ 48 for a 1ST down
5:15
1st & 10 at opp 48
Lincoln Kienholz pass incomplete to Gee Scott Jr.
5:10
2nd & 10 at opp 48
Xavier Johnson run for no gain to the MIZ 48
4:34
3rd & 10 at opp 48
Lincoln Kienholz pass incomplete to Carnell Tate
4:25
4th & 10 at opp 48
Jesse Mirco punt for 43 yds, fair catch by Kris Abrams-Draine at the MIZ 5
Missouri Touchdown, 8 plays
4:19
1st & 10 at own 5
Cody Schrader run for 4 yds to the MIZ 9
3:57
2nd & 6 at own 9
Cody Schrader run for a loss of 1 yard to the MIZ 8
3:22
3rd & 7 at own 8
Brady Cook pass complete to Theo Wease Jr. for 7 yds to the MIZ 15 for a 1ST down
3:01
1st & 10 at own 15
Cody Schrader run for 10 yds to the MIZ 25 for a 1ST down
2:28
1st & 10 at own 25
Missouri Penalty, False Start (Armand Membou) to the MIZ 20
1:55
1st & 15 at own 20
Brady Cook run for 15 yds to the MIZ 35 for a 1ST down
1:23
1st & 10 at own 35
Brady Cook pass complete to Marquis Johnson for 50 yds to the OSU 15 for a 1ST down
0:55
1st & 10 at opp 15
Ohio State Penalty, Substitution Infraction (5 Yards) to the OSU 10
0:34
1st & 5 at opp 10
Missouri Penalty, False Start (Xavier Delgado) to the OSU 15
0:10
1st & 10 at opp 15
Brady Cook run for 8 yds to the OSU 7
Q4 14:55
2nd & 2 at opp 7
Cody Schrader run for 7 yds for a TD (Harrison Mevis KICK)Missouri 7, Ohio State 3
4th quarter4 drives, then Missouri 14, Ohio State 3
Ohio State Punt, 7 plays
14:55
2nd & 2 at own 35
Harrison Mevis kickoff for 65 yds for a touchback
14:48
1st & 10 at own 25
Lincoln Kienholz pass complete to Emeka Egbuka for 25 yds to the 50 yard line for a 1ST down
14:11
1st & 10 at the 50
Lincoln Kienholz pass complete to Gee Scott Jr. for 8 yds to the MIZ 42
13:56
2nd & 2 at opp 42
TreVeyon Henderson run for 1 yd to the MIZ 41
13:30
3rd & 1 at opp 41
Lincoln Kienholz run for 2 yds to the MIZ 39 for a 1ST down
12:51
1st & 10 at opp 39
Lincoln Kienholz run for 2 yds to the MIZ 37
12:08
2nd & 8 at opp 37
TreVeyon Henderson run for a loss of 3 yards to the MIZ 40
11:30
3rd & 11 at opp 40
Lincoln Kienholz pass incomplete to Xavier Johnson
11:22
4th & 11 at opp 40
Jesse Mirco punt for 31 yds, fair catch by Kris Abrams-Draine at the MIZ 9
Missouri Touchdown, 13 plays
11:17
1st & 10 at own 9
Cody Schrader run for 3 yds to the MIZ 12
10:44
2nd & 7 at own 12
Cody Schrader run for 6 yds to the MIZ 18
10:23
3rd & 1 at own 18
Cody Schrader run for 2 yds to the MIZ 20 for a 1ST down
9:56
1st & 10 at own 20
Brady Cook sacked by Jordan Hancock for a loss of 6 yards to the MIZ 14
9:27
2nd & 16 at own 14
Brady Cook pass complete to Theo Wease Jr. for 31 yds to the MIZ 45 for a 1ST down Ohio State Penalty, Defensive Offside (Yards) declined for a 1ST down
8:50
1st & 10 at own 45
Cody Schrader run for 8 yds to the OSU 47 for a 1ST down Ohio State Penalty, Unnecessary Roughness (Josh Proctor) to the OSU 32 for a 1ST down
8:31
1st & 10 at opp 32
Cody Schrader run for 1 yd to the OSU 31
7:53
2nd & 9 at opp 31
Cody Schrader run for 8 yds to the OSU 23
7:16
3rd & 1 at opp 23
Cody Schrader run for no gain to the OSU 23
6:38
4th & 1 at opp 23
Timeout Missouri, clock 06:38
6:32
4th & 1 at opp 23
Brady Cook run for 2 yds to the OSU 21 for a 1ST down
5:59
1st & 10 at opp 21
Cody Schrader run for 11 yds to the OSU 10 for a 1ST down
5:40
1st & goal at opp 10
Cody Schrader run for 3 yds to the OSU 7
5:12
2nd & goal at opp 7
Brady Cook pass complete to Luther Burden III for 7 yds for a TD (Harrison Mevis KICK)Missouri 14, Ohio State 3
Ohio State Fumble, 8 plays
5:12
2nd & 7 at own 35
Harrison Mevis kickoff for 65 yds for a touchback
5:05
1st & 10 at own 25
Lincoln Kienholz pass complete to Emeka Egbuka for 18 yds to the OSU 43 for a 1ST down
4:41
1st & 10 at own 43
Lincoln Kienholz pass incomplete to Carnell Tate
4:41
2nd & 10 at own 43
Ohio State Penalty, False Start (Xavier Johnson) to the OSU 38
4:41
2nd & 15 at own 38
Timeout Missouri, clock 04:41
4:34
2nd & 15 at own 38
TreVeyon Henderson run for 7 yds to the OSU 45
4:15
3rd & 8 at own 45
Lincoln Kienholz pass complete to Xavier Johnson for 7 yds to the MIZ 48
4:02
4th & 1 at opp 48
Lincoln Kienholz pass complete to Emeka Egbuka for 4 yds to the MIZ 44 for a 1ST down
3:25
1st & 10 at opp 44
Lincoln Kienholz pass incomplete to Emeka Egbuka
3:25
2nd & 10 at opp 44
Missouri Penalty, Defensive Offside (Darius Robinson) to the MIZ 39
3:20
2nd & 5 at opp 39
Lincoln Kienholz pass incomplete to TreVeyon Henderson
3:13
3rd & 5 at opp 39
Lincoln Kienholz sacked by Daylan Carnell for a loss of 7 yards to the MIZ 46 Lincoln Kienholz fumbled, forced by Daylan Carnell, recovered by MIZ Joe Moore , return for 0 yards
Missouri End of game, 9 plays
3:09
1st & 10 at own 46
Cody Schrader run for 3 yds to the MIZ 49
3:09
2nd & 7 at own 49
Timeout Ohio State, clock 03:09
3:01
2nd & 7 at own 49
Cody Schrader run for 11 yds to the OSU 40 for a 1ST down
2:27
1st & 10 at opp 40
Cody Schrader run for no gain to the OSU 40
2:24
2nd & 10 at opp 40
Timeout Ohio State, clock 02:24
2:20
2nd & 10 at opp 40
Cody Schrader run for 5 yds to the OSU 35
2:17
3rd & 5 at opp 35
Timeout Ohio State, clock 02:17
2:11
3rd & 5 at opp 35
Brady Cook run for 4 yds to the OSU 31
1:34
4th & 1 at opp 31
Timeout Missouri, clock 01:34
1:27
4th & 1 at opp 31
Luther Burden III run for 20 yds to the OSU 11 for a 1ST down
1:22
1st & 10 at opp 11
TEAM run for a loss of 1 yard to the OSU 12
0:45
2nd & 11 at opp 12
TEAM run for a loss of 1 yard to the OSU 13
0:26
3rd & 12 at opp 13
TEAM run for a loss of 1 yard to the OSU 14
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.