Purdue at Michigan

Saturday, November 1, 2025

No. 21 Michigan beat Purdue 21–⁠16. It was their 61st meeting; Michigan leads the series 47–⁠14.

AwayPurdue2–⁠10 in 2025
16
Home21Michigan9–⁠4 in 2025
21

Final at Michigan Stadium, Ann ArborTV: BTNAttendance 110,517

At kickoff
47°F, calmWeather: NOAA NCEI Global Historical Climatology Network hourly; Ann Arbor Municipal Airport, 5 km from the stadium, seven minutes before kickoff
Viewers
1.6 million viewers on BTNViewers: Nielsen, as compiled by nschultz7’s ratings tracker.
Official
Brian BanksGame officials: stats.ncaa.org box scores, via SportsDataverse

Scoring by quarter

TeamQ1Q2Q3Q4Final
Purdue073616
Michigan770721

How the win probability moved

Michigan favored

Win probability by play: Michigan 57% at kickoff, 100% at the end. Biggest swing: 29 points.

Purdue favored

Win probability after every play, from CollegeFootballData.com’s model. The dot marks the biggest swing (29 points).

Standouts

Photos: Wikimedia Commons, free licenses; credits on each player’s page.

Player stats

Purdue

PassingC/AttYdsTDInt
Ryan Browne19/2413310
Malachi Singleton1/2500
RushingCarYdsTDLong
Malachi Thomas1568014
Antonio Harris1154120
Malachi Singleton624013
ReceivingRecYdsTDLong
Michael Jackson III658019
Nitro Tuggle538016
E.J. Horton534010
Christian Earls1707
DefenseTklTFLSacksInt
Tahj Ra-El13000
Charles Correa60.50.50
Myles Slusher6000
Mani Powell51.51.50
Hudauri Hines2001

Michigan

PassingC/AttYdsTDInt
Bryce Underwood13/2214501
RushingCarYdsTDLong
Jordan Marshall25185354
Bryce Underwood744012
Bryson Kuzdzal42307
Jasper Parker1404
ReceivingRecYdsTDLong
Zack Marshall358037
Jordan Marshall125025
Andrew Marsh425020
Marlin Klein216010
DefenseTklTFLSacksInt
Ernest Hausmann11100
Rayshaun Benny60.500
Troy Bowles6000
Mason Curtis6000
T.J. Guy4110
Derrick Moore3220

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

Team stats

PurdueMichigan
276Total yards398
138Passing yards145
138Rushing yards253
5.3Yards per pass6.6
3.5Yards per rush6.5
18First downs20
5–⁠12Third downs6–⁠11
1–⁠2Fourth downs0–⁠0
1Turnovers2
4–⁠30Penalties4–⁠32
32:55Possession27:05
2Sacks (by defense)3

Efficiency

PurdueMichigan
44%Success rate50%
−0.10EPA per play0.15
0.86Explosiveness0.84
−0.11Rushing EPA0.31
0.27Passing EPA0.09
27%Passing-down success36%
−0.23First-down EPA0.12
−0.02Second-down EPA0.25
0.25Third-down EPA0.02
10%Havoc by its defense13%

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)

Michigan 89% to win. Elo’s favorite won.

The line

Michigan −21, over/under 48.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 Michigan 93%, Purdue 7%. CollegeFootballData.com’s estimate from the point spread.

Every drive

Michigan end zonePurdue end zoneQ1 PurduePunt, 7 playsQ1 MichiganPunt, 6 playsQ1 PurdueFumble, 7 playsQ1 MichiganPunt, 3 playsQ1 PurduePunt, 3 playsQ1 MichiganTouchdown, 2 playsQ1 PurdueTouchdown, 16 playsQ2 MichiganInterception, 12 playsQ2 PurduePunt, 3 playsQ2 MichiganTouchdown, 5 playsQ2 PurdueEnd of half, 1 playQ3 MichiganPunt, 3 playsQ3 PurdueField goal, 10 playsQ3 MichiganPunt, 7 playsQ3 PurduePunt, 3 playsQ3 MichiganFumble, 3 playsQ3 PurdueTurnover on downs, 7 playsQ4 MichiganTouchdown, 9 playsQ4 PurdueTouchdown, 9 playsQ4 MichiganEnd of game, 11 plays
Solid bars scored; an outline in the other team’s color marks points the defense scored. Michigan drives left to right, Purdue right to left.
  1. Q1 PurduePunt, 7 plays, 30 yards
  2. Q1 MichiganPunt, 6 plays, 20 yards
  3. Q1 PurdueFumble, 7 plays, 38 yards
  4. Q1 MichiganPunt, 3 plays, 4 yards
  5. Q1 PurduePunt, 3 plays, 4 yards
  6. Q1 MichiganTouchdown, 2 plays, 76 yards
  7. Q1 PurdueTouchdown, 16 plays, 72 yards
  8. Q2 MichiganInterception, 12 plays, 75 yards
  9. Q2 PurduePunt, 3 plays, 6 yards
  10. Q2 MichiganTouchdown, 5 plays, 29 yards
  11. Q2 PurdueEnd of half, 1 play, −1 yard
  12. Q3 MichiganPunt, 3 plays, 6 yards
  13. Q3 PurdueField goal, 10 plays, 35 yards
  14. Q3 MichiganPunt, 7 plays, 28 yards
  15. Q3 PurduePunt, 3 plays, 4 yards
  16. Q3 MichiganFumble, 3 plays, 70 yards
  17. Q3 PurdueTurnover on downs, 7 plays, 30 yards
  18. Q4 MichiganTouchdown, 9 plays, 47 yards
  19. Q4 PurdueTouchdown, 9 plays, 64 yards
  20. Q4 MichiganEnd of game, 11 plays, 63 yards

Play by play

1st quarter7 drives, then Michigan 7, Purdue 0
Purdue Punt, 7 plays
14:511st & 10 at own 35(15:00) #92 B.Sunderland kickoff 60 yards to the PUR05 #2 M.Jackson III return 21 yards to the PUR26 (#85 L.Forbes) PENALTY UOM Offside (#22 E.Dotson) 5 yards from PUR26 to PUR31
14:451st & 10 at own 31(14:53) No Huddle-Shotgun #15 R.Browne pass complete short right to #2 M.Jackson III caught at PUR27, for 3 yards to the PUR34 (#7 T.Metcalf; #25 M.Curtis)
14:092nd & 7 at own 34(14:21) No Huddle-Shotgun #15 R.Browne pass complete short middle to #0 N.Tuggle caught at PUR46, for 16 yards to the PUR50 (#6 B.Hillman; #20 J.Hill), 1ST DOWN
13:551st & 10 at the 50(13:59) No Huddle-Shotgun #24 M.Thomas rush middle for 6 yards gain to the UOM44 (#15 E.Hausmann)
13:052nd & 4 at opp 44(13:18) No Huddle-Shotgun #15 R.Browne pass complete short right to #0 N.Tuggle caught at UOM39, for 5 yards to the UOM39, End Of Play, 1ST DOWN
12:381st & 10 at opp 39(12:42) No Huddle-Shotgun #15 R.Browne pass incomplete short left to #22 A.Harris thrown to UOM39 QB hurried by #9 C.Brandt
12:322nd & 10 at opp 39(12:38) No Huddle-Shotgun #22 A.Harris rush left for 1 yard gain to the UOM38 (#9 C.Brandt)
11:583rd & 9 at opp 38(11:58) No Huddle-Shotgun #15 R.Browne pass incomplete deep middle to #17 R.Walker thrown to UOM10 PENALTY UOM Offside (#8 D.Moore) 5 yards from UOM38 to UOM33. NO PLAY
11:533rd & 4 at opp 33(11:58) No Huddle-Shotgun #15 R.Browne sacked for loss of 6 yards to the UOM39 (#8 D.Moore)
11:164th & 10 at opp 39(11:24) #38 J.McCallister punt 30 yards to the UOM09
Michigan Punt, 6 plays
11:081st & 10 at own 9(11:16) No Huddle-Shotgun #23 J.Marshall rush middle for 5 yards gain to the UOM14 (#5 C.Correa; #40 I.Jeffries)
10:342nd & 5 at own 14(10:43) No Huddle-Shotgun #19 B.Underwood pass complete short left to #4 A.Marsh caught at UOM10, for 0 yards to the UOM14 (#10 A.Sanford)
9:583rd & 5 at own 14(10:06) No Huddle-Shotgun #19 B.Underwood rush right for 11 yards gain to the UOM25 (#21 T.Ra-El), out of bounds, 1ST DOWN
9:321st & 10 at own 25(09:38) No Huddle-Shotgun #23 J.Marshall rush middle for 4 yards gain to the UOM29 (#58 B.Ishmail)
8:562nd & 6 at own 29(09:01) No Huddle-Shotgun #19 B.Underwood pass incomplete deep middle to #6 J.Browder thrown to UOM50
8:493rd & 6 at own 29(08:55) No Huddle-Shotgun #19 B.Underwood pass incomplete short right to #83 Z.Marshall thrown to UOM45
8:424th & 6 at own 29(08:48) #90 H.Hollenbeck punt 37 yards to the PUR34, out of bounds at PUR34
Purdue Fumble, 7 plays
8:301st & 10 at own 34(08:42) No Huddle-Shotgun #15 R.Browne pass complete short left to #22 A.Harris caught at PUR29, for 2 yards to the PUR36 (#6 B.Hillman; #20 J.Hill)
8:032nd & 8 at own 36(08:13) No Huddle-Shotgun #15 R.Browne pass complete short right to #2 M.Jackson III caught at PUR50, for 15 yards to the UOM49 (#25 M.Curtis), 1ST DOWN
7:331st & 10 at opp 49(07:41) No Huddle-Shotgun #15 R.Browne pass complete short middle to #13 E.Horton caught at UOM48, for 5 yards to the UOM44 (#10 Z.Berry)
7:052nd & 5 at opp 44(07:12) No Huddle-Shotgun #22 A.Harris rush middle for 2 yards gain to the UOM42 (#15 E.Hausmann)
6:303rd & 3 at opp 42(06:37) No Huddle-Shotgun #22 A.Harris rush right for 20 yards gain to the UOM22 (#10 Z.Berry), 1ST DOWN
5:571st & 10 at opp 22(06:02) No Huddle-Shotgun #22 A.Harris rush middle for 3 yards gain to the UOM19 (#17 E.Etta)
5:342nd & 7 at opp 19(05:34) No Huddle-Shotgun #15 R.Browne sacked for loss of 9 yards to the UOM28 (#8 D.Moore), fumble by #15 R.Browne recovered by UOM #26 R.Benny at UOM28, End Of Play. The previous play is under automatic review - “Fumble”. CALL OVERTURNED. (Original Play: (05:34) No Huddle-Shotgun #15 R.Browne pass incomplete short middle thrown to UOM22 QB hurried by #8 D.Moore)
Michigan Punt, 3 plays
5:201st & 10 at own 28(05:27) No Huddle-Shotgun #19 B.Underwood sacked for loss of 1 yard to the UOM27 (#5 C.Correa, #16 M.Powell)
4:462nd & 11 at own 27(04:51) No Huddle-Shotgun #23 J.Marshall rush middle for 5 yards gain to the UOM32 (#5 C.Correa)
4:003rd & 6 at own 32(04:06) No Huddle-Shotgun #19 B.Underwood pass incomplete deep right to #1 D.McCulley thrown to PUR47
3:534th & 6 at own 32(03:59) #90 H.Hollenbeck punt 50 yards to the PUR18 fair catch by #2 M.Jackson III at PUR18
Purdue Punt, 3 plays
3:471st & 10 at own 18(03:53) No Huddle-Shotgun #24 M.Thomas rush right for 2 yards gain to the PUR20 (#15 E.Hausmann; #7 T.Metcalf)
2:572nd & 8 at own 20(03:09) No Huddle-Shotgun #15 R.Browne pass complete short left to #24 M.Thomas caught at PUR13, for 6 yards loss to the PUR14 (#15 E.Hausmann)
2:223rd & 14 at own 14(02:26) No Huddle-Shotgun #24 M.Thomas rush middle for 8 yards gain to the PUR22 (#4 T.Guy)
1:434th & 6 at own 22(01:58) #38 J.McCallister punt 57 yards to the UOM21
Michigan Touchdown, 2 plays
1:381st & 10 at own 21(01:44) Shotgun #19 B.Underwood pass complete short right to #23 J.Marshall caught at UOM17, for 25 yards to the UOM46 (#16 M.Powell), out of bounds, 1ST DOWN
1:251st & 10 at own 46(01:34) No Huddle-Shotgun #23 J.Marshall rush left for 54 yards gain to the PUR00 TOUCHDOWN, clock 01:25, 1ST DOWN #96 D.Zvada kick attempt good (H: #90 H.Hollenbeck, LS: #45 G.Tarr)Michigan 7, Purdue 0
Purdue Touchdown, 16 plays
1:251st & 10 at own 35(01:25) #92 B.Sunderland kickoff 65 yards to the PUR00, Touchback
1:101st & 10 at own 25(01:23) No Huddle-Shotgun #15 R.Browne pass complete short left to #0 N.Tuggle caught at PUR30, for 6 yards to the PUR31 (#18 T.Bowles; #29 C.Taylor)
0:462nd & 4 at own 31(00:52) No Huddle-Shotgun #22 A.Harris rush middle for 4 yards gain to the PUR35 (#29 C.Taylor), 1ST DOWN
0:261st & 10 at own 35(00:26) No Huddle-Shotgun #22 A.Harris rush left for 5 yards gain to the PUR40 (#33 D.Nichols; #18 T.Bowles)
Q2 14:542nd & 5 at own 40(14:58) No Huddle-Shotgun #24 M.Thomas rush middle for 2 yards gain to the PUR42 (#15 E.Hausmann)
Q2 14:293rd & 3 at own 42(14:34) No Huddle-Shotgun #24 M.Thomas rush right for 8 yards gain to the PUR50 (#3 J.Mangham), 1ST DOWN
Q2 13:531st & 10 at the 50(14:04) No Huddle-Shotgun #15 R.Browne pass complete short right to #0 N.Tuggle caught at UOM45, for 7 yards to the UOM43 (#18 T.Bowles)
Q2 13:122nd & 3 at opp 43(13:16) No Huddle-Shotgun #24 M.Thomas rush middle for 4 yards gain to the UOM39 (#18 T.Bowles; #0 T.Williams), 1ST DOWN
Q2 12:381st & 10 at opp 39(12:38) No Huddle-Shotgun #15 R.Browne pass incomplete deep right to #22 A.Harris thrown to UOM09 PENALTY PUR Holding (#78 B.Coly) 10 yards from UOM39 to UOM49. NO PLAY
Q2 12:231st & 20 at opp 49(12:31) No Huddle-Shotgun #15 R.Browne pass complete short right to #13 E.Horton caught at UOM50, for 6 yards to the UOM43 (#20 J.Hill)
Q2 11:522nd & 14 at opp 43(11:58) No Huddle-Shotgun #22 A.Harris rush middle for 5 yards gain to the UOM38 (#25 M.Curtis)
Q2 11:103rd & 9 at opp 38(11:19) No Huddle-Shotgun #15 R.Browne pass complete short right to #13 E.Horton caught at UOM32, for 7 yards to the UOM31 (#25 M.Curtis)
Q2 10:244th & 2 at opp 31(10:32) No Huddle-Shotgun #15 R.Browne pass complete short right to #0 N.Tuggle caught at UOM28, for 4 yards to the UOM27 (#13 C.Anderson), 1ST DOWN
Q2 9:491st & 10 at opp 27(09:56) No Huddle-Shotgun #3 M.Singleton rush left for 5 yards gain to the UOM22 (#15 E.Hausmann; #8 D.Moore)
Q2 9:122nd & 5 at opp 22(09:17) No Huddle-Shotgun #3 M.Singleton rush middle for 13 yards gain to the UOM09 (#15 E.Hausmann), 1ST DOWN
Q2 8:321st & goal at opp 9(08:32) No Huddle-Shotgun #3 M.Singleton pass complete short left to #24 M.Thomas caught at UOM10, for 9 yards to the UOM00 TOUCHDOWN nullified by penalty, clock 08:29 PENALTY PUR Ineligible Downfield on Pass (#0 N.Tuggle) 5 yards from UOM09 to UOM14. NO PLAY
Q2 8:241st & goal at opp 14(08:29) No Huddle-Shotgun #22 A.Harris rush left for 6 yards gain to the UOM08 (#25 M.Curtis)
Q2 7:492nd & goal at opp 8(07:53) No Huddle-Shotgun #24 M.Thomas rush left for 1 yard loss to the UOM09 (#33 D.Nichols)
Q2 7:073rd & goal at opp 9(07:07) No Huddle-Shotgun #3 M.Singleton pass incomplete short right to #0 N.Tuggle thrown to UOM00 PENALTY UOM Offside declined UOM Pass Interference (#20 J.Hill) 7 yards from UOM09 to UOM02, 1ST DOWN. NO PLAY
Q2 6:551st & goal at opp 2(07:02) No Huddle-Shotgun #22 A.Harris rush middle for 2 yards gain to the UOM00 TOUCHDOWN, clock 06:55 #35 S.Porath kick attempt good (H: #38 J.McCallister, LS: #46 L.Raab)Tied at 7
2nd quarter4 drives, then Michigan 14, Purdue 7
Michigan Interception, 12 plays
6:491st & 10 at own 35(06:55) #93 S.Turner kickoff 65 yards to the UOM00 #4 A.Marsh return 20 yards to the UOM20 (#10 A.Sanford)
6:411st & 10 at own 20(06:49) No Huddle-Shotgun #23 J.Marshall rush left for 6 yards gain to the UOM26 (#21 T.Ra-El)
6:092nd & 4 at own 26(06:18) No Huddle-Shotgun #19 B.Underwood rush left for 5 yards gain to the UOM31 (#25 H.McLaurin), 1ST DOWN
5:471st & 10 at own 31(05:57) No Huddle-Shotgun #19 B.Underwood pass complete short right to #4 A.Marsh caught at PUR50, for 20 yards to the PUR49, End Of Play, 1ST DOWN
5:201st & 10 at opp 49(05:31) No Huddle-Shotgun #19 B.Underwood pass complete short left to #88 D.Tonielli caught at UOM48, for 4 yards to the PUR45 (#21 T.Ra-El)
4:512nd & 6 at opp 45(04:57) No Huddle-Shotgun #23 J.Marshall rush middle for 2 yards gain to the PUR43 (#9 M.Slusher)
4:093rd & 4 at opp 43(04:20) No Huddle-Shotgun #19 B.Underwood pass complete short right to #83 Z.Marshall caught at PUR39, for 5 yards to the PUR38 (#5 C.Correa), 1ST DOWN
3:391st & 10 at opp 38(03:46) No Huddle-Shotgun #23 J.Marshall rush left for 3 yards gain to the PUR35 (#10 A.Sanford; #6 S.Ellis)
3:052nd & 7 at opp 35(03:12) No Huddle-Shotgun #19 B.Underwood pass incomplete deep right to #1 D.McCulley thrown to PUR00
2:543rd & 7 at opp 35(03:05) No Huddle-Shotgun #19 B.Underwood rush right for 12 yards gain to the PUR23 (#1 S.Bradford), 1ST DOWN
2:371st & 10 at opp 23(02:42) No Huddle-Shotgun #27 J.Parker rush middle for 4 yards gain to the PUR19 (#21 T.Ra-El)
2:072nd & 6 at opp 19(02:10) No Huddle-Shotgun #19 B.Underwood pass incomplete short right to #17 M.Klein thrown to PUR04 QB hurried by #20 W.Berglund
1:593rd & 6 at opp 19(02:05) No Huddle-Shotgun #19 B.Underwood pass intercepted by #4 H.Hines at PUR05 QB hurried by #20 W.Berglund, End Of Play
Purdue Punt, 3 plays
1:531st & 10 at own 5(01:56) No Huddle-Shotgun #24 M.Thomas rush right for 3 yards gain to the PUR08 (#26 R.Benny; #4 T.Guy)
1:072nd & 7 at own 8(01:11) No Huddle-Shotgun #24 M.Thomas rush middle for 3 yards gain to the PUR11 (#15 E.Hausmann; #18 T.Bowles)
1:043rd & 4 at own 11(01:06) No Huddle-Shotgun #15 R.Browne pass incomplete short middle to #13 E.Horton thrown to PUR23 broken up by #10 Z.Berry QB hurried by #26 R.Benny
1:082nd & 7 at opp 8Timeout Michigan, clock 01:08
0:584th & 4 at own 11(00:58) #38 J.McCallister punt 21 yards to the PUR32, out of bounds at PUR32
Michigan Touchdown, 5 plays
0:531st & 10 at opp 32(00:58) No Huddle-Shotgun #19 B.Underwood pass incomplete short left to #0 S.Morgan thrown to PUR15
0:452nd & 10 at opp 32(00:51) No Huddle-Shotgun #23 J.Marshall rush middle for 9 yards gain to the PUR23 (#9 M.Slusher)
0:303rd & 1 at opp 23(00:35) No Huddle-Shotgun #19 B.Underwood pass complete short right to #17 M.Klein caught at PUR25, for 10 yards to the PUR13 (#21 T.Ra-El), 1ST DOWN
0:231st & 10 at opp 13(00:30) No Huddle-Shotgun #19 B.Underwood rush middle for 10 yards gain to the PUR03 (#9 M.Slusher), 1ST DOWN
0:303rd & 1 at opp 23Timeout Michigan, clock 00:30
0:171st & goal at opp 3(00:18) No Huddle-Shotgun #23 J.Marshall rush middle for 3 yards gain to the PUR00 TOUCHDOWN, clock 00:17 #96 D.Zvada kick attempt good (H: #90 H.Hollenbeck, LS: #45 G.Tarr)Michigan 14, Purdue 7
Purdue End of half, 1 play
0:141st & 10 at own 35(00:17) #92 B.Sunderland kickoff 63 yards to the PUR02 #2 M.Jackson III return 33 yards to the PUR35 (#92 B.Sunderland; #5 J.Oden), out of bounds
0:111st & 10 at own 35(00:11) Kneel down by #15 R.Browne at PUR34 for loss of 1 yard
3rd quarter6 drives, then Michigan 14, Purdue 10
Michigan Punt, 3 plays
14:541st & 10 at own 35(15:00) #93 S.Turner kickoff 65 yards to the UOM00 #4 A.Marsh return 14 yards to the UOM14 (#10 A.Sanford)
14:461st & 10 at own 14(14:54) No Huddle-Shotgun #23 J.Marshall rush middle for 1 yard gain to the UOM15 (#97 J.Harkless)
14:102nd & 9 at own 15(14:17) No Huddle-Shotgun #19 B.Underwood pass complete short right to #1 D.McCulley caught at UOM19, for 5 yards to the UOM20 (#0 T.Grimes)
13:223rd & 4 at own 20(13:42) No Huddle-Shotgun #19 B.Underwood pass incomplete short left to #6 J.Browder thrown to UOM25 broken up by #4 H.Hines
13:204th & 4 at own 20(13:28) #90 H.Hollenbeck punt 53 yards to the PUR27 #2 M.Jackson III return 6 yards to the PUR33 (#22 E.Dotson)
Purdue Field goal, 10 plays
13:061st & 10 at own 33(13:18) No Huddle-Shotgun #15 R.Browne pass complete short right to #2 M.Jackson III caught at UOM48, for 19 yards to the UOM48, End Of Play, 1ST DOWN
12:501st & 10 at opp 48(12:54) No Huddle-Shotgun #24 M.Thomas rush middle for 3 yards gain to the UOM45 (#4 T.Guy)
12:182nd & 7 at opp 45(12:27) No Huddle-Shotgun #15 R.Browne pass complete short right to #13 E.Horton caught at UOM45, for 10 yards to the UOM35 (#26 R.Benny), 1ST DOWN
11:431st & 10 at opp 35(11:49) No Huddle-Shotgun #15 R.Browne rush left for 2 yards gain to the UOM33 (#15 E.Hausmann), out of bounds
11:122nd & 8 at opp 33(11:14) No Huddle-Shotgun #24 M.Thomas rush middle for 1 yard loss to the UOM34 (#0 T.Williams)
10:293rd & 9 at opp 34(10:38) No Huddle-Shotgun #15 R.Browne rush left for 10 yards gain to the UOM24 (#15 E.Hausmann), out of bounds, 1ST DOWN
9:551st & 10 at opp 24(09:59) No Huddle-Shotgun #15 R.Browne pass incomplete short left to #22 A.Harris thrown to UOM18
9:492nd & 10 at opp 24(09:53) No Huddle-Shotgun #22 A.Harris rush middle for 0 yards to the UOM24 (#0 T.Williams; #12 N.Owusu-Boateng)
9:053rd & 10 at opp 24(09:10) No Huddle-Shotgun #15 R.Browne pass incomplete short left thrown to UOM10 QB hurried by #4 T.Guy PENALTY PUR Intentional Grounding (#15 R.Browne)
9:004th & 18 at opp 32(09:05) #35 S.Porath field goal attempt from 50 yards GOOD (H: #38 J.McCallister, LS: #46 L.Raab), clock 09:00Michigan 14, Purdue 10
Michigan Punt, 7 plays
9:001st & 10 at own 35(09:00) #93 S.Turner kickoff 65 yards to the UOM00, Touchback
8:531st & 10 at own 25(09:00) No Huddle-Shotgun #23 J.Marshall rush middle for 1 yard gain to the UOM26 (#8 C.Madden)
8:172nd & 9 at own 26(08:27) No Huddle-Shotgun #19 B.Underwood pass complete short right to #9 C.Goodwin caught at UOM38, for 12 yards to the UOM38 (#0 T.Grimes), 1ST DOWN
8:001st & 10 at own 38(08:06) No Huddle-Shotgun #19 B.Underwood pass complete short left to #4 A.Marsh caught at UOM36, for 8 yards to the UOM46 (#9 M.Slusher)
7:282nd & 2 at own 46(07:36) No Huddle-Shotgun #23 J.Marshall rush middle for 7 yards gain to the PUR47 (#91 C.Nunnally), 1ST DOWN
6:521st & 10 at opp 47(07:01) No Huddle-Shotgun #19 B.Underwood pass complete short right to #4 A.Marsh caught at UOM50, for 3 yards loss to the PUR50 (#1 S.Bradford)
6:152nd & 13 at the 50(06:20) No Huddle-Shotgun #23 J.Marshall rush right for 3 yards gain to the PUR47 (#9 M.Slusher)
5:423rd & 10 at opp 47(05:46) No Huddle-Shotgun #19 B.Underwood pass incomplete short middle to #4 A.Marsh thrown to PUR33
5:304th & 10 at opp 47(05:42) #90 H.Hollenbeck punt 29 yards to the PUR18 blocked by #20 W.Berglund, out of bounds at PUR18
Purdue Punt, 3 plays
5:261st & 10 at own 18(05:28) No Huddle-Shotgun #15 R.Browne pass incomplete short right to #87 C.Earls thrown to PUR21
5:242nd & 10 at own 18(05:27) No Huddle-Shotgun #15 R.Browne pass incomplete short left to #87 C.Earls thrown to PUR21 QB hurried by #25 M.Curtis
5:143rd & 10 at own 18(05:22) No Huddle-Shotgun #15 R.Browne rush middle for 4 yards gain to the PUR22 (#33 D.Nichols)
4:414th & 6 at own 22(04:48) #38 J.McCallister punt 46 yards to the UOM32 #0 S.Morgan return for loss of 2 yards to the UOM30 (#21 T.Ra-El)
Michigan Fumble, 3 plays
4:311st & 10 at own 30(04:41) No Huddle-Shotgun #19 B.Underwood pass complete short right to #17 M.Klein caught at UOM28, for 6 yards to the UOM36 (#4 H.Hines) PENALTY PUR UNR: Unnecessary Roughness (#21 T.Ra-El) 15 yards from UOM36 to PUR49, 1ST DOWN
4:091st & 10 at opp 49(04:12) No Huddle-Shotgun #19 B.Underwood pass complete deep right to #83 Z.Marshall caught at PUR23, for 37 yards to the PUR12 (#15 V.Cobb), 1ST DOWN
3:421st & 10 at opp 12(03:47) No Huddle-Shotgun #19 B.Underwood rush right for 12 yards gain to the PUR00 fumbled by #19 B.Underwood at PUR04 forced by #91 C.Nunnally, Touchback
Purdue Turnover on downs, 7 plays
3:341st & 10 at own 20(03:40) No Huddle-Shotgun #24 M.Thomas rush left for 5 yards gain to the PUR25 (#18 T.Bowles)
3:032nd & 5 at own 25(03:11) No Huddle-Shotgun #15 R.Browne pass complete short right to #2 M.Jackson III caught at PUR24, for 0 yards to the PUR25, End Of Play
2:223rd & 5 at own 25(02:35) No Huddle-Shotgun #15 R.Browne pass complete short left to #2 M.Jackson III caught at PUR35, for 16 yards to the PUR41 QB hurried by #95 T.Pierce (#25 M.Curtis), 1ST DOWN
1:421st & 10 at own 41(01:52) No Huddle-Shotgun #3 M.Singleton pass complete short left to #2 M.Jackson III caught at PUR39, for 5 yards to the PUR46 (#26 R.Benny)
1:082nd & 5 at own 46(01:13) No Huddle-Shotgun #3 M.Singleton rush middle for 4 yards gain to the PUR50 (#9 C.Brandt; #26 R.Benny)
0:293rd & 1 at the 50(00:29) No Huddle-Shotgun #3 M.Singleton rush middle for 1 yard loss to the PUR49 (#26 R.Benny; #3 J.Mangham)
Q4 14:544th & 2 at own 49(14:58) No Huddle-Shotgun #3 M.Singleton rush middle for 1 yard gain to the PUR50 (#3 J.Mangham; #29 C.Taylor), TURNOVER ON DOWNS
4th quarter3 drives, then Michigan 21, Purdue 16
Michigan Touchdown, 9 plays
14:471st & 10 at the 50(14:49) No Huddle-Shotgun #23 J.Marshall rush middle for 3 yards gain to the PUR47 (#1 S.Bradford; #91 C.Nunnally)
14:142nd & 7 at opp 47(14:21) No Huddle-Shotgun #23 J.Marshall rush left for 12 yards gain to the PUR35 (#21 T.Ra-El; #4 H.Hines), 1ST DOWN
13:381st & 10 at opp 35(13:43) No Huddle-Shotgun #24 B.Kuzdzal rush middle for 4 yards gain to the PUR31 (#16 M.Powell)
12:552nd & 6 at opp 31(13:13) No Huddle-Shotgun #19 B.Underwood pass complete short right to #83 Z.Marshall caught at PUR28, for 16 yards to the PUR15 (#18 D.Kennedy; #9 M.Slusher), 1ST DOWN
12:291st & 10 at opp 15(12:33) No Huddle-Shotgun #24 B.Kuzdzal rush middle for 5 yards gain to the PUR10 (#21 T.Ra-El; #40 I.Jeffries)
11:592nd & 5 at opp 10(12:03) No Huddle-Shotgun #23 J.Marshall rush middle for 3 yards gain to the PUR07 (#21 T.Ra-El)
11:243rd & 2 at opp 7(11:30) No Huddle-Shotgun #23 J.Marshall rush middle for 3 yards gain to the PUR04 (#5 C.Correa), 1ST DOWN
10:421st & goal at opp 4(10:48) Shotgun #19 B.Underwood sacked for loss of 5 yards to the PUR09 (#16 M.Powell)
10:032nd & goal at opp 9(10:09) Shotgun #23 J.Marshall rush middle for 9 yards gain to the PUR00 TOUCHDOWN, clock 10:03 #96 D.Zvada kick attempt good (H: #90 H.Hollenbeck, LS: #45 G.Tarr)Michigan 21, Purdue 10
Purdue Touchdown, 9 plays
9:561st & 10 at own 35(10:03) #92 B.Sunderland kickoff 58 yards to the PUR07 #2 M.Jackson III return 26 yards to the PUR33 (#5 J.Oden)
9:491st & 10 at own 33(09:55) No Huddle-Shotgun #24 M.Thomas rush right for 9 yards gain to the PUR42 (#15 E.Hausmann)
9:242nd & 1 at own 42(09:29) No Huddle-Shotgun #24 M.Thomas rush middle for 3 yards gain to the PUR45 (#6 B.Hillman; #12 N.Owusu-Boateng), 1ST DOWN
8:471st & 10 at own 45(08:58) No Huddle-Shotgun #15 R.Browne pass complete short right to #87 C.Earls caught at PUR50, for 7 yards to the UOM48 (#10 Z.Berry)
8:242nd & 3 at opp 48(08:31) No Huddle-Shotgun #24 M.Thomas rush middle for 14 yards gain to the UOM34 (#7 T.Metcalf), 1ST DOWN
7:561st & 10 at opp 34(07:56) No Huddle-Shotgun #15 R.Browne pass incomplete deep left to #10 J.Watson thrown to UOM10 PENALTY UOM Pass Interference (#7 T.Metcalf) 15 yards from UOM34 to UOM19, 1ST DOWN. NO PLAY
7:421st & 10 at opp 19(07:51) No Huddle-Shotgun #15 R.Browne pass complete short right to #13 E.Horton caught at UOM20, for 6 yards to the UOM13 (#3 J.Mangham)
7:172nd & 4 at opp 13(07:22) No Huddle-Shotgun #22 A.Harris rush middle for 6 yards gain to the UOM07 (#26 R.Benny), 1ST DOWN
6:361st & goal at opp 7(06:42) No Huddle-Shotgun #3 M.Singleton rush right for 2 yards gain to the UOM05 (#10 Z.Berry)
6:072nd & goal at opp 5(06:11) No Huddle-Shotgun #3 M.Singleton pass incomplete short left to #0 N.Tuggle thrown to UOM00
6:003rd & goal at opp 5Malachi Thomas 5 Yd pass from Ryan Browne (Two-Point Pass Conversion Failed)Michigan 21, Purdue 16
Michigan End of game, 11 plays
6:001st & 10 at own 35(06:00) #93 S.Turner kickoff 65 yards to the UOM00 fair catch by #4 A.Marsh at UOM00
5:511st & 10 at own 25(05:58) No Huddle-Shotgun #23 J.Marshall rush middle for 5 yards gain to the UOM30 (#25 H.McLaurin)
5:082nd & 5 at own 30(05:14) No Huddle-Shotgun #23 J.Marshall rush left for 24 yards gain to the PUR46 (#21 T.Ra-El), out of bounds, 1ST DOWN
4:371st & 10 at opp 46(04:43) No Huddle-Shotgun #24 B.Kuzdzal rush right for 7 yards gain to the PUR39 (#21 T.Ra-El)
3:542nd & 3 at opp 39(04:00) No Huddle-Shotgun #24 B.Kuzdzal rush middle for 7 yards gain to the PUR32 (#25 H.McLaurin; #91 C.Nunnally), 1ST DOWN
3:461st & 10 at opp 32(03:48) No Huddle-Shotgun #23 J.Marshall rush middle for 3 yards gain to the PUR29 (#21 T.Ra-El)
3:512nd & 3 at own 39Timeout Purdue, clock 03:51
3:392nd & 7 at opp 29(03:44) No Huddle-Shotgun #23 J.Marshall rush left for 3 yards gain to the PUR26 (#25 H.McLaurin)
3:461st & 10 at own 32Timeout Purdue, clock 03:46
2:523rd & 4 at opp 26(02:59) No Huddle-Shotgun #23 J.Marshall rush middle for 5 yards gain to the PUR21 (#5 C.Correa), 1ST DOWN
2:341st & 10 at opp 21(02:44) No Huddle-Shotgun #23 J.Marshall rush right for 8 yards gain to the PUR13 (#21 T.Ra-El)
2:443rd & 4 at own 26Timeout Purdue, clock 02:44
1:552nd & 2 at opp 13(01:58) No Huddle-Shotgun #23 J.Marshall rush middle for 4 yards gain to the PUR09 (#16 M.Powell), 1ST DOWN
2:001st & 10 at opp 21Timeout , clock 02:00
1:181st & goal at opp 9(01:23) Kneel down by #19 B.Underwood at PUR10 for loss of 1 yard
0:402nd & goal at opp 10(00:40) Kneel down by #19 B.Underwood at PUR12 for loss of 2 yards

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.

Michigan leads 47–⁠14 in 61 meetings.

Recent meetings
2025Michigan 21, Purdue 16
2023Michigan 41, Purdue 13
2022Michigan 43, Purdue 22Big Ten Championship Game
2017Michigan 28, Purdue 10
2012Michigan 44, Purdue 13
2011Michigan 36, Purdue 14

Around this game