Referee David Alvarez; umpire Stuart Schake; head linesman Rick Smith; line judge Kelly Deterding; side judge Lo Van Pham; field judge Jason Ledet; back judge Terry Jones; center judge Ken RayGame officials: stats.ncaa.org box scores, via SportsDataverse
Scoring by quarter
Team
Q1
Q2
Q3
Q4
Final
Air Force
0
7
7
9
23
Navy
0
3
0
0
3
Standouts
No. 20RushingBrad Roberts29 carries, 97 yards, 2 TDAir Force
No. 38DefenseDemonte Meeks9 tackles, 2 sacks, 2 for lossAir Force
From CollegeFootballData’s box score. Names lead to each player’s page. ★ a career high on file.
Team stats
Air Force
Navy
225
Total yards
68
49
Passing yards
32
176
Rushing yards
36
4.9
Yards per pass
3.2
3.0
Yards per rush
1.1
14
First downs
6
7–18
Third downs
1–12
1–1
Fourth downs
0–2
0
Turnovers
1
5–38
Penalties
2–27
36:48
Possession
23:12
5
Sacks (by defense)
1
Efficiency
Air Force
Navy
28%
Success rate
14%
−0.05
EPA per play
−0.27
1.43
Explosiveness
0.80
−0.09
Rushing EPA
−0.12
0.17
Passing EPA
−0.46
27%
Passing-down success
5%
−0.36
First-down EPA
−0.15
−0.19
Second-down EPA
−0.29
0.50
Third-down EPA
−0.01
30%
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)
Air Force 62% to win. Elo’s favorite won.
The line
Air Force −6, over/under 39.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 Air Force 66%, Navy 34%. 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. Navy drives left to right, Air Force right to left.
Q1 Air ForcePunt, 7 plays, 12 yards
Q1 NavyPunt, 3 plays, −1 yard
Q1 Air ForcePunt, 6 plays, 13 yards
Q1 NavyPunt, 3 plays, −1 yard
Q1 Air ForcePunt, 3 plays, −3 yards
Q1 NavyPunt, 3 plays, 8 yards
Q1 Air ForcePunt, 3 plays, −3 yards
Q2 NavyField goal, 7 plays, 32 yards
Q2 Air ForcePunt, 3 plays, 0 yards
Q2 Air ForceMissed FG, 4 plays, 5 yards
Q2 NavyPunt, 3 plays, 4 yards
Q2 Air ForceTouchdown, 9 plays, 43 yards
Q2 NavyPunt, 3 plays, 6 yards
Q2 Air ForceEnd of half, 1 play, −2 yards
Q3 NavyPunt, 3 plays, −3 yards
Q3 Air ForcePunt, 6 plays, 20 yards
Q3 NavyPunt, 3 plays, 0 yards
Q3 Air ForcePunt, 3 plays, −6 yards
Q3 NavyPunt, 3 plays, 0 yards
Q3 Air ForceTouchdown, 9 plays, 54 yards
Q3 NavySafety, 4 plays (Air Force scores), −25 yards
Q4 Air ForceTouchdown, 7 plays, 58 yards
Q4 NavyTurnover on downs, 10 plays, 54 yards
Q4 Air ForceEnd of game, 9 plays, 17 yards
Play by play
1st quarter7 drives, then Tied at 0
Air Force Punt, 7 plays
15:00
1st & 10 at own 35
Evan Warren kickoff for 65 yds for a touchback
15:00
1st & 10 at own 25
Brad Roberts run for 3 yds to the AFA 28
15:00
2nd & 7 at own 28
Haaziq Daniels run for 3 yds to the AFA 31
15:00
3rd & 4 at own 31
Haaziq Daniels run for 3 yds to the AFA 34
15:00
4th & 1 at own 34
Brad Roberts run for 3 yds to the AFA 37 for a 1ST down
15:00
1st & 10 at own 37
DeAndre Hughes run for 5 yds to the AFA 42
15:00
2nd & 5 at own 42
AIR FORCE Penalty, delay of game (Haaziq Daniels) to the AFA 37
15:00
2nd & 10 at own 37
Haaziq Daniels pass incomplete to Brad Roberts
15:00
3rd & 10 at own 37
Haaziq Daniels pass incomplete to Kyle Patterson, broken up by Mitchell West
15:00
4th & 10 at own 37
Charles Bein punt for 43 yds, punt out-of-bounds at the Navy 20
Navy Punt, 3 plays
11:13
1st & 10 at own 20
Chance Warren run for a loss of 2 yards to the Navy 18
11:13
2nd & 12 at own 18
Xavier Arline run for 7 yds to the Navy 25
11:13
3rd & 5 at own 25
Xavier Arline sacked by Demonte Meeks for a loss of 6 yards to the Navy 19 NAVY Penalty, Offensive holding ( Yards) declined
11:13
4th & 11 at own 19
Kellen Grave de Peralta punt for 34 yds, downed at the AFA 47
Air Force Punt, 6 plays
9:21
1st & 10 at own 47
Emmanuel Michel run for 3 yds to the 50 yard line
9:21
2nd & 7 at the 50
Haaziq Daniels pass incomplete to Kyle Patterson
9:21
3rd & 7 at the 50
Haaziq Daniels pass complete to Kyle Patterson for 10 yds to the Navy 40 for a 1ST down
9:21
1st & 10 at opp 40
Brad Roberts run for 2 yds to the Navy 38
9:21
2nd & 8 at opp 38
Haaziq Daniels run for 1 yd to the Navy 37
9:21
3rd & 7 at opp 37
Brad Roberts run for a loss of 3 yards to the Navy 40
9:21
4th & 10 at opp 40
Charles Bein punt for 29 yds, fair catch by Kevin Brennan at the Navy 11
Navy Punt, 3 plays
6:12
1st & 10 at own 11
James Harris II run for 1 yd to the Navy 12
6:12
2nd & 9 at own 12
James Harris II run for 1 yd to the Navy 13
6:12
3rd & 8 at own 13
Xavier Arline run for a loss of 3 yards to the Navy 10 Xavier Arline fumbled, recovered by Navy
6:12
4th & 11 at own 10
Kellen Grave de Peralta punt for 50 yds, punt out-of-bounds at the AFA 40
Air Force Punt, 3 plays
4:16
1st & 10 at own 40
Micah Davis run for no gain to the AFA 40
4:16
2nd & 10 at own 40
Micah Davis run for a loss of 7 yards to the AFA 33
4:16
3rd & 17 at own 33
Brad Roberts run for 4 yds to the AFA 37
4:16
4th & 13 at own 37
Charles Bein punt for 36 yds, downed at the Navy 27
Navy Punt, 3 plays
2:06
1st & 10 at own 27
Xavier Arline run for 4 yds to the Navy 31
2:06
2nd & 6 at own 31
Xavier Arline run for 2 yds to the Navy 33
2:06
3rd & 4 at own 33
Xavier Arline run for 2 yds to the Navy 35
2:06
4th & 2 at own 35
Kellen Grave de Peralta punt for 36 yds, punt out-of-bounds at the AFA 29 , Micah Davis returns for no gain to the AFA 29
Air Force Punt, 3 plays
0:05
1st & 10 at own 29
Haaziq Daniels run for a loss of 3 yards to the AFA 26
Q2 15:00
2nd & 13 at own 26
Haaziq Daniels pass incomplete to David Cormier
Q2 15:00
3rd & 13 at own 26
Haaziq Daniels run for no gain to the AFA 26
Q2 15:00
4th & 13 at own 26
Charles Bein punt for 12 yds, punt out-of-bounds at the AFA 38
2nd quarter7 drives, then Air Force 7, Navy 3
Navy Field goal, 7 plays
14:08
1st & 10 at opp 38
Xavier Arline run for 2 yds to the AFA 36
14:08
2nd & 8 at opp 36
Xavier Arline pass incomplete to Mychal Cooper
14:08
3rd & 8 at opp 36
Xavier Arline run for 26 yds to the AFA 10 for a 1ST down
14:08
1st & goal at opp 10
Xavier Arline run for a loss of 1 yard to the AFA 11
14:08
2nd & goal at opp 11
Xavier Arline run for 2 yds to the AFA 9
14:08
3rd & goal at opp 9
James Harris II run for 3 yds to the AFA 6
10:36
4th & goal at opp 6
Bijan Nichols 23 yd FG GOODNavy 3, Air Force 0
Air Force Punt, 3 plays
10:36
1st & 0 at own 35
Evan Warren kickoff for 60 yds , Micah Davis return for 17 yds to the AFA 22
10:30
1st & 10 at own 22
Timeout AIR FORCE, clock 10:30
10:30
1st & 10 at own 22
Brad Roberts run for 3 yds to the AFA 25
10:30
2nd & 7 at own 25
Haaziq Daniels run for a loss of 3 yards to the AFA 18 Haaziq Daniels fumbled, recovered by AFA Haaziq Daniels
10:30
3rd & 14 at own 18
Brad Roberts run for 4 yds to the AFA 22
10:30
4th & 10 at own 22
Charles Bein punt for 54 yds , TEAM returns for a loss of 1 yard to the Navy 23 TEAM fumbled, recovered by AFA Kyle Patterson
Air Force Missed FG, 4 plays
8:33
1st & 10 at opp 23
DeAndre Hughes run for 2 yds to the Navy 21
8:33
2nd & 8 at opp 21
Brad Roberts run for 2 yds to the Navy 19
8:33
3rd & 6 at opp 19
Dane Kinamon run for 1 yd to the Navy 18
6:33
4th & 5 at opp 18
Matthew Dapore 35 yd FG MISSED
Navy Punt, 3 plays
6:33
1st & 10 at own 20
James Harris II run for 1 yd to the Navy 21
6:33
2nd & 9 at own 21
Xavier Arline run for a loss of 1 yard to the Navy 20
6:33
3rd & 10 at own 20
James Harris II run for 4 yds to the Navy 24
6:33
4th & 6 at own 24
Kellen Grave de Peralta punt for 19 yds, punt out-of-bounds at the Navy 43
Air Force Touchdown, 9 plays
4:35
1st & 10 at opp 43
Brad Roberts run for 1 yd to the Navy 42
4:35
2nd & 9 at opp 42
Haaziq Daniels pass incomplete to David Cormier, broken up by Will Harbour
4:35
3rd & 9 at opp 42
Haaziq Daniels run for 15 yds to the Navy 27 for a 1ST down
4:35
1st & 10 at opp 27
Brad Roberts run for 3 yds to the Navy 24
4:35
2nd & 7 at opp 24
Brad Roberts run for 2 yds to the Navy 22
4:35
3rd & 5 at opp 22
Micah Davis run for 15 yds to the Navy 7 for a 1ST down
4:35
1st & goal at opp 7
Haaziq Daniels run for 1 yd to the Navy 6
4:35
2nd & goal at opp 6
DeAndre Hughes run for 3 yds to the Navy 3
1:09
3rd & goal at opp 3
Brad Roberts run for 3 yds for a TD (Matthew Dapore KICK)Air Force 7, Navy 3
Navy Punt, 3 plays
1:09
1st & 0 at own 35
Matthew Dapore kickoff for 60 yds
1:09
1st & 10 at own 25
Xavier Arline run for 3 yds to the Navy 28
1:09
2nd & 7 at own 28
Xavier Arline pass incomplete to Chance Warren
1:09
3rd & 7 at own 28
James Harris II run for 3 yds to the Navy 31
0:25
4th & 4 at own 31
Timeout AIR FORCE, clock 00:25
0:25
4th & 4 at own 31
Timeout NAVY, clock 00:25
0:25
4th & 4 at own 31
Riley Riethman punt for 49 yds, downed at the AFA 20
Air Force End of half, 1 play
0:12
1st & 10 at own 20
TEAM run for a loss of 2 yards to the AFA 18
3rd quarter7 drives, then Air Force 14, Navy 3
Navy Punt, 3 plays
15:00
2nd & 12 at own 35
Matthew Dapore kickoff for 65 yds for a touchback
15:00
1st & 10 at own 25
ACIE, Carlinos rush for 9 yards to the NAVY34 (Sanford,Vince), PENALTY NAVY personal foul (COOPER, Mychal) 12 yards to the NAVY13, NO PLAY.
15:00
1st & 22 at own 13
Xavier Arline run for no gain to the Navy 13
15:00
2nd & 22 at own 13
Chance Warren run for 9 yds to the Navy 22
15:00
3rd & 13 at own 22
Xavier Arline pass incomplete
15:00
4th & 13 at own 22
Riley Riethman punt for 40 yds, fair catch by Micah Davis at the AFA 38
Air Force Punt, 6 plays
12:59
1st & 10 at own 38
Brad Roberts run for no gain to the AFA 38
12:59
2nd & 10 at own 38
AIR FORCE Penalty, false start (DeAndre Hughes) to the AFA 33
12:59
2nd & 15 at own 33
Haaziq Daniels run for 7 yds to the AFA 40
12:59
3rd & 8 at own 40
Haaziq Daniels pass complete to Kyle Patterson for 12 yds to the Navy 48 for a 1ST down
12:59
1st & 10 at opp 48
Brad Roberts run for 2 yds to the Navy 46
12:59
2nd & 8 at opp 46
Brad Roberts run for 4 yds to the Navy 42
12:59
3rd & 4 at opp 42
Jorden Gidrey run for no gain to the Navy 42
12:59
4th & 4 at opp 42
Charles Bein punt for 32 yds, fair catch by Kevin Brennan at the Navy 10
Navy Punt, 3 plays
9:06
1st & 10 at own 10
James Harris II run for 1 yd to the Navy 11
9:06
2nd & 9 at own 11
Xavier Arline run for a loss of 1 yard to the Navy 10
9:06
3rd & 10 at own 10
Xavier Arline pass incomplete
9:06
4th & 10 at own 10
Riley Riethman punt for 40 yds, downed at the 50 yard line
Air Force Punt, 3 plays
7:32
1st & 10 at the 50
Brad Roberts run for 1 yd to the Navy 49
7:32
2nd & 9 at opp 49
Haaziq Daniels pass incomplete to DeAndre Hughes
7:32
3rd & 9 at opp 49
Haaziq Daniels run for 5 yds to the Navy 44
7:32
4th & 4 at opp 44
Charles Bein punt for 44 yds for a touchback
Navy Punt, 3 plays
6:07
1st & 10 at own 20
James Harris II run for 3 yds to the Navy 23
6:07
2nd & 7 at own 23
Xavier Arline pass incomplete to Chance Warren
6:07
3rd & 7 at own 23
Xavier Arline sacked by Demonte Meeks and Elijah Brockman for a loss of 3 yards to the Navy 20
6:07
4th & 10 at own 20
Riley Riethman punt for 34 yds, fair catch by Micah Davis at the AFA 46
Air Force Touchdown, 9 plays
4:41
1st & 10 at own 46
Haaziq Daniels pass incomplete to Micah Davis
4:41
2nd & 10 at own 46
Brad Roberts run for 10 yds to the Navy 44 for a 1ST down
4:41
1st & 10 at opp 44
Haaziq Daniels run for a loss of 2 yards to the Navy 46
4:41
2nd & 12 at opp 46
Jorden Gidrey run for 2 yds to the AFA 44 AIR FORCE Penalty, Offensive holding (Micah Davis) to the AFA 46
4:41
2nd & 20 at own 46
Brad Roberts run for 2 yds to the AFA 48
4:41
3rd & 18 at own 48
Haaziq Daniels sacked by Clay Cromwell and J’arius Warren for a loss of 4 yards to the AFA 44
4:41
4th & 22 at own 44
Bein,Charles punt 54 yards to the NAVY2, downed, PENALTY NAVY roughing the kicker (JONES, Daniel) 15 yards to the NAVY41, 1ST DOWN AF, NO PLAY.
4:41
1st & 10 at opp 41
Brad Roberts run for 9 yds to the Navy 32
4:41
2nd & 1 at opp 32
Brad Roberts run for 4 yds to the Navy 28 for a 1ST down
0:32
1st & 10 at opp 28
Haaziq Daniels run for 28 yds for a TD (Matthew Dapore KICK)Air Force 14, Navy 3
Navy Safety, 4 plays (Air Force scores)
0:32
1st & 0 at own 35
Matthew Dapore kickoff for 65 yds , Daniel Jones return for 25 yds to the Navy 25
0:32
1st & 10 at own 25
Xavier Arline run for a loss of 2 yards to the Navy 23
Q4 15:00
2nd & 12 at own 23
Chance Warren sacked by Ethan Erickson for a loss of 9 yards to the Navy 14
Q4 15:00
3rd & 21 at own 14
Isaac Ruoss run for 9 yds to the Navy 23
Q4 13:33
4th & 12 at own 23
TEAM run for a loss of 23 yards for a SAFETYAir Force 16, Navy 3
4th quarter3 drives, then Air Force 23, Navy 3
Air Force Touchdown, 7 plays
13:33
1st & 0 at own 20
Evan Warren kickoff for 68 yds , Micah Davis return for 30 yds to the AFA 42
13:33
1st & 10 at own 42
Brad Roberts run for no gain to the AFA 42
13:33
2nd & 10 at own 42
Haaziq Daniels pass complete to Micah Davis for 27 yds to the Navy 31 for a 1ST down
13:33
1st & 10 at opp 31
Brad Roberts run for 11 yds to the Navy 20 for a 1ST down
13:33
1st & 10 at opp 20
Brad Roberts run for 2 yds to the Navy 18
13:33
2nd & 8 at opp 18
Brad Roberts run for 11 yds to the Navy 7 for a 1ST down
13:33
1st & goal at opp 7
Brad Roberts run for 5 yds to the Navy 2
9:13
2nd & goal at opp 2
Brad Roberts run for 2 yds for a TD (Matthew Dapore KICK)Air Force 23, Navy 3
Navy Turnover on downs, 10 plays
9:13
1st & 0 at own 35
Matthew Dapore kickoff for 54 yds , Carlinos Acie return for 21 yds to the Navy 32
9:13
1st & 10 at own 32
Maasai Maynor pass complete to Mychal Cooper for 15 yds to the Navy 47 for a 1ST down
9:13
1st & 10 at own 47
Maasai Maynor run for 6 yds to the AFA 47
9:13
2nd & 4 at opp 47
Tyger Goslin run for 5 yds to the AFA 42 for a 1ST down
9:13
1st & 10 at opp 42
Maasai Maynor pass complete to Mark Walker for 6 yds to the AFA 36
9:13
2nd & 4 at opp 36
Maasai Maynor pass incomplete to Carlinos Acie
9:13
3rd & 4 at opp 36
MAYNOR, Maasai pass incomplete to WALKER, Mark, PENALTY AF pass interference (Kelly,Zion) 4 yards to the AF32, 1ST DOWN NAVY, NO PLAY.
9:13
1st & 10 at opp 32
MAYNOR, Maasai pass incomplete to GOSLIN, Tyger, PENALTY AF pass interference (Sanford,Vince) 14 yards to the AF18, 1ST DOWN NAVY, NO PLAY.
9:13
1st & 10 at opp 18
Maasai Maynor pass complete to Chance Warren for 11 yds to the AFA 7 for a 1ST down
9:13
1st & goal at opp 7
Maasai Maynor sacked by Zion Kelly and Christopher Herrera for a loss of 5 yards to the AFA 12
9:13
2nd & goal at opp 12
Maasai Maynor run for 1 yd to the AFA 11
9:13
3rd & goal at opp 11
Maasai Maynor pass incomplete to Mychal Cooper, broken up by Vince Sanford
5:23
4th & 0 at opp 11
Timeout NAVY, clock 05:23
5:23
4th & goal at opp 11
Maasai Maynor sacked by Elijah Brockman and Demonte Meeks for a loss of 3 yards to the AFA 14
Air Force End of game, 9 plays
5:17
1st & 10 at own 14
Brad Roberts run for 1 yd to the AFA 15
5:17
2nd & 9 at own 15
Haaziq Daniels run for 4 yds to the AFA 19
4:27
3rd & 5 at own 19
Timeout NAVY, clock 04:27
4:27
3rd & 5 at own 19
Micah Davis run for 5 yds to the AFA 24 for a 1ST down
4:27
1st & 10 at own 24
Brad Roberts run for 7 yds to the AFA 31
4:27
2nd & 3 at own 31
Brad Roberts run for a loss of 1 yard to the AFA 30
4:27
3rd & 4 at own 30
Omar Fattah run for 5 yds to the AFA 35 for a 1ST down
4:27
1st & 10 at own 35
TEAM run for a loss of 2 yards to the AFA 33
4:27
2nd & 12 at own 33
TEAM run for a loss of 1 yard to the AFA 32
4:27
3rd & 13 at own 32
TEAM run for a loss of 1 yard to the AFA 31
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.