Referee Jeff Flanagan; umpire Keith Vaverchak; head linesman Arthur Hardin; line judge Kirk Lewis; side judge Jeffrey Shears; field judge Wayne Rundell; back judge Keith Parham; center judge Larry HayesGame 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
Liberty
Army
417
Total yards
505
307
Passing yards
61
110
Rushing yards
444
8.3
Yards per pass
7.6
4.8
Yards per rush
6.1
21
First downs
27
5–12
Third downs
5–13
0–1
Fourth downs
2–2
3
Turnovers
0
6–27
Penalties
7–100
18:30
Possession
39:33
0
Sacks (by defense)
2
Efficiency
Liberty
Army
47%
Success rate
47%
−0.09
EPA per play
0.19
0.91
Explosiveness
1.09
−0.36
Rushing EPA
0.22
0.08
Passing EPA
−0.04
29%
Passing-down success
20%
0.01
First-down EPA
0.02
−0.46
Second-down EPA
0.36
0.49
Third-down EPA
0.28
6%
Havoc by its defense
25%
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)
Army 77% to win. Elo’s favorite won.
The line
Army −7.5, over/under 57.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 Army 70%, Liberty 30%. 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. Army drives left to right, Liberty right to left.
Q1 LibertyFumble, 4 plays, 32 yards
Q1 ArmyPunt, 9 plays, 5 yards
Q1 LibertyPunt, 7 plays, 35 yards
Q1 ArmyTouchdown, 8 plays, 81 yards
Q1 LibertyPunt, 3 plays, 7 yards
Q1 ArmyTouchdown, 2 plays, 31 yards
Q1 LibertyPunt, 5 plays, 31 yards
Q2 ArmyPunt, 7 plays, 12 yards
Q2 LibertyPunt, 7 plays, 35 yards
Q2 ArmyPunt, 4 plays, 21 yards
Q2 LibertyTurnover on downs, 6 plays, 21 yards
Q2 ArmyField goal, 12 plays, 19 yards
Q3 ArmyTouchdown, 3 plays, 75 yards
Q3 LibertyTouchdown, 2 plays, 78 yards
Q3 ArmyPunt, 8 plays, 25 yards
Q3 LibertyTouchdown, 13 plays, 85 yards
Q3 ArmyPunt, 5 plays, 27 yards
Q3 LibertyPunt, 5 plays, 36 yards
Q3 ArmyTouchdown, 10 plays, 80 yards
Q4 LibertyInterception, 1 play, 0 yards
Q4 ArmyTouchdown, 9 plays, 51 yards
Q4 LibertyPunt, 4 plays, −2 yards
Q4 ArmyPunt, 3 plays, 3 yards
Q4 LibertyFumble, 3 plays, 79 yards
Q4 ArmyResult not recorded, 2 plays, 7 yards
Play by play
1st quarter7 drives, then Army 14, Liberty 0
Liberty Fumble, 4 plays
15:00
1st & 10 at own 35
Landon Salyers kickoff for 65 yds for a touchback
15:00
1st & 10 at own 25
Kentory Matthews run for 6 yds to the Liber 31
15:00
2nd & 4 at own 31
Kentory Matthews run for 7 yds to the Liber 38 for a 1ST down
15:00
1st & 10 at own 38
Stephen Calvert pass complete to Fidel Ogbeifun for 13 yds to the Army 49 for a 1ST down
15:00
1st & 10 at opp 49
Stephen Calvert pass complete to Fidel Ogbeifun for 5 yds Fidel Ogbeifun fumbled, forced by Jaylon McClinton, recovered by Army Jaylon McClinton
Army Punt, 9 plays
15:00
1st & 10 at own 43
ARMY Penalty, illegal block (-15 Yards) to the Army 28
15:00
1st & 10 at own 28
Darnell Woolfolk run for 6 yds to the Army 34
15:00
2nd & 4 at own 34
Darnell Woolfolk run for 5 yds to the Army 39 for a 1ST down
15:00
1st & 10 at own 39
Darnell Woolfolk run for 10 yds to the Army 49 for a 1ST down
15:00
1st & 10 at own 49
Darnell Woolfolk run for 4 yds to the Liber 47
15:00
2nd & 6 at opp 47
Andy Davidson run for 6 yds to the Liber 41 for a 1ST down
15:00
1st & 10 at opp 41
Kelvin Hopkins Jr. run for 3 yds to the Army 38 ARMY Penalty, illegal block (-15 Yards) to the Army 47
15:00
1st & 22 at own 47
Kelvin Hopkins Jr. run for a loss of 1 yard to the Army 46
15:00
2nd & 23 at own 46
Kell Walker run for 2 yds to the Army 48
15:00
3rd & 21 at own 48
Kelvin Hopkins Jr. pass incomplete
15:00
4th & 21 at own 48
Zach Potter punt for 34 yds
Liberty Punt, 7 plays
9:43
1st & 10 at own 18
Peytton Pickett run for 10 yds to the Liber 28 for a 1ST down
9:43
1st & 10 at own 28
Peytton Pickett run for 7 yds to the Liber 35
9:43
2nd & 3 at own 35
Peytton Pickett run for 4 yds to the Liber 39 for a 1ST down
9:43
1st & 10 at own 39
Stephen Calvert pass complete to Damian King for 13 yds to the Army 48 for a 1ST down
9:43
1st & 10 at opp 48
Peytton Pickett run for 1 yd to the Army 47
9:43
2nd & 9 at opp 47
Stephen Calvert pass incomplete to Antonio Gandy-Golden, broken up by Elijah Riley
9:43
3rd & 9 at opp 47
Stephen Calvert pass incomplete to Antonio Gandy-Golden, broken up by Chandler Ramirez
9:43
4th & 9 at opp 47
Aidan Alves punt for 28 yds
Army Touchdown, 8 plays
7:20
1st & 10 at own 19
Fred Cooper run for 3 yds to the Army 22
7:20
2nd & 7 at own 22
Kelvin Hopkins Jr. run for 10 yds to the Army 32 for a 1ST down
7:20
1st & 10 at own 32
Darnell Woolfolk run for 11 yds to the Army 43 for a 1ST down
7:20
1st & 10 at own 43
Connor Slomka run for 3 yds to the Army 46
7:20
2nd & 7 at own 46
Kelvin Hopkins Jr. run for 6 yds to the Liber 48
7:20
3rd & 1 at opp 48
Darnell Woolfolk run for 5 yds to the Liber 43 for a 1ST down
7:20
1st & 10 at opp 43
Fred Cooper run for 18 yds to the Liber 25 for a 1ST down
3:11
1st & 10 at opp 25
Calen Holt run for 25 yds for a TD (Landon Salyers KICK)Army 7, Liberty 0
Liberty Punt, 3 plays
3:11
1st & 0 at own 35
Landon Salyers kickoff for 63 yds , Frankie Hickson return for 22 yds to the Liber 24
3:00
1st & 10 at own 24
Peytton Pickett run for 7 yds to the Liber 31
3:00
2nd & 3 at own 31
Stephen Calvert pass incomplete to Antonio Gandy-Golden, broken up by Elijah Riley
3:00
3rd & 3 at own 31
Stephen Calvert pass incomplete to Damian King
3:00
4th & 3 at own 31
Aidan Alves punt for 37 yds for a 1ST down , Mike Reynolds returns for 22 yds to the ARMY 47 for a 1ST down LIBERTY Penalty, targeting (15 Yards) to the Liber 31 for a 1ST down
Army Touchdown, 2 plays
2:10
1st & 10 at opp 31
Kell Walker run for 5 yds to the Liber 26
1:27
2nd & 5 at opp 26
Darnell Woolfolk run for 26 yds for a TD (Landon Salyers KICK)Army 14, Liberty 0
Liberty Punt, 5 plays
1:27
1st & 0 at own 35
Landon Salyers kickoff for 65 yds for a touchback
1:27
1st & 10 at own 25
Stephen Calvert pass complete to Damian King for 18 yds to the Liber 43 for a 1ST down
1:27
1st & 10 at own 43
Damian King run for 3 yds to the Army 46 for a 1ST down ARMY Penalty, personal foul (James Nachtigal) to the Army 39 for a 1ST down
1:27
1st & 10 at opp 39
Stephen Calvert pass incomplete
1:27
2nd & 10 at opp 39
Stephen Calvert sacked by James Gibson for a loss of 5 yards to the Army 44
1:27
3rd & 15 at opp 44
Stephen Calvert pass incomplete
Q2 15:00
4th & 15 at opp 44
Aaron Peart punt for 29 yds, fair catch by Mike Reynolds at the Army 15
2nd quarter5 drives, then Army 17, Liberty 0
Army Punt, 7 plays
14:54
1st & 10 at own 15
Fred Cooper run for 4 yds to the Army 19
14:54
2nd & 6 at own 19
Darnell Woolfolk run for 2 yds to the Army 21
14:54
3rd & 4 at own 21
Darnell Woolfolk run for 5 yds to the Army 26 for a 1ST down
14:54
1st & 10 at own 26
Fred Cooper run for no gain to the Army 26
14:54
2nd & 10 at own 26
Kelvin Hopkins Jr. run for 3 yds to the Army 29 ARMY Penalty, illegal block (-15 Yards) to the Army 14
14:54
2nd & 22 at own 14
Andy Davidson run for 7 yds to the Army 21
14:54
3rd & 15 at own 21
Kell Walker run for 6 yds to the Army 27 ARMY Penalty, Offensive holding ( Yards) declined
14:54
4th & 9 at own 27
Nick Schrage punt for 50 yds, downed at the Liber 23
Liberty Punt, 7 plays
10:53
1st & 10 at own 23
Kevin Shaa run for a loss of 12 yards to the Liber 11
10:53
2nd & 22 at own 11
Peytton Pickett run for 12 yds to the Liber 23
10:53
3rd & 10 at own 23
Stephen Calvert pass complete to Damian King for 14 yds to the Liber 37 for a 1ST down
10:53
1st & 10 at own 37
Kentory Matthews run for no gain to the Liber 37
10:53
2nd & 10 at own 37
CALVERT, S. pass incomplete to GANDY-GOLDEN,A., PENALTY ARMY pass interference (Riley, Elijah) 15 yards to the ARMY48, 1ST DOWN LIBERTY, NO PLAY.
10:53
1st & 10 at opp 48
Kentory Matthews run for 6 yds to the Army 42
10:53
2nd & 4 at opp 42
Stephen Calvert pass incomplete to Kevin Shaa
10:53
3rd & 4 at opp 42
Stephen Calvert pass incomplete to Antonio Gandy-Golden LIBERTY Penalty, ineligible downfield on pass ( Yards) declined
10:53
4th & 4 at opp 42
Aaron Peart punt for 15 yds, punt out-of-bounds at the Army 27
Army Punt, 4 plays
7:55
1st & 10 at own 27
Fred Cooper run for 14 yds to the Army 41 for a 1ST down
7:55
1st & 10 at own 41
Calen Holt run for 2 yds to the Army 43
7:55
2nd & 8 at own 43
Kell Walker run for 3 yds to the Army 46
7:55
3rd & 5 at own 46
Andy Davidson run for 2 yds to the Army 48
7:55
4th & 3 at own 48
Nick Schrage punt for 35 yds , B.J. Farrow returns for 5 yds to the Liber 22
Liberty Turnover on downs, 6 plays
5:29
1st & 10 at own 22
Stephen Calvert pass complete to Damian King for 7 yds to the Liber 29
5:29
2nd & 3 at own 29
Kentory Matthews run for 5 yds to the Liber 34 for a 1ST down
5:29
1st & 10 at own 34
Stephen Calvert pass incomplete to Antonio Gandy-Golden, broken up by Elijah Riley
5:29
2nd & 10 at own 34
Kentory Matthews run for 6 yds to the Liber 40
5:29
3rd & 4 at own 40
Stephen Calvert pass complete to Antonio Gandy-Golden for 3 yds to the Liber 43
5:29
4th & 1 at own 43
Peytton Pickett run for no gain to the Liber 43
Army Field goal, 12 plays
3:29
1st & 10 at opp 43
Kelvin Hopkins Jr. run for 3 yds to the Army 40 ARMY Penalty, illegal block (-15 Yards) to the Army 45
3:29
1st & 22 at own 45
Fred Cooper run for 15 yds to the Liber 40
3:29
2nd & 7 at opp 40
Fred Cooper run for 4 yds to the Liber 36
3:29
3rd & 3 at opp 36
Calen Holt run for 6 yds to the Liber 30 for a 1ST down
3:29
1st & 10 at opp 30
Andy Davidson run for 3 yds to the Liber 27
1:15
2nd & 7 at opp 27
Timeout ARMY, clock 01:15
1:15
2nd & 7 at opp 27
Kelvin Hopkins Jr. run for 1 yd to the Liber 26
1:15
3rd & 6 at opp 26
Kelvin Hopkins Jr. run for 5 yds to the Liber 21
0:40
4th & 1 at opp 21
Timeout ARMY, clock 00:40
0:40
4th & 1 at opp 21
Darnell Woolfolk run for 4 yds to the Liber 17 for a 1ST down
0:40
1st & 10 at opp 17
Artice Hobbs IV run for 3 yds to the Liber 14 ARMY Penalty, Offensive holding (-10 Yards) to the Liber 24
0:40
1st & 17 at opp 24
Kelvin Hopkins Jr. pass incomplete
0:40
2nd & 17 at opp 24
Kelvin Hopkins Jr. pass incomplete to Kell Walker
0:05
3rd & 17 at opp 24
Timeout LIBERTY, clock 00:05
0:00
3rd & 17 at opp 24
Landon Salyers 42 yd FG GOODArmy 17, Liberty 0
3rd quarter7 drives, then Army 24, Liberty 14
Army Touchdown, 3 plays
15:00
1st & 0 at own 35
Aaron Peart kickoff for 65 yds for a touchback
15:00
1st & 10 at own 25
Calen Holt run for 22 yds to the Army 47 for a 1ST down
15:00
1st & 10 at own 47
Fred Cooper run for 9 yds to the Liber 44
13:40
2nd & 1 at opp 44
Kelvin Hopkins Jr. pass complete to Christian Hayes for 44 yds for a TD (Landon Salyers KICK)Army 24, Liberty 0
Liberty Touchdown, 2 plays
13:40
1st & 0 at own 35
Landon Salyers kickoff for 59 yds , Frankie Hickson return for 16 yds to the Liber 22
13:33
1st & 10 at own 22
Kentory Matthews run for 50 yds to the Army 28 for a 1ST down
13:05
1st & 10 at opp 28
Stephen Calvert pass complete to Damian King for 28 yds for a TD (Aaron Peart KICK)Army 24, Liberty 7
Army Punt, 8 plays
13:05
1st & 0 at own 35
Aaron Peart kickoff for 65 yds for a touchback
13:05
1st & 10 at own 25
Kelvin Hopkins Jr. run for 8 yds to the Army 33
13:05
2nd & 2 at own 33
Darnell Woolfolk run for 5 yds to the Army 38 for a 1ST down
13:05
1st & 10 at own 38
Kelvin Hopkins Jr. run for 1 yd to the Army 39
13:05
2nd & 9 at own 39
Darnell Woolfolk run for 1 yd to the Army 40
13:05
3rd & 8 at own 40
Calen Holt run for 9 yds to the Army 49 for a 1ST down
13:05
1st & 10 at own 49
Kelvin Hopkins Jr. pass incomplete
13:05
2nd & 10 at own 49
Kell Walker run for 1 yd to the 50 yard line
13:05
3rd & 9 at the 50
Kelvin Hopkins Jr. pass incomplete
13:05
4th & 9 at the 50
Zach Potter punt for 35 yds, downed at the Liber 15
Liberty Touchdown, 13 plays
9:29
1st & 10 at own 15
Kentory Matthews run for a loss of 1 yard to the Liber 14
9:29
2nd & 11 at own 14
Stephen Calvert pass incomplete to Damian King
9:29
3rd & 11 at own 14
Stephen Calvert pass complete to Kentory Matthews for 12 yds to the Liber 26 for a 1ST down
9:29
1st & 10 at own 26
Damian King run for 3 yds to the Liber 29
9:29
2nd & 7 at own 29
Stephen Calvert pass incomplete
9:29
3rd & 7 at own 29
Stephen Calvert pass complete to Damian King for 8 yds to the Liber 37 for a 1ST down
9:29
1st & 10 at own 37
Stephen Calvert pass incomplete to B.J. Farrow
9:29
2nd & 10 at own 37
Stephen Calvert pass incomplete to Antonio Gandy-Golden
9:29
3rd & 10 at own 37
Stephen Calvert pass complete to Antonio Gandy-Golden for 21 yds to the Army 42 for a 1ST down
9:29
1st & 10 at opp 42
Peytton Pickett run for 5 yds to the Army 37
9:29
2nd & 5 at opp 37
Stephen Calvert pass incomplete
9:29
3rd & 5 at opp 37
Stephen Calvert pass complete to Kentory Matthews for 9 yds to the Army 28 for a 1ST down
5:39
1st & 10 at opp 28
Stephen Calvert pass complete to B.J. Farrow for 28 yds for a TD ARMY Penalty, Defensive pass interference ( Yards) declined (Aaron Peart KICK)Army 24, Liberty 14
Army Punt, 5 plays
5:39
1st & 0 at own 35
Aaron Peart kickoff for 63 yds
5:39
1st & 10 at own 25
Darnell Woolfolk run for 5 yds to the Army 30
5:39
2nd & 5 at own 30
Connor Slomka run for 16 yds to the Army 46 for a 1ST down
5:39
1st & 10 at own 46
Connor Slomka run for 3 yds to the Army 49
5:39
2nd & 7 at own 49
Darnell Woolfolk run for 3 yds to the Liber 48
5:39
3rd & 4 at opp 48
Darnell Woolfolk run for no gain to the Liber 48
5:39
4th & 4 at opp 48
Zach Potter punt for 28 yds, fair catch by B.J. Farrow at the Liber 20
Liberty Punt, 5 plays
2:44
1st & 10 at own 20
Stephen Calvert pass complete to Damian King for 18 yds to the Liber 38 for a 1ST down
2:44
1st & 10 at own 38
Stephen Calvert pass complete to B.J. Farrow for 21 yds to the Army 41 for a 1ST down
2:44
1st & 10 at opp 41
Stephen Calvert pass incomplete to B.J. Farrow, broken up by Mike Reynolds
2:44
2nd & 10 at opp 41
LIBERTY Penalty, false start (Damian King) to the Army 46
2:44
2nd & 15 at opp 46
Stephen Calvert pass incomplete to Damian King
2:44
3rd & 15 at opp 46
Kentory Matthews run for 2 yds to the Army 44
2:44
4th & 13 at opp 44
Aaron Peart punt for 44 yds for a touchback
Army Touchdown, 10 plays
1:03
1st & 10 at own 20
Kelvin Hopkins Jr. run for 18 yds to the Army 38 for a 1ST down
1:03
1st & 10 at own 38
Kell Walker run for 8 yds to the Army 46
Q4 15:00
2nd & 2 at own 46
Darnell Woolfolk run for 4 yds to the 50 yard line for a 1ST down
Q4 15:00
1st & 10 at the 50
Artice Hobbs IV run for 1 yd to the Liber 49
Q4 15:00
2nd & 9 at opp 49
Kell Walker run for 7 yds to the Liber 42
Q4 15:00
3rd & 2 at opp 42
Connor Slomka run for 8 yds to the Liber 34 for a 1ST down
Q4 15:00
1st & 10 at opp 34
Connor Slomka run for 22 yds to the Liber 12 for a 1ST down
Q4 15:00
1st & 10 at opp 12
Connor Slomka run for no gain to the Liber 12
Q4 12:09
2nd & 10 at opp 12
Timeout LIBERTY, clock 12:09
Q4 12:09
2nd & 10 at own 0
Calen Holt run for 8 yds to the Liber 4 for a 1ST down LIBERTY Penalty, targeting (-2 Yards) to the Liber 2 for a 1ST down
Q4 11:47
1st & goal at opp 2
Darnell Woolfolk run for 2 yds for a TD (Landon Salyers KICK)Army 31, Liberty 14
4th quarter6 drives, then Army 38, Liberty 14
Liberty Interception, 1 play
11:47
1st & 0 at own 35
Landon Salyers kickoff for 58 yds
11:47
1st & 10 at own 25
Stephen Calvert pass intercepted Jaylon McClinton return for no gain to the Army 49
Army Touchdown, 9 plays
11:41
1st & 10 at own 49
Kelvin Hopkins Jr. pass complete to Kell Walker for 17 yds to the Liber 34 for a 1ST down
11:41
1st & 10 at opp 34
Connor Slomka run for 2 yds to the Liber 32
11:41
2nd & 8 at opp 32
Fred Cooper run for 15 yds to the Liber 17 for a 1ST down
11:41
1st & 10 at opp 17
Fred Cooper run for a loss of 1 yard to the Liber 18
11:41
2nd & 11 at opp 18
Artice Hobbs IV run for 6 yds to the Liber 12
11:41
3rd & 5 at opp 12
Connor Slomka run for 4 yds to the Liber 8
11:41
4th & 1 at opp 8
Kelvin Hopkins Jr. run for 2 yds to the Liber 6 for a 1ST down
11:41
1st & goal at opp 6
Connor Slomka run for 4 yds to the Liber 2
7:13
2nd & goal at opp 2
Connor Slomka run for 2 yds for a TD (Landon Salyers KICK)Army 38, Liberty 14
Liberty Punt, 4 plays
7:13
1st & 0 at own 35
Landon Salyers kickoff for 65 yds for a touchback
7:13
1st & 10 at own 25
Stephen Calvert pass complete to DJ Stubbs for 19 yds to the Liber 44 for a 1ST down
7:13
1st & 10 at own 44
Stephen Calvert pass incomplete to DJ Stubbs, broken up by Kenneth Brinson
7:13
2nd & 10 at own 44
Stephen Calvert pass complete to Peytton Pickett for a loss of 6 yards to the Liber 38
7:13
3rd & 16 at own 38
Stephen Calvert sacked by Raymond Wright for a loss of 10 yards to the Liber 28
7:13
4th & 26 at own 28
LIBERTY Penalty, delay of game (-5 Yards) to the Liber 23
7:13
4th & 31 at own 23
Aaron Peart punt for 31 yds, downed at the Army 46
Army Punt, 3 plays
7:13
1st & 10 at own 46
Luke Langdon run for a loss of 3 yards to the Army 43
7:13
2nd & 13 at own 43
Artice Hobbs IV run for 6 yds to the Army 49
7:13
3rd & 7 at own 49
Luke Langdon pass incomplete
7:13
4th & 7 at own 49
Zach Potter punt for 39 yds, fair catch by B.J. Farrow at the Liber 12
Liberty Fumble, 3 plays
3:12
1st & 10 at own 12
Frankie Hickson run for 4 yds to the Liber 16
3:12
2nd & 6 at own 16
Stephen Calvert pass complete to Antonio Gandy-Golden for 9 yds to the Liber 25 for a 1ST down
3:12
1st & 10 at own 25
Stephen Calvert pass complete to Damian King for 62 yds Damian King fumbled, forced by Chris Skyers, recovered by Army Cameron Jones , return for 33 yds to the Army 42
Army Result not recorded, 2 plays
1:57
1st & 10 at own 42
Connor Slomka run for 4 yds to the Army 46
1:57
2nd & 6 at own 46
Connor Slomka run for 3 yds to the Army 49
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.