Computed from every play, garbage time excluded. FBS rank among players with enough volume
| Defense | Value | FBS rank |
|---|---|---|
| Havoc plays | 4 | 489th / 2573 |
| Tackles for loss | 3 | 375th / 1909 |
| Run stops | 17 | 151st / 3262 |
| Sacks | 1 | — |
| Pass breakups | 1 | — |
| Interceptions | 0 | — |
| Forced fumbles | 0 | — |
| Tackles | 44 | — |
Where Bowles'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.
3 seasons at 2 schools since 2014 · box-score totals, snap share estimated from play-by-play
| Season | Team | G | Snaps | Tkl | TFL | Sacks | INT | PD | Havoc |
|---|---|---|---|---|---|---|---|---|---|
| 2026 so far | Michigan#40 · 4-2 | 6 | 93% | 50 | 5 | 0.5 | 0 | 1 | 4 |
| 2025 | Michigan#26 · 9-4 | 12 | 26% | 27 | 2 | 1 | 0 | 0 | 1 |
| 2023 | Georgia#2 · 13-1 | 2 | — | 2 | 0 | 0 | 0 | 0 | — |
Past seasons are summed from ESPN box scores; success rates and snap shares come from the play-by-play. Troy Bowles's team rank is that season's final TDC rank. A dash means the stat wasn't recorded.
Troy Bowles'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
FBS rank among qualifying players
| Defense | 2026 | FBS rank |
|---|---|---|
| Tackles | 50 | 76th / 5406 |
| Solo | 25 | — |
| Tackles for loss | 5 | 136th / 2447 |
| Sacks | 0.5 | 978th / 1212 |
| QB hurries | 2 | 301st / 1377 |
| Passes defended | 1 | 702nd / 1588 |
| Defensive TD | 0 | — |
| Fumbles | 2026 | FBS rank |
|---|---|---|
| Fumbles | 0 | — |
| Lost | 0 | — |
| Recovered | 1 | — |
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 | Snap share |
|---|---|---|---|---|---|
| Wk 1 · Western Michigan | ✓ LB | 67 | ~67 (34–67) | 10 | 100% |
| Wk 2 · Oklahoma | ✓ LB | 62 | ~62 (31–62) | 9 | 100% |
| Wk 3 · UTEP | ✓ LB | 47 | ~28 (3–47) | 3 | 60% |
| Wk 4 · Iowa | ✓ LB | 58 | ~55 (28–58) | 6 | 95% |
| Wk 5 · Minnesota | — | 65 | ~64 (33–65) | 9 | 98% |
| Wk 7 · Penn State | ✓ LB | 74 | ~71 (36–74) | 9 | 96% |
| Season | 5 GS | 373 | 347 (291–373) | 46 | 93% |
13 LBs on the Michigan roster, ordered by tkl
| # | Player | Pos | Class | Tkl | TFL | Sacks | INT | PD |
|---|---|---|---|---|---|---|---|---|
| 18 | Troy Bowles | LB | SR | 50 | 5 | 0.5 | — | 1 |
| Nathaniel Staehling | LB | 34 | 2.5 | 0 | 1 | 0 | ||
| Chase Taylor | LB | 18 | 1.5 | 1 | — | 1 | ||
| 13 | Aisea Moa | LB | SR | 17 | 0.5 | 0 | — | 1 |
| 12 | Nathaniel Owusu-Boateng | LB | SO | 6 | 0 | 0 | — | 0 |
| 30 | Max Alford | LB | SR | 5 | 1 | 0 | — | 0 |
| 23 | Markel Dabney | LB | FR | 1 | 0 | 0 | — | 0 |
| 15 | Aden Reeder | LB | FR | — | — | — | — | — |
| 33 | Kaden Catchings | LB | FR | — | — | — | — | — |
| 35 | Ndi Etta | LB | FR | — | — | — | — | — |
| 43 | Zach Ludwig | LB | JR | — | — | — | — | — |
| 49 | Adam Bazzi | LB | JR | — | — | — | — | — |
| 52 | Christian Pierce | LB | 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. Michigan depth chart →