Data Driven: 2025 Offense
Each week, GoldandBlack.com looks at Pro Football Focus analytics and data following Purdue football games. Now, with the season in the books, we will take a look at what PFF can tell us about the 2025 Boilermakers.
(Editor’s note: PFF data is just one organization’s interpretation of the happenings on the field. It is not to be taken as gospel).

Quarterbacks
| Quarterback | Season-long snap count | Number of dropbacks |
| Ryan Browne | 664 | 388 |
| Malachi Singleton | 152 | 71 |
In 2025, Browne became the first Purdue quarterback since David Blough in 2016 to start all 12 games in a season. But, it wasn’t always smooth sailing.
For the season, Browne graded out slightly better than Singleton, both overall and specifically in the passing game. It came interestingly, though. Browne’s first six games all graded higher individually than his last six games of the season did. Two possible turning points: Browne’s costly “pick-six” in the fourth quarter of Purdue’s sixth game (the loss at Minnesota) and Browne leaving the Northwestern game early with a left shoulder injury (Purdue’s seventh game).
Singleton logged more than five dropbacks just twice: the losses at Northwestern and Washington. In those games, he turned in average grades.
A common theme for Purdue’s offense: too many turnovers, not enough points. This shows in PFF’s “big-time throw” and “turnover-worthy plays” counts. For Browne: 13 “big-time throws” to 16 “turnover-worthy plays.” Singleton: two “big-time throws,” four “turnover-worthy plays.”
For the season, Browne was pressured on 128 of his 388 dropbacks (33%). Despite that, he only wound up taking 16 sacks, six of which came against USC. 25 of his passes resulted in drops.
Browne graded nearly identically, a solid but less-than-spectacular grade, at different levels of the defense. 17% of his passes of 20+ yards were deemed “big-time throws,” and eight of his 110 passes between 10-19 yards were categorized as “turnover-worthy.”
As for Singleton, he delivered his best grade when throwing 20+ yards downfield. He had a pretty even split of passes based on depth, but two of his 19 attempts 0-9 yards downfield earned the “turnover-worthy” tag.
RUNNING BACKS
| Running back | Season-long snap count | Rushing attempts | Targets in pass game |
| Devin Mockobee | 357 | 125 | 19 |
| Antonio Harris | 214 | 69 | 19 |
| Malachi Thomas | 198 | 53 | 13 |
| Jaron Thomas | 19 | 2 | 1 |
| Jaheim Merriweather | 12 | 2 | 0 |
For the first eight games, Mockobee carried the vast majority of the load for Purdue at the running back spot. And, he largely delivered, becoming the first Boilermaker in history to lead the team in rushing in four consecutive seasons.
Mockobee graded as Purdue’s best running back, but Purdue tailbacks graded fairly well individually. The vast majority of Purdue’s rushing yards (1,081 of 1,606) came after contact, reflecting both a lack of initial burst from the running backs and the offensive line’s inability to generate a push at the point of attack.
Of Purdue’s 356 rushing attempts, only 35 of those came as scrambles by the quarterback. So, of the 321 designed rushing attempts, only 15 of them turned into explosive runs of 15+ yards.
Mockobee led Purdue, forcing 26 missed tackles during the season. The rest of the running backs combined for just 15. They called him “Crazy Legs” for a reason, after all.
Purdue’s overall run-game grades remained relatively consistent throughout the season, but the loss to Indiana was the worst by a significant margin.
As Harris looks for a bigger role in 2026, improving as a pass blocker will be paramount. He really struggled in that area, whereas veterans Mockobee and Thomas turned in quality grades.
WIDE RECEIVERS
| Wide receiver | Season-long snap count | Targets |
| Nitro Tuggle | 667 | 70 |
| Michael Jackson III | 627 | 78 |
| EJ Horton Jr. | 445 | 49 |
| Corey Smith | 269 | 30 |
| Jesse Watson | 208 | 26 |
| Arhmad Branch | 171 | 25 |
| Chauncey Magwood | 28 | 2 |
| Tra’Mar Harris | 13 | 2 |
| Jalil Hall | 5 | 1 |
It matches the eye test. Purdue’s wide receivers simply did not grade well enough in 2025.
Early on, it became clear that Branch fell out of favor with the Purdue coaching staff. All but 27 of his snaps came in the first half of the season, and he played just four snaps in the month of November.
Purdue settled into a trio of Jackson, Tuggle and Horton. Jackson turned in the best grade of the bunch, but it was far from spectacular. He excelled in one key area, though: his drop rating. Jackson dropped just two passes on his team-high 78 targets.
Top 10
- 1New
Big 12 Commissioner
Slams Notre Dame AD's reaction
- 2
Notre Dame AD
Doubles down on ACC damage to ND
- 3Trending
Pre-NIL exposed
Ed Orgeron opens up
- 4Hot
Ed Orgeron
On Lane Kiffin, return to LSU
- 5
Kendal Briles
Hired as South Carolina OC
Get the Daily On3 Newsletter in your inbox every morning
By clicking "Subscribe to Newsletter", I agree to On3's Privacy Notice, Terms, and use of my personal information described therein.
The same can’t be said for all of Purdue’s wideouts, however. Tuggle, Smith and Watson all finished the season with ugly numbers in the drop category. Tuggle dropped eight passes on 70 targets, while Smith dropped four of his 30 chances. Watson saw 26 targets and dropped five of them.
None of Purdue’s receivers stood out in terms of yards after the catch. Of the wide receivers, Jackson posted the most, but even he averaged less than four yards after the catch.
Notably, Jackson delivered a terrific grade on routes 10-19 yards downfield. Similarly, Tuggle was elite on routes 20+ yards past the line of scrimmage.
TIGHT ENDS
| Tight end | Season-long snap count | Targets |
| Christian Earls | 287 | 4 |
| Christian Moore | 236 | 3 |
| Rico Walker | 146 | 13 |
| George Burhenn | 138 | 11 |
| Luca Puccinelli | 25 | 5 |
As one would expect, Burhenn finished the season with the best grade among Purdue tight ends. Once his injury at Notre Dame took him off the field for the rest of the season, the tight end position faded into the darkness.
Moore and Earls were both primarily blockers. Just 43 of Moore’s 236 snaps saw him run a route, and Earls blocked on 180 of his 287 snaps. Despite this, neither of them graded very well as run blockers. Moore did fare decently in pass protection.
Once Burhenn went out, Walker began to get action as a pass-catcher. But, he did not grade particularly well. PFF charged him with one drop. Anecdotally, it felt like more than just one.
OFFENSIVE LINE
| Offensive lineman | Position | Season-long snap count |
| Joey Tanona | LT | 793 |
| Bradyn Joiner | C | 791 |
| Bakyne Coly | RT | 784 |
| Jalen St. John | G | 574 |
| Ethan Trent | RG | 544 |
| Hank Purvis | G | 496 |
| Jude McCoskey | T | 48 |
| Giordano Vaccaro | C | 23 |
| John Randle Jr. | T | 23 |
| Drew Woodruff | G | 12 |
| Marques Easley | T | 10 |
| Max Parrott | G | 1 |
As one would expect, Purdue’s offensive line struggled according to PFF. Among the regular contributors, Hank Purvis and Bradyn Joiner topped the charts.
Purvis joined the starting unit in October, taking over for Ethan Trent. And, he performed well. He fared better in pass protection than run blocking. The same can be said for Joiner, who moved to center after playing left guard at Auburn. Two years of eligibility remain for both players, who look like building blocks on the interior of the o-line.
At the tackle spots, Tanona graded out better than Coly, matching the eye test. Tanona finished with a stronger pass-blocking grade, but he committed 10 penalties. There were some really rough game grades on Coly’s final scorecard. He allowed 40 pressures on the season.
Ethan Trent delivered average-at-best scores, though he did turn in some decent pass protection games.
Most of Jude McCoskey’s action came as an extra blocker in short-yardage run situations. He’s a big body.
It’s interesting to see Marques Easley with such limited action. A highly-touted recruit, he transferred in after one season at Georgia. But, in his first action of the season, he was ejected for targeting in the second half against Indiana. Easley will sit out in the first half of the 2026 opener due to the ejection.























