Skip to main content
← Back to GamesDec 1, 2024Week 14
Conference Game

Air Force Dominates San Diego State 31-20 in Week 14

Air Force defeated San Diego State 31-20 in Week 14, with the Falcons controlling most of the contest. Air Force scored 14 points in the first quarter and 14 more in the third quarter, establishing early dominance before San Diego State mounted a fourth-quarter rally that fell short.

Quentin Hayes led Air Force's passing attack, completing a 76-yard touchdown pass to Cade Harris in the third quarter—a play that generated the game's highest EPA value. The Falcons' ground game also contributed, with Kade Frew recording a 23-yard run that resulted in a first down in the second quarter despite a 15-yard San Diego State penalty.

San Diego State's Marquez Cooper rushed for 94 yards but couldn't generate sustained offensive momentum. The Aztecs scored seven points in both the first and second quarters before being held scoreless in the third, then added six points in the fourth quarter in a comeback attempt.

Air Force covered the 5.5-point spread and the game went over the 43.5-point total. The contest featured two lead changes and remained competitive throughout.

AI-generated recap · Aug 26, 2026

Team1Q2Q3Q4QFinal
Air ForceAir Force
14314031
San Diego StateSan Diego State
770620

Scoring Timeline

Q1Q2Q3Q4014280-77-147-1714-1714-2414-3120-31
San Diego StateAir Force

Drive Chart

Own 20Own 4050Opp 40Opp 20AFSDSAFSDSAFSDSAFSDSAFSDSAFSDSAFSDSAFTD981ydTD1076ydTD1075ydPUNT723ydFG1062ydTD1483ydEND16ydDOWNS1244ydTD488ydDOWNS424ydTD1066ydTD774ydPUNT626ydDOWNS1419ydEND510yd

Box Score

Team statistics comparing Air Force and San Diego State
StatisticAir ForceSan Diego State
Passing2-225-33
Pass Yards128236
Rush Yards280120
Total Yards408356
Turnovers00
3rd Down6-98-14
Penalties2-256-48
Possession31:2128:39

Player Leaders

Player Leaders

Air Force
passing
Quentin Hayes
1/1, 76 YDS, 1 TD
rushing
Dylan Carson
24 CAR, 125 YDS, 2 TD
receiving
Cade Harris
1 REC, 76 YDS, 1 TD
defense
San Diego State
passing
Danny O'Neil
24/32, 230 YDS, 1 TD
rushing
Marquez Cooper
23 CAR, 94 YDS, 2 TD
receiving
Louis Brown
3 REC, 60 YDS
defense

Play-by-Play

1st & 10Kickoff Return (Offense)+4 yds

Gabriel Plascencia kickoff for 50 yds , Parker Menefee return for 4 yds to the AFA 19

1st & 10Rush+5 ydsPPA +0.08

Dylan Carson run for 5 yds to the AFA 24

2nd & 5Rush+11 ydsPPA +1.11

Quentin Hayes run for 11 yds to the AFA 35 for a 1ST down

1st & 10Rush+4 ydsPPA -0.16

Quentin Hayes run for 4 yds to the AFA 39

2nd & 6Rush+4 ydsPPA -0.15

Dylan Carson run for 4 yds to the AFA 43

3rd & 2Rush+2 ydsPPA +1.28

Dylan Carson run for 2 yds to the AFA 45 for a 1ST down

1st & 10Rush+5 ydsPPA +0.11

Owen Allen run for 5 yds to the 50 yard line

2nd & 5Rush-3 ydsPPA -1.84

Quentin Hayes run for a loss of 3 yards to the AFA 47

3rd & 8Pass Reception+52 ydsPPA +5.07

Brandon Engel pass complete to Jared Roznos for 52 yds to the SDSU 1 for a 1ST down

1st & 1Rushing Touchdown+1 ydsPPA +0.94

Dylan Carson run for 1 yd for a TD (Matthew Dapore KICK)

1st & 10Kickoff Return (Offense)+20 yds

Reagan Tubbs kickoff for 61 yds , Ja'Shaun Poke return for 20 yds to the SDSU 24

1st & 10Pass Reception+11 ydsPPA +0.90

Danny O'Neil pass complete to Nate Bennett for 11 yds to the SDSU 35 for a 1ST down

1st & 10Rush+1 ydsPPA -0.83

Marquez Cooper run for 1 yd to the SDSU 36

2nd & 9Pass Reception+3 ydsPPA -0.29

Danny O'Neil pass complete to Mekhi Shaw for 3 yds to the SDSU 39

3rd & 6Pass Reception+7 ydsPPA +2.18

Danny O'Neil pass complete to Nate Bennett for 7 yds to the SDSU 46 for a 1ST down

1st & 10Rush0 ydsPPA -1.16

Marquez Cooper run for no gain to the SDSU 46

2nd & 10Pass Reception+10 ydsPPA +1.93

Danny O'Neil pass complete to Ja'Shaun Poke for 10 yds to the AFA 44 for a 1ST down

1st & 10Pass Reception+20 ydsPPA +0.73

Danny O'Neil pass complete to Marquez Cooper for 20 yds to the AFA 24 for a 1ST down

1st & 10Rush+4 ydsPPA -0.03

Marquez Cooper run for 4 yds to the AFA 20

2nd & 6Pass Reception+13 ydsPPA +0.52

Danny O'Neil pass complete to Mekhi Shaw for 13 yds to the AFA 7 for a 1ST down

1st & 7Rushing Touchdown+7 ydsPPA +2.20

Marquez Cooper run for 7 yds for a TD (Gabriel Plascencia KICK)

1st & 10Rush+4 ydsPPA -0.11

Dylan Carson run for 4 yds to the AFA 29

2nd & 6Rush-1 ydsPPA -0.74

Quentin Hayes run for a loss of 1 yard to the AFA 28

3rd & 7Rush+18 ydsPPA +2.75

Quentin Hayes run for 18 yds to the AFA 46 for a 1ST down

1st & 10Rush+9 ydsPPA +1.21

Dylan Carson run for 9 yds to the SDSU 45

2nd & 1Rush+5 ydsPPA -0.21

Kade Frew run for 5 yds to the SDSU 40 for a 1ST down

1st & 10Rush+12 ydsPPA +0.43

Owen Allen run for 12 yds to the SDSU 28 for a 1ST down

1st & 10Rush+1 ydsPPA -0.39

Owen Allen run for 1 yd to the SDSU 27

2nd & 9Rush+14 ydsPPA +0.62

Kade Frew run for 14 yds to the SDSU 13 for a 1ST down

1st & 10Rush+12 ydsPPA +1.60

Dylan Carson run for 12 yds to the SDSU 1 for a 1ST down

1st & 1Rushing Touchdown+1 ydsPPA +0.94

Quentin Hayes run for 1 yd for a TD (Matthew Dapore KICK)

1st & 10Kickoff Return (Offense)+17 yds

Reagan Tubbs kickoff for 59 yds , Ja'Shaun Poke return for 17 yds to the SDSU 23

1st & 10Sack-2 ydsPPA -0.81

Danny O'Neil sacked by Blake Fletcher for a loss of 2 yards to the SDSU 21

2nd & 12Rush+11 ydsPPA +0.79

Marquez Cooper run for 11 yds to the SDSU 32

3rd & 1Rush+3 ydsPPA +0.98

Marquez Cooper run for 3 yds to the SDSU 35 for a 1ST down

1st & 10Pass Reception+12 ydsPPA +1.15

Danny O'Neil pass complete to Mekhi Shaw for 12 yds to the SDSU 47 for a 1ST down

1st & 10Rush0 ydsPPA -1.15

Marquez Cooper run for no gain to the SDSU 47

2nd & 10Pass Reception-1 ydsPPA -1.12

Danny O'Neil pass complete to Jude Wolfe for a loss of 1 yard to the SDSU 46

3rd & 11Pass Incompletion0 ydsPPA -0.54

Danny O'Neil pass incomplete to Ja'Shaun Poke

4th & 11Punt0 yds

Tyler Pastula punt for 44 yds, fair catch by Brandon Engel at the AFA 10

4th & 11Punt0 yds

Tyler Pastula punt for 44 yds, fair catch by Brandon Engel at the AFA 10

1st & 10Rush+17 ydsPPA +0.86

Dylan Carson run for 17 yds to the AFA 27 for a 1ST down

1st & 10Rush+5 ydsPPA +0.10

Dylan Carson run for 5 yds to the AFA 32

2nd & 5Rush+1 ydsPPA -0.68

Dylan Carson run for 1 yd to the AFA 33

3rd & 4Rush+4 ydsPPA +1.47

Quentin Hayes run for 4 yds to the AFA 37 for a 1ST down

1st & 10Rush+2 ydsPPA -0.66

Dylan Carson run for 2 yds to the AFA 39

2nd & 8Rush+38 ydsPPA +3.04

Kade Frew run for 23 yds to the SDSU 38 for a 1ST down San Diego State Penalty, (15 Yards) to the SDSU 23 for a 1ST down

1st & 10Rush+3 ydsPPA -0.13

Owen Allen run for 3 yds to the SDSU 20

2nd & 7Rush+2 ydsPPA -0.24

Owen Allen run for 2 yds to the SDSU 18

3rd & 5Penalty-10 yds

(07:39) No Huddle Frew,Kade rush left for 7 yards gain to the SDSU11 (White,Trey) PENALTY AFA Holding (Harris,Cade) 10 yards from SDSU18 to SDSU28. NO PLAY.

3rd & 15Rush0 ydsPPA -1.00

Quentin Hayes run for no gain to the SDSU 28

4th & 15Field Goal Good+45 yds

Matthew Dapore 45 yd FG GOOD

1st & 10Kickoff Return (Offense)+12 yds

Reagan Tubbs kickoff for 60 yds , Jordan Napier return for 12 yds to the SDSU 17

1st & 10Rush+8 ydsPPA +0.73

Marquez Cooper run for 8 yds to the SDSU 25

2nd & 2Rush+1 ydsPPA -0.73

Marquez Cooper run for 1 yd to the SDSU 26

3rd & 1Rush+1 ydsPPA +0.60

Danny O'Neil run for 1 yd to the SDSU 27 for a 1ST down

1st & 10Pass Reception+2 ydsPPA -0.49

Danny O'Neil pass complete to Cam Davis for 2 yds to the SDSU 25

2nd & 12Pass Reception+4 ydsPPA -0.05

Danny O'Neil pass complete to Cam Davis for 4 yds to the SDSU 29

3rd & 8Pass Reception+14 ydsPPA +2.49

Danny O'Neil pass complete to Michael Harrison for 14 yds to the SDSU 43 for a 1ST down

1st & 10Sack-3 ydsPPA -1.74

Danny O'Neil sacked by Blake Fletcher for a loss of 3 yards to the SDSU 40

2nd & 13Rush+18 ydsPPA +2.91

Marquez Cooper run for 18 yds to the AFA 42 for a 1ST down

1st & 10Rush+19 ydsPPA +0.63

Danny O'Neil run for 19 yds to the AFA 23 for a 1ST down

1st & 10Pass Incompletion0 ydsPPA -0.42

Danny O'Neil pass incomplete to Ja'Shaun Poke

2nd & 10Pass Reception+13 ydsPPA +0.57

Danny O'Neil pass complete to Jude Wolfe for 13 yds to the AFA 10 for a 1ST down

1st & 10Rush+7 ydsPPA +0.30

Marquez Cooper run for 7 yds to the AFA 3

2nd & 3Rush+1 ydsPPA -0.33

Marquez Cooper run for 1 yd to the AFA 2

3rd & 2Rushing Touchdown+2 ydsPPA +2.54

Marquez Cooper run for 2 yds for a TD (Gabriel Plascencia KICK)

1st & 10Rush+6 ydsPPA +0.33

Kaden Cloud run for 6 yds to the AFA 31

0th & 10End of Half+6 yds

End of 2nd Quarter

1st & 10Kickoff Return (Offense)0 yds

Matthew Dapore kickoff for 21 yds , Brady Anderson return for no gain to the SDSU 44

1st & 10Rush+4 ydsPPA -0.16

Marquez Cooper run for 4 yds to the SDSU 48

2nd & 6Rush+2 ydsPPA -0.69

Marquez Cooper run for 2 yds to the 50 yard line

3rd & 4Pass Reception+6 ydsPPA +1.81

Danny O'Neil pass complete to Ja'Shaun Poke for 6 yds to the AFA 44 for a 1ST down

1st & 10Pass Reception+4 ydsPPA -0.11

Danny O'Neil pass complete to Ja'Shaun Poke for 4 yds to the AFA 40

2nd & 6Rush+7 ydsPPA +0.62

Marquez Cooper run for 7 yds to the AFA 33 for a 1ST down

1st & 10Rush-4 ydsPPA -1.34

Marquez Cooper run for a loss of 4 yards to the AFA 37

2nd & 14Rush+3 ydsPPA -0.36

Danny O'Neil run for 3 yds to the AFA 34

3rd & 11Pass Reception+19 ydsPPA +2.05

Danny O'Neil pass complete to Ja'Shaun Poke for 19 yds to the AFA 15 for a 1ST down

1st & 10Pass Incompletion0 ydsPPA -0.32

Danny O'Neil pass incomplete to Jordan Napier

2nd & 10Pass Incompletion0 ydsPPA -0.36

Danny O'Neil pass incomplete to Louis Brown IV

3rd & 10Pass Reception+9 ydsPPA +0.37

Danny O'Neil pass complete to Marquez Cooper for 9 yds to the AFA 6

4th & 1Rush-6 ydsPPA -4.13

Marquez Cooper run for a loss of 6 yards to the AFA 12

1st & 10Rush+4 ydsPPA -0.05

Dylan Carson run for 4 yds to the AFA 16

2nd & 6Rush+6 ydsPPA +0.51

Dylan Carson run for 6 yds to the AFA 22 for a 1ST down

1st & 10Rush+2 ydsPPA -0.40

Quentin Hayes run for 2 yds to the AFA 24

2nd & 8Passing Touchdown+76 ydsPPA +6.67

Quentin Hayes pass complete to Cade Harris for 76 yds for a TD (Matthew Dapore KICK)

1st & 10Kickoff Return (Offense)+33 yds

Matthew Dapore kickoff for 56 yds , Chris Johnson return for 33 yds to the SDSU 42

1st & 10Penalty+15 yds

PENALTY AFA Personal Foul 15 yards from SDSU42 to AFA43, 1ST DOWN. NO PLAY.

1st & 10Rush+9 ydsPPA +0.91

Marquez Cooper run for 9 yds to the AFA 34

2nd & 1Penalty-5 yds

(07:25) Shotgun O'Neil,Danny pass incomplete short left to Bennett,Nate thrown to AFA30 PENALTY SDSU Ineligible Downfield on Pass (Fuimaono,Saipale) 5 yards from AFA34 to AFA39. NO PLAY.

2nd & 6Rush+1 ydsPPA -0.76

Cam Davis run for 1 yd to the AFA 38

3rd & 5Pass Incompletion0 ydsPPA -1.07

Danny O'Neil pass incomplete to Ja'Shaun Poke

4th & 5Rush+4 ydsPPA -1.70

Danny O'Neil run for 4 yds to the AFA 34

1st & 10Rush+6 ydsPPA +0.39

Dylan Carson run for 6 yds to the AFA 40

2nd & 4Rush+6 ydsPPA +0.76

Dylan Carson run for 6 yds to the AFA 46 for a 1ST down

1st & 10Rush+8 ydsPPA +0.92

Dylan Carson run for 8 yds to the SDSU 46

2nd & 2Rush+3 ydsPPA -0.09

Dylan Carson run for 3 yds to the SDSU 43 for a 1ST down

1st & 10Rush+8 ydsPPA +0.69

Kade Frew run for 8 yds to the SDSU 35

2nd & 2Rush+3 ydsPPA -0.21

Owen Allen run for 3 yds to the SDSU 32 for a 1ST down

1st & 10Rush+1 ydsPPA -0.46

Owen Allen run for 1 yd to the SDSU 31

2nd & 9Rush+7 ydsPPA +0.34

Cade Harris run for 7 yds to the SDSU 24

3rd & 2Rush+10 ydsPPA +0.44

Kade Frew run for 10 yds to the SDSU 14 for a 1ST down

1st & 10Rushing Touchdown+14 ydsPPA +2.55

Dylan Carson run for 14 yds for a TD (Matthew Dapore KICK)

1st & 10Kickoff Return (Offense)+23 yds

Matthew Dapore kickoff for 62 yds , Ja'Shaun Poke return for 23 yds to the SDSU 26

1st & 10Pass Reception+9 ydsPPA +1.28

Danny O'Neil pass complete to Michael Harrison for 9 yds to the SDSU 35

2nd & 1Pass Incompletion0 ydsPPA -1.30

Danny O'Neil pass incomplete to Nate Bennett

3rd & 1Penalty-5 yds

PENALTY SDSU False Start (Williams,Nate) 5 yards from SDSU35 to SDSU30. NO PLAY.

3rd & 6Pass Reception+9 ydsPPA +1.95

Danny O'Neil pass complete to Louis Brown IV for 9 yds to the SDSU 39 for a 1ST down

1st & 10Pass Reception+15 ydsPPA +1.31

Danny O'Neil pass complete to Louis Brown IV for 15 yds to the AFA 46 for a 1ST down

1st & 10Pass Reception+36 ydsPPA +1.03

Danny O'Neil pass complete to Louis Brown IV for 36 yds to the AFA 10 for a 1ST down

1st & 10Rush+2 ydsPPA -0.16

Marquez Cooper run for 2 yds to the AFA 8

2nd & 8Passing Touchdown+8 ydsPPA +2.68

Danny O'Neil pass complete to Marquez Cooper for 8 yds for a TD (Two-Point Conversion failed)

1st & 10Kickoff Return (Offense)+15 yds

Gabriel Plascencia kickoff for 55 yds , Cade Harris return for 15 yds to the AFA 25

1st & 10Rush+5 ydsPPA +0.09

Dylan Carson run for 5 yds to the AFA 30

2nd & 5Rush+2 ydsPPA -0.48

Dylan Carson run for 2 yds to the AFA 32

3rd & 3Rush+13 ydsPPA +2.19

Kade Frew run for 13 yds to the AFA 45 for a 1ST down

1st & 10Rush0 ydsPPA -1.16

Dylan Carson run for no gain to the AFA 45

2nd & 10Rush+2 ydsPPA -0.57

Quentin Hayes run for 2 yds to the AFA 47

3rd & 8Rush+4 ydsPPA -0.13

Kade Frew run for 4 yds to the SDSU 49

4th & 4Punt0 yds

Luke Freer punt for 40 yds

1st & 10Pass Reception+3 ydsPPA -0.14

Danny O'Neil pass complete to Nate Bennett for 3 yds to the SDSU 12

2nd & 7Rush+15 ydsPPA +1.03

Marquez Cooper run for 15 yds to the SDSU 27 for a 1ST down

1st & 10Rush+5 ydsPPA +0.10

Danny O'Neil run for 5 yds to the SDSU 32

2nd & 5Rush+2 ydsPPA -0.52

Marquez Cooper run for 2 yds to the SDSU 34

3rd & 3Rush+1 ydsPPA -0.48

Danny O'Neil run for 1 yd to the SDSU 35

4th & 2Pass Reception+6 ydsPPA +2.17

Tyler Pastula pass complete to Chris Johnson for 6 yds to the SDSU 41 for a 1ST down

1st & 10Rush0 ydsPPA -1.14

Marquez Cooper run for no gain to the SDSU 41

2nd & 10Penalty-10 yds

(05:57) No Huddle-Shotgun O'Neil,Danny rush right for 5 yards gain to the SDSU46 (Fletcher,Blake), out of bounds PENALTY SDSU Holding (Fuimaono,Saipale) 10 yards from SDSU41 to SDSU31. NO PLAY.

2nd & 20Pass Incompletion0 ydsPPA -0.20

Danny O'Neil pass incomplete to Louis Brown IV

3rd & 20Pass Reception+17 ydsPPA +1.00

Danny O'Neil pass complete to Ja'Shaun Poke for 17 yds to the SDSU 48

4th & 3Rush+4 ydsPPA +2.56

Danny O'Neil run for 4 yds to the AFA 48 for a 1ST down

1st & 10Pass Incompletion0 ydsPPA -1.07

Danny O'Neil pass incomplete to Mekhi Shaw

2nd & 10Fumble Recovery (Own)0 ydsPPA -1.05

Danny O'Neil run for no gain to the AFA 48 Danny O'Neil fumbled, recovered by AFA Marquez Cooper

3rd & 10Penalty-8 yds

San Diego State Penalty, (-8 Yards) to the SDSU 44

4th & 18Sack-7 ydsPPA +0.18

Danny O'Neil sacked by Aiden Swartz for a loss of 7 yards to the SDSU 37

1st & 10Rush+5 ydsPPA +0.08

Dylan Carson run for 5 yds to the SDSU 32

2nd & 5Rush+3 ydsPPA -0.24

Dylan Carson run for 3 yds to the SDSU 29

3rd & 2Rush+1 ydsPPA -0.66

Dylan Carson run for 1 yd to the SDSU 28

4th & 1Penalty+5 yds

(01:51) No Huddle-Shotgun Hayes,Quentin rush middle for 1 yard gain to the SDSU27 (White,Trey) PENALTY SDSU Offside (McLaughlin,Jelani) 5 yards from SDSU28 to SDSU23, 1ST DOWN. NO PLAY.

1st & 10Rush-1 ydsPPA -0.52

Q. Hayes takes a knee

2nd & 11Rush-3 ydsPPA -1.12

Q. Hayes takes a knee

Situational Analysis

Air Force

Down
1-3
Short
4-6
Med
7-10
Long
11+
XLong
1st
100%
2 plays
58%
24 plays
2nd
0%
3 plays
33%
9 plays
67%
6 plays
0%
1 play
3rd
75%
4 plays
100%
1 play
67%
3 plays
0%
1 play
4th

San Diego State

Down
1-3
Short
4-6
Med
7-10
Long
11+
XLong
1st
43%
28 plays
2nd
0%
3 plays
40%
5 plays
50%
8 plays
40%
5 plays
3rd
75%
4 plays
75%
4 plays
100%
2 plays
67%
3 plays
4th
67%
3 plays
0%
1 play
100%
1 play