Yale at Dartmouth

Saturday, October 11, 2025

Dartmouth beat Yale 17–⁠16. It was their 87th meeting; after it, Yale led the series 49–⁠33–⁠5.

AwayYale9–⁠3 in 2025
16
HomeDartmouth7–⁠3 in 2025
17

Final at Memorial Field, HanoverTV: ESPN+Attendance 7,895

At kickoff
65°F, clear, wind 5 mph from the westWeather: NOAA NCEI Global Historical Climatology Network hourly; Lebanon Municipal Airport, 8 km from the stadium, 23 minutes after kickoff
Official
Jeremy DeAnguloGame officials: stats.ncaa.org box scores, via SportsDataverse

Scoring by quarter

TeamQ1Q2Q3Q4Final
Yale037616
Dartmouth0001717

Standouts

Photos from the game

  • Buddy Teevens Stadium at Memorial Field, Dartmouth College. Yale Bulldogs at Dartmouth Big Green football, October 11, 2025.
    Buddy Teevens Stadium at Memorial Field, Dartmouth College. Yale Bulldogs at Dartmouth Big Green football, October 11, 2025.Photo: Kenneth C. Zirkel, CC BY-SA 4.0, via Wikimedia Commons
  • 2025 Dartmouth College Marching Band pose for a photo.
    2025 Dartmouth College Marching Band pose for a photo.Photo: Kenneth C. Zirkel, CC BY-SA 4.0, via Wikimedia Commons
  • Dartmouth 50-yard line at Memorial Field
    Dartmouth 50-yard line at Memorial FieldPhoto: Kenneth C. Zirkel, CC BY-SA 4.0, via Wikimedia Commons
  • Dartmouth Cheer Squad in action. Yale Bulldogs at Dartmouth Big Green football, October 11, 2025.
    Dartmouth Cheer Squad in action. Yale Bulldogs at Dartmouth Big Green football, October 11, 2025.Photo: Kenneth C. Zirkel, CC BY-SA 4.0, via Wikimedia Commons

From the game’s category on Wikimedia Commons, free licenses only, each credited.

Player stats

Yale

PassingC/AttYdsTDInt
Dante Reno19/3219621
RushingCarYdsTDLong
Joshua Pitsenberger34138010
Nico Brown1909
Wilhelm Daal2605
Dante Reno1303
ReceivingRecYdsTDLong
Nico Brown8113128
Joshua Pitsenberger445026
Jaxton Santiago217013
Aidan Stephens31608

Dartmouth

PassingC/AttYdsTDInt
Grayson Saunier15/2215800
RushingCarYdsTDLong
Grayson Saunier1495237
D.J. Crowther1863014
Desmin Jackson115107
ReceivingRecYdsTDLong
Grayson O’Bara569023
Ky’Dric Fisher228022
Luke Rives328012
Chris Corbo21608
DefenseTklTFLSacksInt
Sean Williams0001

From CollegeFootballData’s box score. Names lead to each player’s page. ★ a career high on file.

Team stats

YaleDartmouth
352Total yards367
196Passing yards158
156Rushing yards209
6.1Yards per pass7.2
4.1Yards per rush4.9
22First downs25
10–⁠16Third downs5–⁠10
0–⁠2Fourth downs0–⁠1
1Turnovers1
7–⁠85Penalties4–⁠34
30:04Possession29:56

Efficiency

YaleDartmouth
46%Success rate50%
−0.02EPA per play0.17
0.95Explosiveness1.17
−0.30Rushing EPA0.17
0.30Passing EPA0.17
37%Passing-down success56%

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)

Dartmouth 52% to win. Elo’s favorite won.

The line

Dartmouth −2.5, over/under 53.5.

The last line on file before kickoff: the consensus line when the books publish one, otherwise a single major sportsbook’s.

Every drive

Dartmouth end zoneYale end zoneQ1 YalePunt, 14 playsQ1 YalePunt, 7 playsQ1 DartmouthMissed FG, 13 playsQ2 DartmouthPunt, 3 playsQ2 YaleField goal, 11 playsQ2 DartmouthTurnover on downs, 16 playsQ2 YaleEnd of half, 4 playsQ3 DartmouthPunt, 4 playsQ3 DartmouthTouchdown, 11 playsQ3 YaleTurnover on downs, 13 playsQ3 DartmouthResult not recorded, 3 playsQ3 YaleTouchdown, 1 playQ3 DartmouthMissed FG, 8 playsQ3 YalePunt, 6 playsQ4 YaleInterception, 7 playsQ4 DartmouthTouchdown, 6 playsQ4 YaleTouchdown, 13 playsQ4 DartmouthField goal, 7 plays
Solid bars scored; an outline in the other team’s color marks points the defense scored. Dartmouth drives left to right, Yale right to left.
  1. Q1 YalePunt, 14 plays, 38 yards
  2. Q1 YalePunt, 7 plays, 32 yards
  3. Q1 DartmouthMissed FG, 13 plays, 67 yards
  4. Q2 DartmouthPunt, 3 plays, 7 yards
  5. Q2 YaleField goal, 11 plays, 39 yards
  6. Q2 DartmouthTurnover on downs, 16 plays, 73 yards
  7. Q2 YaleEnd of half, 4 plays, 17 yards
  8. Q3 DartmouthPunt, 4 plays, 28 yards
  9. Q3 DartmouthTouchdown, 11 plays, 89 yards
  10. Q3 YaleTurnover on downs, 13 plays, 88 yards
  11. Q3 DartmouthResult not recorded, 3 plays, 11 yards
  12. Q3 YaleTouchdown, 1 play, 3 yards
  13. Q3 DartmouthMissed FG, 8 plays, 37 yards
  14. Q3 YalePunt, 6 plays, 23 yards
  15. Q4 YaleInterception, 7 plays, 40 yards
  16. Q4 DartmouthTouchdown, 6 plays, 72 yards
  17. Q4 YaleTouchdown, 13 plays, 67 yards
  18. Q4 DartmouthField goal, 7 plays, 42 yards

Play by play

1st quarter4 drives, then Tied at 0
Yale Punt, 14 plays
15:001st & 10 at own 22Josh Pitsenberger run for 4 yds to the YALE 26
15:002nd & 6 at own 26Josh Pitsenberger run for 3 yds to the YALE 29
15:003rd & 3 at own 29Dante Reno pass complete to Nico Brown for 7 yds to the YALE 36 for a 1ST down Dartmouth Penalty, off-side (Dakota Quinonez) to the YALE 36 for a 1ST down
15:001st & 10 at own 36Dante Reno pass complete to Josh Pitsenberger for 5 yds to the YALE 41
15:002nd & 5 at own 41Wilhelm Daal run for no gain to the YALE 41 Yale Penalty, illegal shift (Wilhelm Daal) to the YALE 36
15:002nd & 10 at own 36Wilhelm Daal run for 1 yd to the YALE 37
15:003rd & 9 at own 37Dante Reno pass incomplete to Jaxton Santiago Dartmouth Penalty, Defensive holding (Sean Williams) to the YALE 47
15:001st & 10 at own 47Josh Pitsenberger run for no gain to the YALE 47
15:002nd & 10 at own 47Dante Reno pass complete to Josh Pitsenberger for 9 yds to the DART 44
15:003rd & 1 at opp 44Josh Pitsenberger run for 10 yds to the DART 34 for a 1ST down
15:001st & 10 at opp 34Dante Reno pass incomplete to Jaxton Santiago, broken up by Jamal Cooper
15:002nd & 10 at opp 34Wilhelm Daal run for no gain to the DART 34 Yale Penalty, Offensive holding (Leo Bluhm) to the DART 44
15:002nd & 20 at opp 44Josh Pitsenberger run for 4 yds to the DART 40
15:003rd & 16 at opp 40Dante Reno pass incomplete to Brady Wagner
Yale Punt, 7 plays
15:003rd & 2 at own 41Dante Reno pass complete to Nico Brown for 5 yds to the YALE 46 for a 1ST down
14:541st & 10 at own 40Matisse Weaver kickoff for 60 yds , Joshua Tarver return for 22 yds to the YALE 22
9:204th & 16 at opp 40Reese Keeney punt for 40 yds
Dartmouth Missed FG, 13 plays
9:201st & 10 at own 20D.J. Crowther run for 1 yd to the DART 21
9:202nd & 9 at own 21Grayson Saunier pass complete to Luke Rives for 11 yds to the DART 32 for a 1ST down
9:201st & 10 at own 32D.J. Crowther run for 4 yds to the DART 36
9:202nd & 6 at own 36D.J. Crowther run for 9 yds to the DART 45 for a 1ST down
9:201st & 10 at own 45D.J. Crowther run for 3 yds to the DART 48
9:202nd & 7 at own 48Desmin Jackson run for 7 yds to the YALE 45 for a 1ST down
9:201st & 10 at opp 45Desmin Jackson run for 6 yds to the YALE 39
9:202nd & 4 at opp 39Desmin Jackson run for no gain to the YALE 39
9:203rd & 4 at opp 39Grayson Saunier pass complete to Grayson O’Bara for 23 yds to the YALE 16 for a 1ST down
9:201st & 10 at opp 16D.J. Crowther run for a loss of 4 yards to the YALE 20
9:202nd & 14 at opp 20Grayson Saunier pass complete to Grayson O’Bara for 4 yds to the YALE 16
9:203rd & 10 at opp 16Grayson Saunier pass complete to D.J. Crowther for 3 yds to the YALE 13
2:034th & 7 at opp 13Owen Zalc 31 yd FG MISSED
Yale Punt, 7 plays
2:031st & 10 at own 20Dante Reno pass complete to Nico Brown for 13 yds to the YALE 33 for a 1ST down
2:031st & 10 at own 33Josh Pitsenberger run for 5 yds to the YALE 38
2:032nd & 5 at own 38Josh Pitsenberger run for 3 yds to the YALE 41
Q2 15:001st & 10 at own 46Josh Pitsenberger run for 3 yds to the YALE 49
Q2 15:002nd & 7 at own 49Josh Pitsenberger run for 3 yds to the DART 48
Q2 15:003rd & 4 at opp 48Dante Reno pass incomplete to Nico Brown, broken up by Bruce Williams
Q2 13:414th & 4 at opp 48Reese Keeney punt for 37 yds
2nd quarter4 drives, then Yale 3, Dartmouth 0
Dartmouth Punt, 3 plays
13:411st & 10 at own 11D.J. Crowther run for 5 yds to the DART 16
13:412nd & 5 at own 16Grayson Saunier pass complete to Grayson O’Bara for 2 yds to the DART 18
13:413rd & 3 at own 18Grayson Saunier pass incomplete to Grayson O’Bara, broken up by Phoenix Grant
12:124th & 3 at own 18Luke Armistead punt for 45 yds , Jaxton Santiago returns for no gain to the YALE 37
Yale Field goal, 11 plays
12:121st & 10 at own 37Dante Reno pass incomplete to Brady Wagner, broken up by Sean Williams
12:122nd & 10 at own 37Josh Pitsenberger run for 7 yds to the YALE 44
12:123rd & 3 at own 44Dante Reno pass complete to Nico Brown for 28 yds to the DART 28 for a 1ST down
12:121st & 10 at opp 28Josh Pitsenberger run for 2 yds to the DART 26
12:122nd & 8 at opp 26Josh Pitsenberger run for 5 yds to the DART 21
12:123rd & 3 at opp 21Josh Pitsenberger run for 3 yds to the DART 18 for a 1ST down
12:121st & 10 at opp 18Dante Reno run for no gain to the DART 18 Yale Penalty, Offensive holding (Joseph Nash) to the DART 28
12:121st & 20 at opp 28Dante Reno pass complete to Wilhelm Daal for 1 yd to the DART 27
12:122nd & 19 at opp 27Josh Pitsenberger run for 3 yds to the DART 24
12:123rd & 16 at opp 24Dante Reno pass incomplete to Jaxton Santiago
7:274th & 16 at opp 24Nick Conforti 41 yd FG GOODYale 3, Dartmouth 0
Dartmouth Turnover on downs, 16 plays
7:271st & 10 at own 40Nick Conforti kickoff for 52 yds
7:271st & 10 at own 25Grayson Saunier run for 11 yds to the DART 36 for a 1ST down
7:271st & 10 at own 36Desmin Jackson run for 7 yds to the DART 43
7:272nd & 3 at own 43Desmin Jackson run for 6 yds to the DART 49 for a 1ST down
7:271st & 10 at own 49D.J. Crowther run for 2 yds to the YALE 49
7:272nd & 8 at opp 49Grayson Saunier pass complete to Nick Lemon for no gain to the DART 49 Dartmouth Penalty, inelgible downfield on pass (-5 Yards) to the DART 46
7:272nd & 13 at own 46Grayson Saunier run for 15 yds to the YALE 39 for a 1ST down
7:271st & 10 at opp 39Grayson Saunier pass incomplete to Luke Rives
7:272nd & 10 at opp 39Desmin Jackson run for 1 yd to the YALE 38
7:273rd & 9 at opp 38Grayson Saunier run for 26 yds to the YALE 12 for a 1ST down
7:271st & 10 at opp 12Grayson Saunier pass incomplete to Chris Corbo, broken up by Osize Daniyan
2:002nd & 10 at opp 12Grayson Saunier run for 9 yds to the YALE 3
2:003rd & 1 at opp 3Grayson Saunier run for 2 yds to the YALE 1 for a 1ST down
1:551st & goal at opp 1D.J. Crowther run for no gain to the YALE 1
1:502nd & goal at opp 1Grayson Saunier run for a loss of 1 yard to the YALE 2
1:443rd & goal at opp 2Grayson Saunier pass incomplete to D.J. Crowther
1:344th & goal at opp 2Grayson Saunier run for a loss of 1 yard to the YALE 3
Yale End of half, 4 plays
1:341st & 10 at own 3Josh Pitsenberger run for 5 yds to the YALE 8
1:342nd & 5 at own 8Josh Pitsenberger run for 5 yds to the YALE 13 for a 1ST down
0:471st & 10 at own 13Josh Pitsenberger run for 7 yds to the YALE 20
3rd quarter8 drives, then Yale 10, Dartmouth 0
Dartmouth Punt, 4 plays
15:001st & 10 at own 35Nick Conforti kickoff for 65 yds for a touchback
15:001st & 10 at own 25Grayson Saunier pass complete to Luke Rives for 5 yds to the DART 30 for a 1ST down Yale Penalty, personal foul (Mack Johnson) to the DART 45 for a 1ST down
15:001st & 10 at own 45D.J. Crowther run for no gain to the DART 45
15:002nd & 10 at own 45Grayson Saunier pass complete to Chris Corbo for 8 yds to the YALE 47
15:003rd & 2 at opp 47D.J. Crowther run for no gain to the YALE 47
Dartmouth Touchdown, 11 plays
15:002nd & 2 at own 16Grayson Saunier pass complete to Ky’Dric Fisher for 6 yds to the DART 22 for a 1ST down
12:374th & 2 at opp 47Luke Armistead punt for 39 yds
Yale Turnover on downs, 13 plays
12:371st & 10 at own 8Josh Pitsenberger run for 5 yds to the YALE 13
12:372nd & 5 at own 13Dante Reno pass complete to Nico Brown for 13 yds to the YALE 26 for a 1ST down
12:371st & 10 at own 26Josh Pitsenberger run for 2 yds to the YALE 28
12:372nd & 8 at own 28Nico Brown run for 9 yds to the YALE 37 for a 1ST down
10:551st & 10 at own 37Josh Pitsenberger run for 3 yds to the YALE 40
10:552nd & 7 at own 40Dante Reno pass complete to Aidan Stephens for 3 yds to the YALE 43
10:553rd & 4 at own 43Dante Reno pass intercepted for a 1ST down Sean Williams return for no gain to the DART 43 for a 1ST down Dartmouth Penalty, personal foul (Thaddeus Gianaris) to the DART 42 for a 1ST down
10:551st & 10 at opp 42Josh Pitsenberger run for 3 yds to the DART 39
10:552nd & 7 at opp 39Dante Reno pass complete to Nico Brown for 26 yds to the DART 13 for a 1ST down
10:551st & 10 at opp 13Josh Pitsenberger run for 5 yds to the DART 8
10:552nd & 5 at opp 8Josh Pitsenberger run for 4 yds to the DART 4
10:553rd & 1 at opp 4Josh Pitsenberger run for no gain to the DART 4
6:314th & 1 at opp 4Josh Pitsenberger run for no gain to the DART 4
Dartmouth Result not recorded, 3 plays
6:311st & 10 at own 4D.J. Crowther run for 6 yds to the DART 10
6:312nd & 4 at own 10D.J. Crowther run for 5 yds to the DART 15 for a 1ST down
5:061st & 10 at own 15Grayson Saunier sacked by Ezekiel Larry for a loss of 9 yards to the DART 6 Grayson Saunier fumbled, recovered by YALE Micaiah Shaber , return for 0 yards
Yale Touchdown, 1 play
4:591st & goal at opp 6Dante Reno pass complete to Nico Brown for 6 yds for a TD (Noah Piper KICK)Yale 10, Dartmouth 0
Dartmouth Missed FG, 8 plays
4:591st & 10 at own 40Nick Conforti kickoff for 58 yds
4:591st & 10 at own 25Grayson Saunier pass complete to Luke Rives for 12 yds to the YALE 37 Yale Penalty, personal foul (Babawale Fadeyibi) to the YALE 48
4:591st & 10 at opp 48Desmin Jackson run for 4 yds to the YALE 44
4:592nd & 6 at opp 44Grayson Saunier pass incomplete to Grayson O’Bara, broken up by Osize Daniyan
4:593rd & 6 at opp 44Grayson Saunier pass incomplete to Grayson O’Bara, broken up by Abu Kamara for a 1ST down Yale Penalty, Defensive pass interference (Abu Kamara) to the YALE 29 for a 1ST down
4:591st & 10 at opp 29Grayson Saunier pass incomplete to Chris Corbo
4:592nd & 10 at opp 29Desmin Jackson run for 3 yds to the YALE 26
4:593rd & 7 at opp 26Grayson Saunier sacked by Ezekiel Larry for a loss of 12 yards to the YALE 38
2:184th & 19 at opp 38Owen Zalc 56 yd FG MISSED
Yale Punt, 6 plays
2:181st & 10 at own 38Josh Pitsenberger run for 8 yds to the YALE 46
2:182nd & 2 at own 46Dante Reno pass incomplete to Jaxton Santiago
1:443rd & 2 at own 46Dante Reno pass complete to Nico Brown for 15 yds to the DART 39 for a 1ST down
1:271st & 10 at opp 39Dante Reno pass incomplete to Nico Brown
1:272nd & 10 at opp 39Josh Pitsenberger run for no gain to the DART 39 Yale Penalty, illegal motion (Joseph Nash) to the DART 39
1:273rd & 10 at opp 39Dante Reno pass incomplete to Josh Pitsenberger
0:354th & 10 at opp 39Reese Keeney punt for 31 yds
Dartmouth Touchdown, 11 plays
0:351st & 10 at own 8D.J. Crowther run for 8 yds to the DART 16
Q4 15:001st & 10 at own 22Grayson Saunier pass complete to Nick Lemon for 7 yds to the DART 29
Q4 15:002nd & 3 at own 29D.J. Crowther run for 4 yds to the DART 33 for a 1ST down
Q4 15:001st & 10 at own 33Grayson Saunier pass complete to Grayson O’Bara for 20 yds to the YALE 47 for a 1ST down
Q4 15:001st & 10 at opp 47Desmin Jackson run for 7 yds to the YALE 40
Q4 15:002nd & 3 at opp 40Desmin Jackson run for 6 yds to the YALE 34 for a 1ST down
Q4 15:001st & 10 at opp 34Desmin Jackson run for 4 yds to the YALE 30
Q4 15:002nd & 6 at opp 30Grayson Saunier pass complete to Grayson O’Bara for 20 yds to the YALE 10 for a 1ST down
Q4 15:001st & goal at opp 10D.J. Crowther run for 4 yds to the YALE 6
Q4 10:242nd & goal at opp 6Grayson Saunier run for 6 yds for a TD (Owen Zalc KICK)Yale 10, Dartmouth 7
4th quarter4 drives, then Dartmouth 17, Yale 16
Yale Interception, 7 plays
10:241st & 10 at own 40Matisse Weaver kickoff for 60 yds for a touchback
10:241st & 10 at own 25Dante Reno pass incomplete to Nico Brown
10:242nd & 10 at own 25Josh Pitsenberger run for 5 yds to the YALE 30
10:243rd & 5 at own 30Dante Reno pass complete to Josh Pitsenberger for 26 yds to the DART 44 for a 1ST down
10:241st & 10 at opp 44Wilhelm Daal run for 5 yds to the DART 39
10:242nd & 5 at opp 39Dante Reno pass complete to Jaxton Santiago for 4 yds to the DART 35
10:243rd & 1 at opp 35Josh Pitsenberger run for no gain to the DART 35
7:134th & 1 at opp 35Dante Reno pass intercepted Sean Williams return for no gain to the DART 25
Dartmouth Touchdown, 6 plays
7:131st & 10 at own 25D.J. Crowther run for 1 yd to the DART 26
7:132nd & 9 at own 26Grayson Saunier run for 7 yds to the DART 33
7:133rd & 2 at own 33D.J. Crowther run for 14 yds to the DART 47 for a 1ST down
7:131st & 10 at own 47Grayson Saunier pass intercepted for a 1ST down Abu Kamara return for no gain to the YALE 47 for a 1ST down Yale Penalty, personal foul (Phoenix Grant) to the YALE 38 for a 1ST down
7:131st & 10 at opp 38D.J. Crowther run for 1 yd to the YALE 37
4:132nd & 9 at opp 37Grayson Saunier run for 37 yds for a TD (Owen Zalc KICK)Dartmouth 14, Yale 10
Yale Touchdown, 13 plays
4:061st & 10 at own 40Matisse Weaver kickoff for 50 yds , Billy Eastep return for 20 yds to the YALE 30
4:061st & 10 at own 30Josh Pitsenberger run for 10 yds to the YALE 40 for a 1ST down
4:061st & 10 at own 40Josh Pitsenberger run for no gain to the YALE 40
4:062nd & 10 at own 40Dante Reno run for 3 yds to the YALE 43
4:063rd & 7 at own 43Dante Reno pass complete to Aidan Stephens for 8 yds to the DART 49 for a 1ST down
4:061st & 10 at opp 49Josh Pitsenberger run for 10 yds to the DART 39 for a 1ST down
2:001st & 10 at opp 39Dante Reno pass complete to Josh Pitsenberger for 5 yds to the DART 34
2:002nd & 5 at opp 34Dante Reno pass complete to Jaxton Santiago for 13 yds to the DART 21 for a 1ST down
2:001st & 10 at opp 21Dante Reno pass incomplete to Brady Wagner
2:002nd & 10 at opp 21Josh Pitsenberger run for 8 yds to the DART 13
2:003rd & 2 at opp 13Dante Reno pass complete to Aidan Stephens for 5 yds to the DART 8 for a 1ST down
2:001st & goal at opp 8Dante Reno pass incomplete to Robby Tattersall
2:002nd & goal at opp 8Dante Reno pass incomplete to Nico Brown for a 1ST down Dartmouth Penalty, roughing passer (Tyson Grimm) to the DART 4 for a 1ST down
0:371st & goal at opp 4Dante Reno pass complete to Graham Smith for 4 yds for a TD (Noah Piper PAT MISSED)Yale 16, Dartmouth 14
Dartmouth Field goal, 7 plays
0:371st & 10 at own 40Nick Conforti kickoff for 57 yds
0:371st & 10 at own 25Grayson Saunier pass complete to Chris Corbo for 8 yds to the DART 33
0:372nd & 2 at own 33Grayson Saunier pass complete to D.J. Crowther for 7 yds to the DART 40 for a 1ST down
0:371st & 10 at own 40Grayson Saunier pass incomplete to Grayson O’Bara
0:372nd & 10 at own 40Grayson Saunier run for 5 yds to the DART 45
0:143rd & 5 at own 45Grayson Saunier pass complete to Ky’Dric Fisher for 22 yds to the YALE 33 for a 1ST down
0:071st & 10 at opp 33Grayson Saunier run for no gain to the YALE 33
0:002nd & 10 at opp 33Owen Zalc 51 yd FG GOODDartmouth 17, Yale 16

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.

Yale leads 50–⁠33–⁠5 in 88 meetings, counting the one since this game.

Recent meetings
2026Yale 28, Dartmouth 7
2025Dartmouth 17, Yale 16
2024Dartmouth 44, Yale 43
2023Yale 31, Dartmouth 24
2022Yale 24, Dartmouth 21
2021Dartmouth 24, Yale 17

Around this game