Computed from every play, garbage time excluded. FBS rank among players with enough volume
| Defense | Value | FBS rank |
|---|---|---|
| Havoc plays | 2 | 1186th / 2573 |
| Tackles for loss | 2 | 628th / 1911 |
| Run stops | 10 | 551st / 3263 |
| Sacks | 2 | — |
| Pass breakups | 0 | — |
| Interceptions | 0 | — |
| Forced fumbles | 0 | — |
| Tackles | 14 | — |
Kevin Roberts'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
| Defense | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Wk | Opponent | Result | Game score | Tkl | Solo | TFL | Sacks | Hur | PD | INT | TD |
| 1 | W 20–13 | 5.9 | 3 | 2 | 0 | 0 | 0 | 0 | · | · | |
| 2 | W 87–3 | 6.7 | 2 | 2 | 1 | 0 | 0 | 0 | · | · | |
| 3 | @ | W 26–13 | 7.5 | 5 | 1 | 0 | 0 | 1 | 1 | · | · |
| 4 | @ | W 46–20 | 7.9 | 2 | 1 | 1.5 | 1.5 | 0 | 0 | · | · |
| 5 | W 45–17 | 5.3 | 2 | 1 | 0 | 0 | 0 | 0 | · | · | |
| 6 | @ | W 27–24 | — | no stats recorded | |||||||
| 7 | W 49–22 | 3.2 | 1 | 0 | 0 | 0 | 0 | 0 | · | · | |
| 2026 · 6 games | 6.1 | 15 | 7 | 2.5 | 1.5 | 1 | 1 | · | · | ||
FBS rank among qualifying players
| Defense | 2026 | FBS rank |
|---|---|---|
| Tackles | 15 | 1394th / 5408 |
| Solo | 7 | — |
| Tackles for loss | 2.5 | 569th / 2450 |
| Sacks | 1.5 | 381st / 1212 |
| QB hurries | 1 | 629th / 1380 |
| Passes defended | 1 | 704th / 1589 |
| Defensive TD | 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 | Opp. plays | Est. snaps | Plays made | Snap share |
|---|---|---|---|---|
| Wk 1 · Liberty | 66 | ~34 (13–54) | 3 | 52% |
| Wk 2 · Wagner | 67 | ~26 (10–41) | 2 | 39% |
| Wk 3 · San Diego State | 77 | ~50 (25–63) | 5 | 65% |
| Wk 4 · Old Dominion | 68 | ~30 (12–47) | 2 | 44% |
| Wk 5 · Marshall | 81 | ~40 (20–50) | 2 | 49% |
| Wk 7 · Georgia State | 66 | ~29 (11–46) | 1 | 44% |
| Season | 490 | 209 (134–269) | 15 | 43% |
17 DLs on the James Madison roster, ordered by tkl
| # | Player | Pos | Class | Tkl | TFL | Sacks | INT | PD |
|---|---|---|---|---|---|---|---|---|
| 17 | Danny Royster | EDGE | SR | 18 | 2.5 | 1.5 | — | 1 |
| 98 | Turner Schmidt | EDGE | JR | 17 | 2 | 0.5 | — | 0 |
| 55 | Rasheed Lovelace | DL | SR | 16 | 1 | 0.5 | — | 0 |
| 5 | Kevin Roberts | DL | JR | 15 | 2.5 | 1.5 | — | 1 |
| Jakolbi Wilson | DL | 15 | 1.5 | 1 | — | 0 | ||
| 9 | Kei'Trone Simpson | EDGE | SR | 14 | 1.5 | 1.5 | — | 1 |
| 93 | Mychal McMullin | DL | SR | 14 | 1 | 0 | — | 0 |
| 8 | Amar Thomas | EDGE | SR | 11 | 1 | 1 | — | 0 |
| 0 | Mason Purham | EDGE | SR | 9 | 0.5 | 0 | — | 0 |
| 88 | Kells Bush | DL | SR | 8 | 2.5 | 1.5 | — | 1 |
| Ernest Willor Jr. | EDGE | 6 | 3 | 2 | — | 1 | ||
| 10 | Chukwunedu Okeke | DL | JR | 3 | 0 | 0 | — | 0 |
| Cole Webster | DL | 2 | 0.5 | 0 | — | 0 | ||
| 51 | Chris Bispham | DL | FR | 1 | 0 | 0 | — | 0 |
| 44 | Kacey Gilliam | EDGE | FR | — | — | — | — | — |
| 90 | Cory Simon | EDGE | FR | — | — | — | — | — |
| 92 | Grayson Gilmore | EDGE | SO | — | — | — | — | — |
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 —+ plays per team game. James Madison depth chart →