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 | 35 | — |
| Target share | 18.1% | 209th / 524 |
| Catch rate | 60.0% | 345th / 524 |
| Success rate per target | 48.6% | 258th / 524 |
| Yards per target | 7.2 | 326th / 524 |
| Explosive catches | 5.7% | 422nd / 524 |
| Deep-target rate | 14.3% | — |
| 3rd-down targets | 6 | — |
| Red-zone targets | 4 | — |
Where Jr.'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 (2 of Jr.’s games here), so treat the maps as a sample.
2 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 | Michigan State#63 · 2-5 | 7 | 69% | 21 | 253 | 1 | 18.1% |
| 2025 | Michigan State#83 · 4-8 | 3 | 17% | 5 | 119 | 1 | 6.1% |
Past seasons are summed from ESPN box scores; success rates and snap shares come from the play-by-play. Rodney Bullard Jr.'s team rank is that season's final TDC rank. A dash means the stat wasn't recorded.
Rodney Bullard Jr.'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 | W 30–20 | 8.1 | 7 | 90 | 12.9 | 1 | 26 | |
| 2 | W 35–7 | 5.7 | 3 | 26 | 8.7 | 0 | 17 | |
| 3 | @ | L 10–27 | 6.9 | 2 | 66 | 33.0 | 0 | 53 |
| 4 | L 13–31 | 4.8 | 2 | 11 | 5.5 | 0 | 13 | |
| 5 | @ | L 3–31 | 4.8 | 1 | 13 | 13.0 | 0 | 13 |
| 6 | L 37–38 | 6.4 | 4 | 36 | 9.0 | 0 | 15 | |
| 7 | L 21–24 | 3.0 | 2 | 11 | 5.5 | 0 | 10 | |
| 2026 · 7 games | 5.7 | 21 | 253 | 12.0 | 1 | 53 | ||
FBS rank among qualifying players
| Rushing | 2026 | FBS rank |
|---|---|---|
| Carries | 2 | — |
| Yards | 4 | 1182nd / 1457 |
| Yards / carry | 2 | — |
| Touchdowns | 0 | — |
| Long | 11 | — |
| Receiving | 2026 | FBS rank |
|---|---|---|
| Receptions | 21 | 202nd / 1995 |
| Yards | 253 | 242nd / 1981 |
| Yards / catch | 12 | 251st / 461 |
| Touchdowns | 1 | 346th / 826 |
| Long | 53 | — |
| Fumbles | 2026 | FBS rank |
|---|---|---|
| Fumbles | 1 | — |
| Lost | 0 | — |
| Recovered | 0 | — |
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 | Snap share |
|---|---|---|---|---|---|
| Wk 1 · Toledo | ✓ WR | 83 | ~66 (43–80) | 11 | 80% |
| Wk 2 · Eastern Michigan | ✓ WR | 71 | ~44 (29–54) | 6 | 62% |
| Wk 3 · Notre Dame | ✓ WR | 46 | ~34 (11–46) | 2 | 74% |
| Wk 4 · Nebraska | ✓ WR | 60 | ~52 (34–60) | 6 | 87% |
| Wk 5 · Wisconsin | — | 78 | ~39 (12–53) | 1 | 50% |
| Wk 6 · Illinois | — | 55 | ~33 (11–45) | 5 | 60% |
| Wk 7 · Northwestern | ✓ WR | 57 | ~43 (28–52) | 6 | 75% |
| Season | 5 GS | 450 | 311 (261–362) | 37 | 69% |
12 WRs on the Michigan State roster, ordered by rec
| # | Player | Pos | Class | Rec | Yds | TD | Tgt share | EPA/play |
|---|---|---|---|---|---|---|---|---|
| 13 | Chrishon McCray | WR | SR | 26 | 247 | 1 | 16% | +0.20 |
| 3 | Rodney Bullard Jr. | WR | SR | 21 | 253 | 1 | 17% | +0.31 |
| 6 | Fredrick Moore | WR | JR | 19 | 207 | 2 | 15% | +0.18 |
| 19 | Charles Taplin | WR | FR | 3 | 65 | 1 | 7% | +1.58 |
| 8 | KK Smith | WR | JR | 2 | 21 | 0 | 3% | +0.79 |
| 17 | Braylon Collier | WR | FR | 2 | 23 | 0 | 5% | +0.45 |
| Bryson Williams | WR | 2 | 51 | 1 | 4% | -0.21 | ||
| 5 | Samson Gash | WR | FR | — | — | — | — | — |
| 16 | Zach Washington | WR | FR | — | — | — | — | — |
| 18 | Jameel Gardner Jr. | WR | SR | — | — | — | — | — |
| 81 | Colin Charles | WR | FR | — | — | — | — | — |
| 89 | Nick Hardy | WR | FR | — | — | — | — | — |
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. Michigan State depth chart →