Referee Mike Cannon; umpire Ken Zelmanski; head linesman Kole Knueppel; line judge John Quinn; side judge Joel Clay; field judge Grady Smith; back judge Robert Smith Jr; center judge Byran BanksGame officials: stats.ncaa.org box scores, via SportsDataverse
From CollegeFootballData’s box score. Names lead to each player’s page. ★ a career high on file.
Team stats
Air Force
Michigan
232
Total yards
359
64
Passing yards
169
168
Rushing yards
190
7.1
Yards per pass
7.3
3.4
Yards per rush
4.5
15
First downs
17
3–13
Third downs
5–14
1–1
Fourth downs
1–1
1
Turnovers
1
3–29
Penalties
7–72
30:25
Possession
29:35
2
Sacks (by defense)
3
Efficiency
Air Force
Michigan
33%
Success rate
43%
−0.02
EPA per play
0.02
1.17
Explosiveness
0.77
0.11
Rushing EPA
−0.18
−0.59
Passing EPA
0.33
16%
Passing-down success
40%
−0.11
First-down EPA
−0.32
−0.04
Second-down EPA
0.06
−0.05
Third-down EPA
0.52
16%
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)
Michigan 72% to win. Elo’s favorite won.
The line
Michigan −23, over/under 53.
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 Michigan 94%, Air Force 6%. 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. Michigan drives left to right, Air Force right to left.
Q1 MichiganField goal, 11 plays, 58 yards
Q1 Air ForcePunt, 4 plays, 15 yards
Q1 MichiganFumble, 4 plays, 11 yards
Q1 Air ForceField goal, 12 plays, 24 yards
Q1 MichiganField goal, 8 plays, 77 yards
Q2 Air ForceField goal, 6 plays, 42 yards
Q2 MichiganPunt, 5 plays, 8 yards
Q2 Air ForcePunt, 3 plays, 3 yards
Q2 MichiganField goal, 6 plays, 9 yards
Q2 Air ForceEnd of half, 1 play, −1 yard
Q3 Air ForcePunt return TD, 3 plays (Michigan scores), 1 yard
Q3 Air ForceTouchdown, 4 plays, 75 yards
Q3 MichiganPunt, 3 plays, 5 yards
Q3 Air ForcePunt, 3 plays, −13 yards
Q3 MichiganField goal, 11 plays, 32 yards
Q3 Air ForcePunt, 3 plays, −2 yards
Q3 MichiganField goal, 8 plays, 28 yards
Q4 Air ForceMissed FG, 16 plays, 73 yards
Q4 MichiganPunt, 4 plays, 15 yards
Q4 Air ForcePunt, 3 plays, −4 yards
Q4 MichiganTouchdown, 9 plays, 73 yards
Q4 Air ForceInterception, 3 plays, 27 yards
Q4 MichiganEnd of game, 1 play, −1 yard
Play by play
1st quarter5 drives, then Tied at 3
Michigan Field goal, 11 plays
15:00
1st & 10 at own 35
Luke Strebel kickoff for 65 yds for a touchback
14:55
1st & 10 at own 25
Wilton Speight pass incomplete to Kekoa Crawford
14:45
2nd & 10 at own 25
Wilton Speight pass complete to Ty Isaac for a loss of 2 yards to the Mich 23
14:10
3rd & 12 at own 23
Wilton Speight pass complete to Tarik Black for 15 yds to the Mich 38 for a 1ST down
13:32
1st & 10 at own 38
Ty Isaac run for 32 yds to the AFA 30 for a 1ST down
12:51
1st & 10 at opp 30
Chris Evans run for 4 yds to the AFA 26
12:30
2nd & 6 at opp 26
Chris Evans run for 5 yds to the AFA 21
11:51
3rd & 1 at opp 21
Khalid Hill run for 3 yds to the AFA 18 for a 1ST down
11:41
1st & 10 at opp 18
Wilton Speight pass incomplete to Grant Perry
11:32
2nd & 10 at opp 18
Karan Higdon run for 1 yd to the AFA 17
10:59
3rd & 9 at opp 17
Wilton Speight pass incomplete to Grant Perry
10:51
4th & 9 at opp 17
Quinn Nordin 35 yd FG GOODMichigan 3, Air Force 0
Air Force Punt, 4 plays
10:51
4th & 9 at own 35
James Foug kickoff for 63 yds , Timothy McVey return for 15 yds to the AFA 17
10:48
1st & 10 at own 17
Ronald Cleveland run for 5 yds to the AFA 22
10:21
2nd & 5 at own 22
MICHIGAN Penalty, Defensive Offside (Maurice Hurst) to the AFA 27 for a 1ST down
10:05
1st & 10 at own 27
Parker Wilson run for 3 yds to the AFA 30
9:27
2nd & 7 at own 30
Arion Worthman run for 3 yds to the AFA 33
8:39
3rd & 4 at own 33
Arion Worthman run for a loss of 1 yard to the AFA 32
8:04
4th & 5 at own 32
Charlie Scott punt for 44 yds, fair catch by Donovan Peoples-Jones at the Mich 24
Michigan Fumble, 4 plays
8:04
1st & 10 at own 24
Wilton Speight pass complete to Ty Isaac for 8 yds to the Mich 32
7:32
2nd & 2 at own 32
Ty Isaac run for 1 yd to the Mich 33
6:51
3rd & 1 at own 33
Ty Isaac run for 2 yds to the Mich 35 for a 1ST down
6:15
1st & 10 at own 35
Chris Evans run for 9 yds to the Mich 44 Chris Evans fumbled, forced by Garrett Kauppila, recovered by AFA Robert Bullard
Air Force Field goal, 12 plays
6:15
1st & 10 at opp 44
Arion Worthman run for 2 yds to the Mich 42
5:24
2nd & 8 at opp 42
Arion Worthman run for 5 yds to the Mich 37
4:47
3rd & 3 at opp 37
Parker Wilson run for 2 yds to the Mich 35
4:11
4th & 1 at opp 35
Arion Worthman run for 1 yd to the Mich 34 for a 1ST down
4:02
1st & 10 at opp 34
Timeout MICHIGAN, clock 04:02
4:02
1st & 10 at opp 34
Arion Worthman run for 7 yds to the Mich 27
3:37
2nd & 3 at opp 27
Arion Worthman run for 5 yds to the Mich 22 for a 1ST down
2:53
1st & goal at opp 7
Timothy McVey run for 15 yds to the Mich 7 AIR FORCE Penalty, Unsportsmanlike Conduct (Griffin Landrum) to the Mich 22
2:07
1st & 10 at opp 13
Timothy McVey run for 9 yds to the Mich 13 for a 1ST down MICHIGAN Penalty, Face Mask (7 yards) (Devin Bush) to the Mich 6 for a 1ST down
1:55
1st & goal at opp 6
Timothy McVey run for no gain to the Mich 6
1:17
2nd & goal at opp 6
Timothy McVey run for a loss of 1 yard to the Mich 7
0:20
3rd & goal at opp 7
Arion Worthman sacked by Devin Bush for a loss of 13 yards to the Mich 20
0:02
4th & 0 at opp 20
Luke Strebel 37 yd FG GOODTied at 3
Michigan Field goal, 8 plays
0:00
4th & 24 at own 35
Luke Strebel kickoff for 65 yds , Kekoa Crawford return for 15 yds to the Mich 15
Q2 15:00
1st & 10 at own 15
Ty Isaac run for 1 yd to the Mich 16
Q2 14:21
2nd & 9 at own 16
Wilton Speight pass complete to Donovan Peoples-Jones for 37 yds to the AFA 47 for a 1ST down
Q2 13:49
1st & 10 at opp 47
Wilton Speight pass complete to Tarik Black for 8 yds to the AFA 39
Q2 13:03
2nd & 2 at opp 39
Wilton Speight pass complete to Zach Gentry for 30 yds to the AFA 9 for a 1ST down
Q2 12:37
1st & goal at opp 9
Wilton Speight pass incomplete to Kekoa Crawford
Q2 12:26
2nd & goal at opp 9
Eddie McDoom run for 1 yd to the AFA 8
Q2 11:53
3rd & goal at opp 8
Wilton Speight pass incomplete to Kekoa Crawford
Q2 11:48
4th & goal at opp 8
Quinn Nordin 26 yd FG GOODMichigan 6, Air Force 3
2nd quarter5 drives, then Michigan 9, Air Force 6
Air Force Field goal, 6 plays
11:48
4th & 9 at own 35
James Foug kickoff for 65 yds for a touchback
11:48
1st & 10 at own 25
Arion Worthman run for 6 yds to the AFA 31
11:16
2nd & 4 at own 31
Arion Worthman run for 34 yds to the Mich 35 for a 1ST down
10:36
1st & 10 at opp 35
Parker Wilson run for 1 yd to the Mich 34
9:49
2nd & 9 at opp 34
Arion Worthman run for no gain to the Mich 34
9:15
3rd & 9 at opp 34
Timeout AIR FORCE, clock 09:15
9:15
3rd & 9 at opp 34
AIR FORCE Penalty, False Start (Malik Miller) to the Mich 39
9:04
3rd & 14 at opp 39
Arion Worthman run for 6 yds to the Mich 33
8:37
4th & 8 at opp 33
Luke Strebel 50 yd FG GOODTied at 6
Michigan Punt, 5 plays
8:37
4th & 8 at opp 31
Luke Strebel kickoff for 50 yds , Brad Hawkins return for 16 yds to the MICHIGAN 31 MICHIGAN Penalty, Unnecessary Roughness (Ben Mason) to the Mich 16
8:20
1st & 10 at own 16
Ty Isaac run for 1 yd to the Mich 17
7:41
2nd & 9 at own 17
Ty Isaac run for 15 yds to the Mich 32 for a 1ST down
7:19
1st & 10 at own 32
Karan Higdon run for 3 yds to the Mich 35
6:44
2nd & 7 at own 35
Karan Higdon run for 6 yds to the Mich 41
6:09
3rd & 1 at own 41
Ty Isaac run for a loss of 2 yards to the Mich 39
5:35
4th & 3 at own 39
Will Hart punt for 45 yds, fair catch by Ronald Cleveland at the AFA 16
Air Force Punt, 3 plays
5:35
1st & 10 at own 16
Arion Worthman run for a loss of 1 yard to the AFA 15
4:47
2nd & 11 at own 15
Arion Worthman run for 3 yds to the AFA 18
4:08
3rd & 8 at own 18
Timeout AIR FORCE, clock 04:08
4:08
3rd & 8 at own 18
Arion Worthman run for 1 yd to the AFA 19
3:22
4th & 7 at own 19
Charlie Scott punt for 21 yds, punt out-of-bounds at the AFA 40
Michigan Field goal, 6 plays
3:22
1st & 10 at opp 40
Wilton Speight pass complete to Eddie McDoom for 9 yds to the AFA 31
2:36
2nd & 1 at opp 31
Ty Isaac run for 7 yds to the AFA 24 for a 1ST down
2:03
1st & 10 at opp 24
Wilton Speight sacked by Matt Evans for a loss of 1 yard to the AFA 25
1:23
2nd & 11 at opp 25
Wilton Speight sacked by Jack Flor for a loss of 10 yards to the AFA 35 Wilton Speight fumbled, forced by Jack Flor, recovered by Mich Nick Eubanks , return for 0 yards
0:36
3rd & 21 at opp 35
Ty Isaac run for 4 yds to the AFA 31
0:09
4th & 17 at opp 31
Timeout MICHIGAN, clock 00:09
0:09
4th & 17 at opp 31
Timeout AIR FORCE, clock 00:09
0:04
4th & 17 at opp 31
Quinn Nordin 49 yd FG GOODMichigan 9, Air Force 6
Air Force End of half, 1 play
0:04
4th & 17 at own 35
James Foug kickoff for 65 yds for a touchback
0:00
1st & 10 at own 25
TEAM run for a loss of 1 yard to the AFA 24
3rd quarter7 drives, then Michigan 19, Air Force 13
Air Force Punt return TD, 3 plays (Michigan scores)
15:00
1st & 10 at own 35
James Foug kickoff for 65 yds for a touchback
15:00
1st & 10 at own 25
Parker Wilson run for 1 yd to the AFA 26
14:19
2nd & 9 at own 26
Arion Worthman pass incomplete to Ronald Cleveland
14:10
3rd & 9 at own 26
Arion Worthman pass incomplete to Timothy McVey
13:51
4th & 9 at own 26
Charlie Scott punt for 53 yds , Donovan Peoples-Jones returns for 79 yds for a TD, (Quinn Nordin KICK)Michigan 16, Air Force 6
Air Force Touchdown, 4 plays
13:51
1st & 10 at own 35
James Foug kickoff for 65 yds for a touchback
13:51
1st & 10 at own 25
Parker Wilson run for 6 yds to the AFA 31
13:09
2nd & 4 at own 31
Arion Worthman run for 1 yd to the AFA 32
12:37
3rd & 3 at own 32
Arion Worthman run for 4 yds to the AFA 36 for a 1ST down
11:54
1st & 10 at own 36
Arion Worthman pass complete to Ronald Cleveland for 64 yds for a TD, (Luke Strebel KICK)Michigan 16, Air Force 13
Michigan Punt, 3 plays
11:54
1st & 10 at own 35
Luke Strebel kickoff for 64 yds , Kekoa Crawford return for 19 yds to the Mich 20
11:54
1st & 10 at own 20
Ty Isaac run for no gain to the Mich 20
11:04
2nd & 10 at own 20
Eddie McDoom run for 5 yds to the Mich 25
10:37
3rd & 5 at own 25
Wilton Speight pass incomplete to Tarik Black
10:27
4th & 5 at own 25
Will Hart punt for 41 yds, fair catch by Ronald Cleveland at the AFA 34
Air Force Punt, 3 plays
10:27
1st & 10 at own 34
Arion Worthman sacked by Chase Winovich for a loss of 6 yards to the AFA 28
9:44
2nd & 16 at own 28
Arion Worthman run for a loss of 9 yards to the AFA 19 Arion Worthman fumbled, forced by Rashan Gary, recovered by AFA Ronald Cleveland
8:53
3rd & 25 at own 19
Arion Worthman run for 2 yds to the AFA 21
8:21
4th & 23 at own 21
Charlie Scott punt for 22 yds, downed at the AFA 43
Michigan Field goal, 11 plays
8:21
1st & 10 at opp 43
Ty Isaac run for 3 yds to the AFA 40
7:44
2nd & 7 at opp 40
Wilton Speight run for 8 yds to the AFA 32 for a 1ST down
7:17
1st & 10 at opp 32
Wilton Speight pass complete to Eddie McDoom for 5 yds to the AFA 27
6:40
2nd & 5 at opp 27
Karan Higdon run for 2 yds to the AFA 25
6:10
3rd & 3 at opp 25
Ty Isaac run for 2 yds to the AFA 23
5:39
4th & 1 at opp 23
Khalid Hill run for 2 yds to the AFA 21 for a 1ST down
5:16
1st & 10 at opp 21
Wilton Speight pass complete to Grant Perry for 13 yds to the AFA 8 for a 1ST down
4:51
1st & goal at opp 8
Karan Higdon run for 1 yd to the AFA 7
4:14
2nd & goal at opp 7
Wilton Speight pass complete to Grant Perry for a loss of 1 yard to the AFA 8
3:34
3rd & goal at opp 8
Ty Isaac run for a loss of 3 yards to the AFA 11
2:59
4th & goal at opp 11
Quinn Nordin 29 yd FG GOODMichigan 19, Air Force 13
Air Force Punt, 3 plays
2:59
4th & 13 at own 35
James Foug kickoff for 63 yds , Timothy McVey return for 17 yds to the AFA 19
2:59
1st & 10 at own 19
Worthman, Arion pass incomplete to Reffitt, Ryan, PENALTY AIRFORCE holding (Barnhorst, Jake) 9 yards to the AIRFORCE10, NO PLAY.
2:41
1st & 19 at own 10
Timothy McVey run for 1 yd to the AFA 11
2:09
2nd & 18 at own 11
Arion Worthman pass incomplete to Geraud Sanders
1:50
3rd & 18 at own 11
Arion Worthman run for 6 yds to the AFA 17
1:13
4th & 12 at own 17
Charlie Scott punt for 54 yds , Donovan Peoples-Jones returns for 25 yds to the AFA 46
Michigan Field goal, 8 plays
1:06
1st & 10 at opp 46
Ty Isaac run for 1 yd to the AFA 45
0:45
2nd & 9 at opp 19
Ty Isaac run for 26 yds to the AFA 19 for a 1ST down MICHIGAN Penalty, Offensive Holding (Kekoa Crawford) to the AFA 29 for a 1ST down
0:30
1st & 10 at opp 29
Wilton Speight pass complete to Tarik Black for 7 yds to the AFA 22
0:00
2nd & 3 at opp 22
Karan Higdon run for 4 yds to the AFA 18 for a 1ST down
Q4 15:00
1st & 10 at opp 18
Wilton Speight pass incomplete to Eddie McDoom
Q4 14:39
2nd & 10 at opp 18
Karan Higdon run for no gain to the AFA 18
Q4 14:24
3rd & 10 at opp 18
Timeout MICHIGAN, clock 14:24
Q4 14:19
3rd & 10 at opp 18
Wilton Speight pass incomplete to Tarik Black
Q4 14:15
4th & 10 at opp 18
Quinn Nordin 36 yd FG GOODMichigan 22, Air Force 13
4th quarter6 drives, then Michigan 29, Air Force 13
Air Force Missed FG, 16 plays
14:15
4th & 10 at own 35
James Foug kickoff for 63 yds , Timothy McVey return for 13 yds to the AFA 15
14:15
1st & 10 at own 15
Arion Worthman run for 5 yds to the AFA 20
13:33
2nd & 5 at own 24
Timothy McVey run for 4 yds to the AFA 24 for a 1ST down MICHIGAN Penalty, Defensive Holding (Chase Winovich) to the AFA 34 for a 1ST down
13:11
1st & 10 at own 34
Timothy McVey run for 3 yds to the AFA 37
12:37
2nd & 7 at own 37
Arion Worthman pass incomplete
12:21
3rd & 7 at own 37
Timothy McVey run for 7 yds to the AFA 44 for a 1ST down
12:14
1st & 10 at own 44
Timeout MICHIGAN, clock 12:14
12:14
1st & 10 at own 44
Arion Worthman run for a loss of 3 yards to the AFA 41
11:37
2nd & 13 at own 41
Timothy McVey run for 27 yds to the Mich 32 for a 1ST down
10:59
1st & 10 at opp 32
Ronald Cleveland run for 9 yds to the Mich 23
10:24
2nd & 1 at opp 23
Parker Wilson run for no gain to the Mich 23
10:01
3rd & 1 at opp 23
Parker Wilson run for 2 yds to the Mich 21 for a 1ST down
9:41
1st & 10 at opp 21
Parker Wilson run for 6 yds to the Mich 15
9:26
2nd & 4 at opp 15
Arion Worthman run for 6 yds to the Mich 9 for a 1ST down
9:26
2nd & 4 at opp 15
Timeout MICHIGAN, clock 09:26
8:36
1st & goal at opp 9
Arion Worthman run for 4 yds to the Mich 5
8:01
2nd & goal at opp 5
Timothy McVey run for a loss of 7 yards to the Mich 12
7:27
3rd & goal at opp 12
Arion Worthman pass incomplete
7:19
4th & goal at opp 12
Luke Strebel 29 yd FG MISSED
Michigan Punt, 4 plays
7:19
1st & 10 at own 20
Wilton Speight pass complete to Donovan Peoples-Jones for 15 yds to the Mich 35 for a 1ST down
7:18
1st & 10 at own 35
Ty Isaac run for a loss of 1 yard to the Mich 34
7:17
2nd & 11 at own 34
Wilton Speight pass complete to Tarik Black for 1 yd to the Mich 35
6:21
3rd & 10 at own 35
Timeout AIR FORCE, clock 06:21
6:21
3rd & 10 at own 35
Wilton Speight pass incomplete to Kekoa Crawford
6:10
4th & 10 at own 35
Will Hart punt for 25 yds, punt out-of-bounds at the AFA 40
Air Force Punt, 3 plays
6:10
1st & 10 at own 40
Arion Worthman sacked by Rashan Gary and Chase Winovich for a loss of 8 yards to the AFA 32
6:09
2nd & 18 at own 32
Timothy McVey run for 4 yds to the AFA 36
6:08
3rd & 14 at own 36
Arion Worthman pass incomplete
4:50
4th & 14 at own 36
Charlie Scott punt for 37 yds, fair catch by Donovan Peoples-Jones at the Mich 27
Michigan Touchdown, 9 plays
4:50
1st & 10 at own 27
Karan Higdon run for 3 yds to the Mich 30
4:49
2nd & 7 at own 30
Karan Higdon run for 3 yds to the Mich 33
4:48
3rd & 4 at own 33
Wilton Speight pass complete to Tarik Black for 24 yds to the AFA 43 for a 1ST down
4:47
1st & 10 at opp 43
Karan Higdon run for 3 yds to the AFA 40
2:38
2nd & 7 at opp 40
Timeout AIR FORCE, clock 02:38
2:30
2nd & 7 at opp 40
Chris Evans run for 10 yds to the AFA 30 for a 1ST down
2:01
1st & 10 at opp 26
Chris Evans run for 4 yds to the AFA 26 MICHIGAN Penalty, Offensive Holding (Michael Onwenu) to the AFA 36
1:57
1st & 16 at opp 36
Chris Evans run for a loss of 2 yards to the AFA 38
1:53
2nd & 18 at opp 38
Timeout AIR FORCE, clock 01:53
1:40
2nd & 18 at opp 38
Karan Higdon run for 2 yds to the AFA 36
1:02
3rd & 16 at opp 36
Karan Higdon run for 36 yds for a TD, (Quinn Nordin KICK)Michigan 29, Air Force 13
Air Force Interception, 3 plays
1:02
3rd & 16 at own 35
James Foug kickoff for 65 yds for a touchback
1:02
1st & 10 at own 25
Romine, Nate pass incomplete, PENALTY MICHIGAN personal foul (Jones, Reuben) 15 yards to the AIRFORCE40, NO PLAY, 1ST DOWN AIRFORCE.
0:50
1st & 10 at own 40
Nate Romine run for 12 yds to the Mich 48 for a 1ST down
0:27
1st & 10 at opp 48
Nate Romine pass incomplete
0:19
2nd & 10 at opp 48
Nate Romine pass intercepted Khaleke Hudson return for no gain to the Mich 16
Michigan End of game, 1 play
0:00
1st & 10 at own 16
TEAM run for a loss of 1 yard to the Mich 15
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.