38°F, a few clouds, wind 11 mph from the southwest, gusts to 22 mphWeather: NOAA NCEI Integrated Surface Database; Trenton Mercer Airport (KTTN), 16 km from the stadium, seven minutes before kickoff
From CollegeFootballData’s box score. Names lead to each player’s page. ★ a career high on file.
Team stats
Pennsylvania
Princeton
315
Total yards
309
261
Passing yards
252
54
Rushing yards
57
5.6
Yards per pass
7.4
1.9
Yards per rush
2.7
25
First downs
16
7–14
Third downs
5–12
4–5
Fourth downs
2–4
2
Turnovers
1
4–35
Penalties
4–47
33:35
Possession
26:25
Efficiency
Pennsylvania
Princeton
55%
Success rate
46%
0.14
EPA per play
0.16
0.96
Explosiveness
1.27
−0.45
Rushing EPA
0.00
0.53
Passing EPA
0.34
43%
Passing-down success
29%
5%
Havoc by its defense
9%
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)
Princeton 79% to win. Pennsylvania won as Elo’s underdog.
The line
Princeton −11.5, over/under 42.5.
The last line on file before kickoff: the consensus line when the books publish one, otherwise a single major sportsbook’s.
Every drive
Solid bars scored; an outline in the other team’s color marks points the defense scored. Princeton drives left to right, Pennsylvania right to left.
Q1 PrincetonTouchdown, 10 plays, 78 yards
Q1 PennsylvaniaPunt, 11 plays, 42 yards
Q1 PrincetonTouchdown, 11 plays, 80 yards
Q2 PennsylvaniaPunt, 6 plays, 7 yards
Q2 PrincetonTurnover on downs, 10 plays, 61 yards
Q2 PennsylvaniaInterception, 5 plays, 26 yards
Q2 PrincetonPunt return TD, 3 plays (Pennsylvania scores), 4 yards
Q2 PrincetonPunt, 3 plays, −7 yards
Q2 PennsylvaniaEnd of half, 2 plays, 4 yards
Q3 PennsylvaniaFumble return TD, 12 plays (Princeton scores), 67 yards
Q3 PennsylvaniaTurnover on downs, 8 plays, 41 yards
Q3 PrincetonInterception, 7 plays, 24 yards
Q3 PennsylvaniaTouchdown, 15 plays, 66 yards
Q4 PrincetonTurnover on downs, 10 plays, 47 yards
Q4 PennsylvaniaTouchdown, 17 plays, 72 yards
Q4 PrincetonEnd of game, 1 play, 7 yards
Play by play
1st quarter3 drives, then Princeton 6, Pennsylvania 0
Princeton Touchdown, 10 plays
14:56
1st & 10 at own 40
Graham Gotlieb kickoff for 60 yds , AJ Barber return for 22 yds to the Princ 22
14:56
1st & 10 at own 22
Blake Stenstrom pass incomplete to AJ Barber
14:56
2nd & 10 at own 22
Blake Stenstrom pass incomplete to Dylan Classi
14:56
3rd & 10 at own 22
Blake Stenstrom pass complete to Dylan Classi for 24 yds to the Princ 46 for a 1ST down
14:56
1st & 10 at own 46
Blake Stenstrom pass complete to Carson Bobo for 5 yds to the Penn 49
14:56
2nd & 5 at opp 49
Ryan Butler run for 2 yds to the Penn 47
14:56
3rd & 3 at opp 47
Ryan Butler run for 2 yds to the Penn 45
14:56
4th & 1 at opp 45
Niko Vangarelli run for 15 yds to the Penn 30 for a 1ST down
14:56
1st & 10 at opp 30
Blake Stenstrom sacked by Jake Heimlicher for a loss of 4 yards to the Penn 34
14:56
2nd & 14 at opp 34
Blake Stenstrom pass complete to AJ Barber for 11 yds to the Penn 23
10:24
3rd & 3 at opp 23
Blake Stenstrom pass complete to Andrei Iosivas for 23 yds for a TD, (Jeffrey Sexton PAT MISSED)Princeton 6, Pennsylvania 0
Pennsylvania Punt, 11 plays
10:19
1st & 10 at own 40
Jeffrey Sexton kickoff for 52 yds , Julien Stokes return for 15 yds to the PRINCETON 45 PENN Penalty, Illegal Substitution ( Yards) declined
10:19
1st & 10 at own 23
Aidan Sayin pass incomplete to Trey Flowers
10:19
2nd & 10 at own 23
Aidan Sayin pass complete to Justin Cayenne for 1 yd to the Penn 24
10:19
3rd & 9 at own 24
Aidan Sayin pass complete to Malone Howley for 11 yds to the Penn 35 for a 1ST down
10:19
1st & 10 at own 35
Aidan Sayin pass complete to Justin Cayenne for 10 yds to the Penn 45 for a 1ST down
10:19
1st & 10 at own 45
Aidan Sayin pass complete to Rory Starkey Jr. for 6 yds to the Princ 49
10:19
2nd & 4 at opp 49
Aidan Sayin run for 7 yds to the Princ 42 for a 1ST down
10:19
1st & 10 at opp 42
Trey Flowers run for 2 yds to the Princ 44
10:19
2nd & 12 at opp 44
Trey Flowers run for 2 yds to the Princ 42
7:05
3rd & 10 at opp 42
No Huddle-Shotgun Sayin,Aidan pass intercepted by Jester,Matthew at PRIN34 Jester,Matthew return 61 yards to the PENN05 (Sayin,Aidan) PENALTY PRIN Roughing The Passer (Nicholas,Ozzie) PRIN Illegal Block in Back declined 15 yards from PRIN42 to PRIN27, 1ST DOWN. NO PLAY.
7:05
1st & 10 at opp 27
Jonathan Mulatu run for 2 yds to the Princ 25
7:05
2nd & 8 at opp 25
PENALTY PENN Delay Of Game (Sayin,Aidan) 5 yards from PRIN25 to PRIN30. NO PLAY.
7:05
2nd & 13 at opp 30
Aidan Sayin run for 5 yds to the Princ 35 Aidan Sayin fumbled, recovered by Penn Rory Starkey Jr.
7:05
3rd & 18 at opp 35
Aidan Sayin pass incomplete to Joshua Casilli
5:02
4th & 18 at opp 35
Ben Krimm punt for 35 yds for a touchback
Princeton Touchdown, 11 plays
5:02
1st & 10 at own 20
Blake Stenstrom pass complete to Ja’Derris Carr for 5 yds to the Princ 25
5:02
2nd & 5 at own 25
Blake Stenstrom pass complete to Alex Cherry for 7 yds to the Princ 32 for a 1ST down
5:02
1st & 10 at own 32
Blake Stenstrom run for 11 yds to the Princ 43 for a 1ST down
5:02
1st & 10 at own 43
Blake Stenstrom pass complete to Dylan Classi for 22 yds to the Penn 35 for a 1ST down
5:02
1st & 10 at opp 35
Ryan Butler run for 5 yds to the Penn 30 Ryan Butler fumbled, recovered by Penn Henry Byrd
5:02
2nd & 5 at opp 30
Ryan Butler run for 6 yds to the Penn 24 for a 1ST down
5:02
1st & 10 at opp 24
Blake Stenstrom pass incomplete to Dylan Classi
5:02
2nd & 10 at opp 24
Blake Stenstrom run for 13 yds to the Penn 11 for a 1ST down
0:00
1st & 10 at opp 11
Ryan Butler run for 3 yds to the Penn 8
Q2 15:00
2nd & 7 at opp 8
Blake Stenstrom pass complete to Carson Bobo for 4 yds to the Penn 4
Q2 14:40
3rd & 3 at opp 4
Ryan Butler run for 4 yds for a TD, (Two-Point Conversion failed )Princeton 12, Pennsylvania 0
2nd quarter6 drives, then Princeton 12, Pennsylvania 7
Pennsylvania Punt, 6 plays
14:36
1st & 10 at own 40
Jeffrey Sexton kickoff for 56 yds , Julien Stokes return for 26 yds to the Penn 30
14:36
1st & 10 at own 30
Trey Flowers run for no gain to the Penn 30
14:36
2nd & 10 at own 30
Aidan Sayin pass complete to Joshua Casilli for 8 yds to the Penn 38
14:36
3rd & 2 at own 38
Trey Flowers run for 3 yds to the Penn 41 for a 1ST down
14:36
1st & 10 at own 41
Aidan Sayin pass complete to Rory Starkey Jr. for 7 yds to the Penn 48
14:36
2nd & 3 at own 48
run for 11 yds to the Penn 37 fumbled, recovered by Penn Trey Flowers
14:36
3rd & 14 at own 37
Aidan Sayin pass incomplete to Rory Starkey Jr.
11:14
4th & 14 at own 37
Ben Krimm punt for 40 yds
Princeton Turnover on downs, 10 plays
11:14
1st & 10 at own 23
Dareion Murphy run for 2 yds to the Princ 21
11:14
2nd & 12 at own 21
Blake Stenstrom pass complete to Dylan Classi for 4 yds to the Princ 25
11:14
3rd & 8 at own 25
Blake Stenstrom pass complete to AJ Barber for 18 yds to the Princ 43 for a 1ST down
11:14
1st & 10 at own 43
Blake Stenstrom pass complete to AJ Barber for 8 yds to the Penn 49
11:14
2nd & 2 at opp 49
Blake Stenstrom pass complete to Luke Colella for 4 yds to the Penn 45 for a 1ST down
11:14
1st & 10 at opp 45
No Huddle-Shotgun Stenstrom,Blake pass complete deep middle to Classi,Dylan for 16 yards to the PENN29 (Smith,Kendren) PENALTY PRIN Pass Interference (Barber,AJ) 15 yards from PENN45 to PRIN40. NO PLAY.
11:14
1st & 25 at own 40
Blake Stenstrom pass complete to Dylan Classi for 35 yds to the Penn 25 for a 1ST down
11:14
1st & 10 at opp 25
Ryan Butler run for 2 yds to the Penn 23
11:14
2nd & 8 at opp 23
Blake Stenstrom run for 5 yds to the Penn 18
11:14
3rd & 3 at opp 18
Ryan Butler run for 2 yds to the Penn 16
5:00
4th & 1 at opp 16
Niko Vangarelli run for no gain to the Penn 16
Pennsylvania Interception, 5 plays
5:00
1st & 10 at own 16
Aidan Sayin pass complete to Rory Starkey Jr. for 15 yds to the Penn 31 for a 1ST down
5:00
1st & 10 at own 31
Jonathan Mulatu run for 2 yds to the Penn 33
5:00
2nd & 8 at own 33
Aidan Sayin pass complete to Jonathan Mulatu for 8 yds to the Penn 41 for a 1ST down
5:00
1st & 10 at own 41
Aidan Sayin pass complete to Jonathan Mulatu for 1 yd to the Penn 42
2:53
2nd & 9 at own 42
PENN Penalty, Defensive Holding (Jaden Key) declined
Princeton Punt return TD, 3 plays (Pennsylvania scores)
2:53
1st & 10 at own 36
Blake Stenstrom pass complete to Dylan Classi for 4 yds to the Princ 40
2:53
2nd & 6 at own 40
Blake Stenstrom pass incomplete to Ryan Butler
2:53
3rd & 6 at own 40
Blake Stenstrom pass incomplete to Andrei Iosivas
2:02
4th & 6 at own 40
Will Powers punt blocked by Francesco Barone blocked by Francesco Barone for a TD, (Graham Gotlieb KICK)Princeton 12, Pennsylvania 7
Princeton Punt, 3 plays
2:02
1st & 10 at own 40
Graham Gotlieb kickoff for 51 yds
2:02
1st & 10 at own 25
Blake Stenstrom pass complete to Carson Bobo for 6 yds to the Princ 31
2:02
2nd & 4 at own 31
Blake Stenstrom sacked by Micah Morris for a loss of 6 yards to the Princ 25
1:19
3rd & 10 at own 25
Timeout PENN, clock 01:19
1:19
3rd & 10 at own 25
Blake Stenstrom sacked by Jonathan Melvin for a loss of 7 yards to the Princ 18
1:12
4th & 17 at own 18
Timeout PENN, clock 01:12
1:04
4th & 17 at own 18
Will Powers punt for 45 yds , Walter Soefker returns for 12 yds to the Penn 27
Pennsylvania End of half, 2 plays
1:04
1st & 10 at own 27
Aidan Sayin pass complete to Malone Howley for 3 yds to the Penn 30
0:00
2nd & 7 at own 30
Aidan Sayin run for 1 yd to the Penn 31
3rd quarter4 drives, then Princeton 19, Pennsylvania 7
Pennsylvania Fumble return TD, 12 plays (Princeton scores)
15:00
1st & 10 at own 40
Jeffrey Sexton kickoff for 60 yds for a touchback
15:00
1st & 10 at own 25
Julien Stokes run for 11 yds to the Penn 36 for a 1ST down
15:00
1st & 10 at own 36
Aidan Sayin pass complete to Malone Howley for 5 yds to the Penn 41
15:00
2nd & 5 at own 41
Trey Flowers run for 1 yd to the Penn 42
15:00
3rd & 4 at own 42
Aidan Sayin pass complete to Trey Flowers for 6 yds to the Penn 48 for a 1ST down
15:00
1st & 10 at own 48
No Huddle-Shotgun Flowers,Trey rush middle for 6 yards gain to the PRIN46 (Nicholas,Ozzie) PENALTY PENN Holding (Radosevich,Trevor) 10 yards from PENN48 to PENN38. NO PLAY.
15:00
1st & 20 at own 38
Aidan Sayin pass complete to Malone Howley for 11 yds to the Penn 49
15:00
2nd & 9 at own 49
Trey Flowers run for 2 yds to the Princ 49
15:00
3rd & 7 at opp 49
Aidan Sayin pass complete to Trey Flowers for 8 yds to the Princ 41 for a 1ST down
15:00
1st & 10 at opp 41
Aidan Sayin pass complete to Rory Starkey Jr. for 13 yds to the Princ 28 for a 1ST down
15:00
1st & 10 at opp 28
Jonathan Mulatu run for 3 yds to the Princ 25
15:00
2nd & 7 at opp 25
Aidan Sayin pass complete to Bryce Myers for 10 yds to the Princ 15 for a 1ST down
15:00
1st & 10 at opp 15
Aidan Sayin run for 5 yds to the Princ 20 Aidan Sayin fumbled, recovered by Penn Aidan Sayin
8:15
2nd & 15 at opp 20
Aidan Sayin pass complete deep left to Rory Starkey for 12 yards to the Princ 8 fumbled by Rory Starkey, Liam Johnson 92 Yd Fumble Return (Jeffrey Sexton Kick)Princeton 19, Pennsylvania 7
Pennsylvania Turnover on downs, 8 plays
8:11
1st & 10 at own 40
Jeffrey Sexton kickoff for 55 yds , Julien Stokes return for 21 yds to the Penn 26
8:11
1st & 10 at own 26
Aidan Sayin pass complete to Trey Flowers for 8 yds to the Penn 34
8:11
2nd & 2 at own 34
Aidan Sayin pass complete to Rory Starkey Jr. for 10 yds to the Penn 44 for a 1ST down
8:11
1st & 10 at own 44
Trey Flowers run for 8 yds to the Princ 48
8:11
2nd & 2 at opp 48
Trey Flowers run for 7 yds to the Princ 41 for a 1ST down
8:11
1st & 10 at opp 41
Aidan Sayin pass complete to Rory Starkey Jr. for 1 yd to the Princ 42
8:11
2nd & 11 at opp 42
Aidan Sayin pass complete to Bryce Myers for 9 yds to the Princ 33
8:11
3rd & 2 at opp 33
Jonathan Mulatu run for no gain to the Princ 33
4:59
4th & 2 at opp 33
Aidan Sayin run for no gain to the Princ 33
Princeton Interception, 7 plays
4:59
1st & 10 at own 33
Blake Stenstrom pass incomplete to Dylan Classi
4:59
2nd & 10 at own 33
Blake Stenstrom pass complete to Ja’Derris Carr for 2 yds to the Princ 35
4:59
3rd & 8 at own 35
Blake Stenstrom pass complete to AJ Barber for 7 yds to the Princ 42
4:59
4th & 1 at own 42
Blake Stenstrom pass complete to Dylan Classi for 13 yds to the Penn 45 for a 1ST down
4:59
1st & 10 at opp 45
Blake Stenstrom run for 2 yds to the Penn 43
4:59
2nd & 8 at opp 43
Blake Stenstrom pass incomplete to Dylan Classi
2:01
3rd & 8 at opp 43
Blake Stenstrom pass intercepted
Pennsylvania Touchdown, 15 plays
2:01
1st & 10 at own 34
Aidan Sayin pass complete to Trey Flowers for 2 yds to the Penn 36
2:01
2nd & 8 at own 36
Aidan Sayin pass complete to Rory Starkey Jr. for 8 yds to the Penn 44 for a 1ST down
2:01
1st & 10 at own 44
Trey Flowers run for 7 yds to the Princ 49
2:01
2nd & 3 at opp 49
Aidan Sayin pass complete to Sterling Stokes for 5 yds to the Princ 44 for a 1ST down
0:00
1st & 10 at opp 44
Aidan Sayin pass complete to Trey Flowers for 5 yds to the Princ 39
Q4 15:00
2nd & 5 at opp 39
Trey Flowers run for 4 yds to the Princ 35
Q4 15:00
3rd & 1 at opp 35
Trey Flowers run for 3 yds to the Princ 32 for a 1ST down
Q4 15:00
1st & 10 at opp 32
Aidan Sayin pass complete to Malone Howley for 12 yds to the Princ 20 for a 1ST down
Q4 15:00
1st & 10 at opp 20
Aidan Sayin pass complete to Rory Starkey Jr. for 5 yds to the Princ 15
Q4 12:51
2nd & 5 at opp 15
Aidan Sayin pass incomplete to Justin Cayenne
Q4 12:51
3rd & 5 at opp 15
Aidan Sayin run for 5 yds to the Princ 10 for a 1ST down
Q4 12:51
1st & goal at opp 10
Aidan Sayin pass complete to Rory Starkey Jr. for 3 yds to the Princ 7
Q4 12:51
2nd & goal at opp 7
Aidan Sayin pass incomplete to Malone Howley
Q4 12:51
3rd & goal at opp 7
Aidan Sayin run for 5 yds to the Princ 2
Q4 10:37
4th & goal at opp 2
Aidan Sayin pass complete to Julien Stokes for 2 yds for a TD, (Graham Gotlieb KICK)Princeton 19, Pennsylvania 14
4th quarter3 drives, then Pennsylvania 20, Princeton 19
Princeton Turnover on downs, 10 plays
10:37
1st & 10 at own 40
Graham Gotlieb kickoff for 57 yds
10:37
1st & 10 at own 25
Blake Stenstrom pass incomplete to Ja’Derris Carr
10:37
2nd & 10 at own 25
Blake Stenstrom pass complete to AJ Barber for 16 yds to the Princ 41 for a 1ST down
10:37
1st & 10 at own 41
Ryan Butler run for 5 yds to the Princ 46
10:37
2nd & 5 at own 46
Ryan Butler run for 4 yds to the 50 yard line
10:37
3rd & 1 at the 50
Blake Stenstrom pass complete to Carson Bobo for 4 yds to the Penn 46 for a 1ST down
10:37
1st & 10 at opp 46
Blake Stenstrom pass complete to AJ Barber for 14 yds to the Penn 32 for a 1ST down
10:37
1st & 10 at opp 32
Blake Stenstrom pass complete to Luke Colella for 2 yds to the Penn 30
10:37
2nd & 8 at opp 30
Ryan Butler run for 5 yds to the Penn 35
10:37
3rd & 13 at opp 35
Blake Stenstrom pass complete to Dylan Classi for 3 yds to the Penn 32
5:16
4th & 10 at opp 32
Blake Stenstrom pass complete to Andrei Iosivas for 4 yds to the Penn 28
Pennsylvania Touchdown, 17 plays
5:16
1st & 10 at own 28
Julien Stokes run for 6 yds to the Penn 34
5:16
2nd & 4 at own 34
Trey Flowers run for 3 yds to the Penn 31
5:16
3rd & 7 at own 31
Aidan Sayin pass complete to Rory Starkey Jr. for 5 yds to the Penn 36
5:16
4th & 2 at own 36
Aidan Sayin pass complete to Rory Starkey Jr. for 12 yds to the Penn 48 for a 1ST down
5:16
1st & 10 at own 48
Trey Flowers run for 4 yds to the Princ 48
5:16
2nd & 6 at opp 48
Aidan Sayin pass complete to Julien Stokes for 9 yds to the Princ 39 for a 1ST down
5:16
1st & 10 at opp 39
Aidan Sayin pass incomplete to Trey Flowers
5:16
2nd & 10 at opp 39
Aidan Sayin pass complete to Julien Stokes for no gain to the Princ 39
5:16
3rd & 10 at opp 39
Aidan Sayin pass complete to Trey Flowers for 6 yds to the Princ 33
1:04
4th & 4 at opp 33
Timeout PRINCETON, clock 01:04
1:04
4th & 4 at opp 33
PENALTY PENN False Start (Purcell,Jack) 5 yards from PRIN33 to PRIN38. NO PLAY.
1:04
4th & 9 at opp 38
Aidan Sayin pass complete to Julien Stokes for 12 yds to the Princ 26 for a 1ST down
0:59
1st & 10 at opp 26
Timeout PENN, clock 00:59
0:59
1st & 10 at opp 26
No Huddle-Shotgun Sayin,Aidan pass incomplete short middle to Stokes,Julien PENALTY PRIN Pass Interference (Johnson,Liam) 15 yards from PRIN26 to PRIN11, 1ST DOWN. NO PLAY.
0:59
1st & 10 at opp 11
Aidan Sayin pass complete to Trey Flowers for 8 yds to the Princ 3
0:46
2nd & 2 at opp 3
Timeout PRINCETON, clock 00:46
0:46
2nd & 2 at opp 3
Aidan Sayin pass complete to Julien Stokes for 1 yd to the Princ 2
0:46
3rd & 1 at opp 2
Trey Flowers run for 1 yd to the Princ 1 for a 1ST down
0:20
1st & goal at opp 1
Timeout PENN, clock 00:20
0:20
1st & goal at opp 1
Trey Flowers run for 4 yds to the Princ 5
0:17
2nd & goal at opp 5
Timeout PENN, clock 00:17
0:17
2nd & goal at opp 5
Aidan Sayin pass incomplete to Trey Flowers
0:17
3rd & goal at opp 5
Aidan Sayin pass incomplete to Julien Stokes
0:05
4th & goal at opp 5
Aidan Sayin pass complete to Trey Flowers for 5 yds for a TD, (Two-Point Conversion failed)Pennsylvania 20, Princeton 19
0:05
1st & goal at opp 3
PENALTY PRIN UNS: Unsportsmanlike Conduct 2 yards from PRIN03 to PRIN03. NO PLAY.
Princeton End of game, 1 play
0:04
1st & 10 at own 40
Graham Gotlieb kickoff for 38 yds , Joseph Dalsey return for no gain to the Princ 22
0:00
1st & 10 at own 22
Blake Stenstrom pass complete to Andrei Iosivas for 7 yds to the Princ 29
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.