EVANSTON, Ill. – The Purdue football team continued its run game dominance with 303 yards on the ground, but it was not enough as the Northwestern Wildcats withstood a late comeback attempt from the Boilermakers, winning 23-15 on Saturday afternoon at Ryan Field.

On a day without starting quarterback Hudson Card, the Purdue defense stepped up early and totaled five sacks in the first half, the team’s most in a half since the Eastern Michigan game on Sept. 8, 2018. Freshman standout Dillon Thieneman led the way with 10 tackles, six solos, and an interception. The Boilermakers held Northwestern to 2.9 yards per carry on the ground, allowing 99 yards on 34 carries.

On the other side of the ball, Tyrone Tracy Jr. electrified the box score with 266 all-purpose yards, the most by a Purdue player since Rondale Moore (Sept. 7, 2019 vs. Vanderbilt). The Boilermakers finished with 303 total rushing yards, their second highest total of the season. The team has eclipsed 300 rushing yards in back-to-back games, the first time Purdue has had multiple 300-yard rushing games in a season since 2002.

Bennett Meredith made his first career start at quarterback and finished 5-of-7 passing for 36 yards, but true freshman Ryan Browne ended up with the bulk of the work in his first collegiate action. He finished the day 12-of-16 through the air for 104 yards, also rushing 21 times for 85 yards.

Devin Mockobee added 98 all-purpose yards and a touchdown, rushing for 54 and recording three receptions for a team-high 44 yards.

After being held scoreless in the first half, the Purdue offense found its footing midway through the third quarter on a 20-yard rushing score from Tracy to decrease the deficit to 9-7. Tracy’s score marked the longest rushing touchdown of the season for the Boilermakers.

Two scores from Northwestern put Purdue in a 23-7 hole midway through the fourth quarter, but the tides began to turn when Thieneman recorded his fourth interception of the season on a deep pass from Northwestern quarterback Ben Bryant.

Purdue took advantage of the momentum-shifting pick and marched down the field on seven plays and 77 yards, closing the gap with a two-yard rushing touchdown from Mockobee on fourth-and-goal. The score marked Mockobee’s 15th career rushing touchdown, moving him into a tie for 14th all-time at Purdue. Deion Burks used his speed to get to the outside and convert a two-point try to make it a one-score game with a little over three minutes to play.

The defense did its part in forcing a quick three-and-out, giving the Boilermakers a chance to tie the game with just under two minutes on the clock. Browne led the offense down to Northwestern territory before a costly interception sealed Purdue’s fate.

Tracy led the way with 16 carries for a career-high 160 yards and a touchdown, averaging 10 yards per attempt.

Khordae Sydnor (2.0) and Mo Omonode (1.5) finished with season highs in sacks, while Yanni Karlaftis and Kydran Jenkins also found themselves in the sack column. Sydnor’s 2.5 tackles-for-loss were the most in his career.

The Purdue defense allowed just five third down conversions on 14 tries from the Wildcats, but senior running back Cam Porter made the difference with his two rushing touchdowns on 17 carries and 95 yards.

Bryant finished 13-of-24 passing for 230 yards with one touchdown and one interception.

• The Boilermakers gained 303 yards on the ground, averaging 5.6 yards per carry.
• It was the second straight game the Boilers have gone over 300 rushing yards, producing two 300-yard rushing games for the first time since 2002. It is just the 11th time Purdue has run for over 300 yards since 1996.
• Tyrone Tracy Jr. racked up a career-high 160 yards on 16 carries for his third 100-yard rushing game of the season. He ran for a career-long 62 yard scamper late in the fourth quarter to set the Boilers up inside the five.
• Devin Mockobee led the team with 44 receiving yards on three receptions and also had 54 yards and a touchdown in the rushing game.
• True freshman quarterback Ryan Browne had 85 yards on 21 carries and completed 75% (12-of-16) of his passes for 104 yards in his first ever collegiate action.
• The Boilermakers amassed five sacks in the first half, their most in a half since totaling five in the second half vs. Eastern Michigan on Sept. 8, 2018.
• The game was the third time Purdue has totaled five-or-more sacks in a game this season, the most games with five-plus sacks since 2007.

The Boilermakers will finish the season at Ross-Ade Stadium in a battle with Indiana for the Old Oaken Bucket on Saturday, Nov. 25, a noon kickoff on Big Ten Network.