Computed from every play, garbage time excluded. FBS rank among players with enough volume
| Defense | Value | FBS rank |
|---|---|---|
| Havoc plays | 2 | 1186th / 2575 |
| Tackles for loss | 0 | — |
| Run stops | 0 | — |
| Sacks | 0 | — |
| Pass breakups | 2 | — |
| Interceptions | 0 | — |
| Forced fumbles | 0 | — |
| Tackles | 2 | — |
Where Olford's plays went: throw and catch spots, air yards and yards after the catch, read from the play-by-play
The play-by-play names the defender on breakups, interceptions and tackles, but not the man in coverage on every throw, so true times-targeted isn't in the text. Coverage plays is the closest stand-in; exact targets come from hand charting.
Jamal Olford'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 | — | no stats recorded | ||||||||
| 2 | W 87–3 | 2.5 | 1 | 0 | 0 | 0 | 0 | 0 | · | · | |
| 3 | @ | W 26–13 | — | no stats recorded | |||||||
| 4 | @ | W 46–20 | 7.5 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | · |
| 5 | W 45–17 | 5.4 | 0 | 0 | 0 | 0 | 0 | 1 | · | · | |
| 6 | @ | W 27–24 | 4.0 | 1 | 1 | 0 | 0 | 0 | 0 | · | · |
| 7 | W 49–22 | 4.0 | 1 | 1 | 0 | 0 | 0 | 0 | · | · | |
| 2026 · 5 games | 4.7 | 4 | 2 | 0 | 0 | 0 | 1 | 1 | · | ||
FBS rank among qualifying players
| Defense | 2026 | FBS rank |
|---|---|---|
| Tackles | 4 | 3151st / 5410 |
| Solo | 2 | — |
| Tackles for loss | 0 | — |
| Sacks | 0 | — |
| QB hurries | 0 | — |
| Passes defended | 1 | 707th / 1591 |
| Defensive TD | 0 | — |
| Interceptions | 2026 | FBS rank |
|---|---|---|
| Interceptions | 1 | 110th / 529 |
| Return yards | 8 | — |
| Pick-sixes | 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 | Special teams | Penalties | Snap share |
|---|---|---|---|---|---|---|
| Wk 1 · Liberty | 49 | · | · | · | 1 | — |
| Wk 2 · Wagner | 67 | ~4 (0–12) | 1 | · | · | 6% |
| Wk 4 · Old Dominion | 68 | ~11 (0–34) | 2 | 1 | · | 16% |
| Wk 5 · Marshall | 81 | ~5 (0–15) | 1 | · | · | 6% |
| Wk 6 · Georgia Southern | 65 | ~· | 1 | · | · | 0% |
| Wk 7 · Georgia State | 66 | ~4 (0–12) | 1 | · | · | 6% |
| Season | 490 | 24 (0–31) | 6 | 1 | 1 | 5% |
21 DBs on the James Madison roster, ordered by tkl
| # | Player | Pos | Class | Tkl | TFL | Sacks | INT | PD |
|---|---|---|---|---|---|---|---|---|
| 24 | Jayon Harvey | S | JR | 49 | 1.5 | 0 | — | 3 |
| 31 | Seth Gathers | S | SO | 33 | 0.5 | 0 | — | 3 |
| Ken Willis | CB | 27 | 5 | 1 | 1 | 2 | ||
| 14 | KJ Flowe | S | JR | 21 | 2 | 0 | — | 4 |
| 16 | TJ McGill | S | SR | 16 | 0 | 0 | — | 1 |
| 6 | DJ Kelly | CB | SO | 14 | 0 | 0 | 4 | 3 |
| 25 | Terrence Jones | S | JR | 10 | 1.5 | 0 | — | 0 |
| 7 | Roddrey McWilliams | CB | SO | 7 | 0 | 0 | — | 1 |
| 11 | LaRon Dues | CB | FR | 7 | 1 | 0 | — | 1 |
| 1 | Damier Minkah | CB | SR | 4 | 0 | 0 | — | 0 |
| 27 | Jamal Olford | CB | SO | 4 | 0 | 0 | 1 | 1 |
| 22 | Chase Regan | S | JR | 3 | 0 | 0 | — | 0 |
| 30 | D'Kwan Thomas | S | FR | 3 | 0 | 0 | — | 0 |
| 35 | Joshua Prince | S | JR | 1 | 0 | 0 | — | 0 |
| 41 | George Lovelace | CB | JR | 1 | 0 | 0 | — | 0 |
| 7 | Javis Mynatt | S | SR | — | — | — | — | — |
| 18 | Jase Rhodes | S | FR | — | — | — | — | — |
| 28 | Kamden Jennings | CB | FR | — | — | — | — | — |
| 32 | Chase Miller | S | SR | — | — | — | — | — |
| 33 | Trey Gibson | CB | FR | — | — | — | — | — |
| 47 | Kevin Kabasele | S | JR | — | — | — | — | — |
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 →