EPA = expected points added per play. Compared with every FBS WR/TE who qualifies
Computed from every play, garbage time excluded. FBS rank among players with enough volume
| Receiving | Value | FBS rank |
|---|---|---|
| Targets | 68 | — |
| Target share | 38.6% | 1st / 534 |
| Catch rate | 55.9% | 421st / 534 |
| Success rate per target | 51.5% | 206th / 534 |
| Yards per target | 8.8 | 199th / 534 |
| Explosive catches | 10.3% | 292nd / 534 |
| Deep-target rate | 22.1% | — |
| 3rd-down targets | 13 | — |
| Red-zone targets | 14 | — |
Where Duff's plays went: throw and catch spots, air yards and yards after the catch, read from the play-by-play
2025 season. ESPN's play-by-play only has throw and catch spots for part of 2025 (5 of Duff’s games here), so treat the maps as a sample.
3 seasons since 2014 · box-score totals, snap share estimated from play-by-play
| Season | Team | G | Snaps | Rec | Rec yds | Rec TD | Tgt share |
|---|---|---|---|---|---|---|---|
| 2026 so far | Rutgers#94 · 2-6 | 7 | 79% | 45 | 774 | 9 | 38.6% |
| 2025 | Rutgers#65 · 5-7 | 12 | 81% | 60 | 1084 | 7 | 24.2% |
| 2024 | Rutgers#52 · 7-6 | 11 | 47% | 27 | 425 | 1 | 7.9% |
Past seasons are summed from ESPN box scores; success rates and snap shares come from the play-by-play. KJ Duff's team rank is that season's final TDC rank. A dash means the stat wasn't recorded.
KJ Duff's box score, game by game, from ESPN, with a 0–10 game score for each (hover it for how it works). Click a result for the full game
| Receiving | ||||||||
|---|---|---|---|---|---|---|---|---|
| Wk | Opponent | Result | Game score | Rec | Yds | Y/R | TD | Long |
| 1 | L 21–37 | 10.0 | 9 | 196 | 21.8 | 3 | 78 | |
| 2 | @ | L 21–28 | 9.4 | 8 | 137 | 17.1 | 2 | 60 |
| 3 | L 35–42 | 8.0 | 7 | 86 | 12.3 | 1 | 20 | |
| 4 | W 58–7 | 8.8 | 5 | 131 | 26.2 | 1 | 77 | |
| 5 | L 15–47 | 7.3 | 4 | 78 | 19.5 | 0 | 41 | |
| 7 | @ | W 37–30 | 8.9 | 9 | 113 | 12.6 | 2 | 26 |
| 8 | @ | L 14–42 | 6.0 | 3 | 33 | 11.0 | 0 | 21 |
| 9 | L 21–28 | — | no stats recorded | |||||
| 2026 · 7 games | 8.3 | 45 | 774 | 17.2 | 9 | 78 | ||
FBS rank among qualifying players
| Receiving | 2026 | FBS rank |
|---|---|---|
| Receptions | 45 | 30th / 2089 |
| Yards | 774 | 13th / 2074 |
| Yards / catch | 17.2 | 42nd / 460 |
| Touchdowns | 9 | 5th / 914 |
| Long | 78 | — |
Estimated snaps from a model trained on real NFL snap counts. Ranges in brackets are where the real number lands 80% of the time: wide for a single game, tighter over the season. How it works
| Game | Start | Team plays | Est. snaps | Plays involved | Penalties | Snap share |
|---|---|---|---|---|---|---|
| Wk 1 · Massachusetts | ✓ WR | 62 | ~56 (37–62) | 16 | 2 | 90% |
| Wk 2 · Boston College | ✓ WR | 68 | ~62 (41–68) | 11 | · | 91% |
| Wk 3 · USC | ✓ WR | 69 | ~60 (39–69) | 12 | · | 87% |
| Wk 4 · Howard | ✓ WR | 72 | ~57 (37–69) | 8 | · | 79% |
| Wk 5 · Indiana | ✓ WR | 55 | ~45 (30–55) | 7 | · | 82% |
| Wk 7 · Maryland | — | 74 | ~68 (45–74) | 16 | 1 | 92% |
| Wk 8 · Northwestern | ✓ WR | 66 | ~53 (35–65) | 9 | 1 | 80% |
| Season | 6 GS | 506 | 401 (336–467) | 79 | 4 | 79% |
13 WRs on the Rutgers roster, ordered by rec
| # | Player | Pos | Class | Rec | Yds | TD | Tgt share | EPA/play |
|---|---|---|---|---|---|---|---|---|
| 8 | KJ Duff | WR | JR | 45 | 774 | 9 | 36% | +0.76 |
| 4 | Jourdin Houston | WR | SO | 18 | 264 | 1 | 14% | +0.40 |
| 0 | Dyzier Carter | WR | FR | 11 | 151 | 0 | 12% | +0.56 |
| 2 | Ben Black III | WR | JR | 10 | 195 | 2 | 8% | +1.01 |
| 5 | Vernon Allen III | WR | SO | 5 | 72 | 2 | 5% | +1.32 |
| 13 | Elias Coke | WR | FR | 3 | 29 | 1 | 6% | -0.05 |
| 7 | Dylan Braithwaite | WR | SR | — | — | — | — | — |
| 14 | Sah'nye Degraffenreidt | WR | SO | — | — | — | — | — |
| 25 | Trent Osborn | WR | JR | — | — | — | — | — |
| 39 | Salomon Ealey | WR | SO | — | — | — | — | — |
| 83 | Dino Kaliakmanis | WR | SR | — | — | — | — | — |
| 87 | Justice Hurt | WR | SR | — | — | — | — | — |
| Quentin Redding | WR | — | — | — | — | — |
Stats, EPA and usage come from CollegeFootballData.com and refresh daily. FBS ranks only count players with enough volume for the stat to mean something. Qualifying for EPA takes 4+ plays per team game. Rutgers depth chart →