Computed from every play, garbage time excluded. FBS rank among players with enough volume
| Defense | Value | FBS rank |
|---|---|---|
| Havoc plays | 9 | 81st / 2758 |
| Tackles for loss | 6 | 130th / 2112 |
| Run stops | 30 | 35th / 3422 |
| Sacks | 3 | — |
| Pass breakups | 3 | — |
| Interceptions | 0 | — |
| Forced fumbles | 0 | — |
| Tackles | 62 | — |
Where Woolen'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.
Donovan Woolen'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 33–7 | 7.0 | 10 | 7 | 0 | 0 | 0 | 0 | · | · | |
| 1 | W 38–0 | 5.7 | 1 | 0 | 0 | 0 | 0 | 1 | · | · | |
| 2 | @ | W 38–32 | 8.1 | 11 | 7 | 0 | 0 | 1 | 1 | · | · |
| 3 | @ | W 31–10 | 6.1 | 2 | 1 | 1 | 0 | 1 | 0 | · | · |
| 5 | W 28–0 | 9.8 | 9 | 4 | 1.5 | 1 | 1 | 0 | 1 | · | |
| 6 | @ | L 7–13 | 8.7 | 11 | 4 | 1 | 0.5 | 1 | 1 | · | · |
| 7 | W 31–17 | 6.2 | 7 | 3 | 0 | 0 | 0 | 0 | · | · | |
| 8 | @ | L 16–21 | 5.4 | 4 | 1 | 0 | 0 | 0 | 0 | · | · |
| 9 | W 31–7 | 9.2 | 11 | 8 | 2.5 | 1 | 1 | 0 | · | · | |
| 2026 · 9 games | 7.4 | 66 | 35 | 6 | 2.5 | 5 | 3 | 1 | · | ||
FBS rank among qualifying players
| Defense | 2026 | FBS rank |
|---|---|---|
| Tackles | 66 | 43rd / 5664 |
| Solo | 35 | — |
| Tackles for loss | 6 | 155th / 2634 |
| Sacks | 2.5 | 229th / 1383 |
| QB hurries | 5 | 71st / 1549 |
| Passes defended | 3 | 237th / 1772 |
| Defensive TD | 0 | — |
| Interceptions | 2026 | FBS rank |
|---|---|---|
| Interceptions | 1 | 145th / 627 |
| Return yards | 13 | — |
| 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 | Start | Opp. plays | Est. snaps | Plays made | Special teams | Snap share |
|---|---|---|---|---|---|---|
| Wk 1 · Jacksonville State | ✓ LB | 54 | ~54 (27–54) | 11 | · | 100% |
| Wk 1 · Fordham | ✓ LB | 48 | ~15 (2–27) | 2 | · | 31% |
| Wk 2 · Air Force | ✓ LB | 66 | ~66 (34–66) | 10 | · | 100% |
| Wk 3 · Sacramento State | ✓ LB | 66 | ~18 (2–33) | 2 | · | 27% |
| Wk 5 · Wyoming | ✓ LB | 49 | ~47 (24–49) | 10 | 1 | 96% |
| Wk 6 · UNLV | ✓ LB | 63 | ~63 (32–63) | 12 | · | 100% |
| Wk 7 · Nevada | — | 57 | ~55 (28–57) | 7 | · | 96% |
| Wk 8 · New Mexico | ✓ LB | 58 | ~31 (3–56) | 4 | · | 53% |
| Wk 9 · UTEP | — | 50 | ~50 (25–50) | 11 | · | 100% |
| Season | 7 GS | 511 | 399 (338–464) | 69 | 1 | 78% |
13 LBs on the North Dakota State roster, ordered by tkl
| # | Player | Pos | Class | Tkl | TFL | Sacks | INT | PD |
|---|---|---|---|---|---|---|---|---|
| Donovan Woolen | LB | 66 | 6 | 2.5 | 1 | 3 | ||
| 3 | Gavin Sell | LB | FR | 46 | 10 | 2 | 1 | 1 |
| 25 | Ray James Jr. | LB | SO | 39 | 5.5 | 1.5 | 2 | 1 |
| 41 | Peder Haugo | LB | SO | 18 | 1.5 | 1 | — | 0 |
| 42 | Alex Elliott | LB | JR | 15 | 0 | 0 | — | 0 |
| Keith Williams | LB | 10 | 0 | 0 | 1 | 0 | ||
| Noah Taylor | LB | 4 | 1 | 0 | — | 0 | ||
| 35 | Ryland Satter | LB | SO | 2 | 0 | 0 | — | 0 |
| 50 | Damian Devine | LB | FR | 2 | 0 | 0 | — | 0 |
| Jacob Wrbanek | LB | 2 | 0 | 0 | — | 0 | ||
| 38 | Ben Schepp | LB | FR | — | — | — | — | — |
| 44 | Carter Appl | LB | FR | — | — | — | — | — |
| 55 | Oliver Lucht | LB | 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. North Dakota State depth chart →