Computed from every play, garbage time excluded. FBS rank among players with enough volume
| Defense | Value | FBS rank |
|---|---|---|
| Havoc plays | 3 | 802nd / 2573 |
| Tackles for loss | 2 | 628th / 1911 |
| Run stops | 8 | 785th / 3263 |
| Sacks | 1 | — |
| Pass breakups | 1 | — |
| Interceptions | 0 | — |
| Forced fumbles | 0 | — |
| Tackles | 15 | — |
Where Moran'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.
2 seasons 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 | Colorado State#117 · 2-4 | 6 | 52% | 18 | 2 | 1 | 0 | 1 | 3 |
| 2025 | Colorado State#123 · 2-10 | 11 | 39% | 27 | 0.5 | 0.5 | 0 | 1 | 0 |
Past seasons are summed from ESPN box scores; success rates and snap shares come from the play-by-play. Jack Moran's team rank is that season's final TDC rank. A dash means the stat wasn't recorded.
Jack Moran'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 | 18 | 1101st / 5408 |
| Solo | 2 | — |
| Tackles for loss | 2 | 760th / 2450 |
| Sacks | 1 | 489th / 1212 |
| QB hurries | 2 | 302nd / 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 | Start | Opp. plays | Est. snaps | Plays made | Snap share |
|---|---|---|---|---|---|
| Wk 1 · Wyoming | ✓ DL | 53 | ~30 (12–47) | 3 | 57% |
| Wk 2 · Southern Utah | ✓ DL | 64 | ~39 (15–62) | 6 | 61% |
| Wk 3 · BYU | ✓ DL | 58 | ~17 (7–27) | 1 | 29% |
| Wk 4 · UTSA | ✓ DL | 72 | ~33 (13–52) | 2 | 46% |
| Wk 5 · Oregon State | ✓ DL | 70 | ~35 (14–55) | 2 | 50% |
| Wk 7 · Texas State | ✓ DL | 74 | ~50 (25–63) | 5 | 68% |
| Season | 6 GS | 391 | 204 (130–262) | 19 | 52% |
15 DLs on the Colorado State roster, ordered by tkl
| # | Player | Pos | Class | Tkl | TFL | Sacks | INT | PD |
|---|---|---|---|---|---|---|---|---|
| 77 | Jack Moran | DL | JR | 18 | 2 | 1 | — | 1 |
| 10 | Brandon Kelley | DL | SR | 16 | 1 | 0.5 | — | 1 |
| 93 | Robby Harrison | DL | SR | 14 | 1 | 0.5 | — | 0 |
| Mukendi Wa-Kalonji | DL | 12 | 0 | 0 | — | 0 | ||
| 99 | TaVeon Robinson | DL | JR | 10 | 0 | 0 | — | 0 |
| 55 | Desman Manuel | DL | FR | 6 | 0 | 0 | — | 0 |
| 96 | Tyrone Fitten | DL | FR | 6 | 0 | 0 | — | 0 |
| Stephon Wright | DL | 5 | 1 | 1 | — | 0 | ||
| 58 | Peyton Garrett | DL | JR | 4 | 0 | 0 | — | 0 |
| 90 | Keegan Shank | DL | JR | 3 | 1.5 | 0 | — | 0 |
| 52 | Cleto Chol | DL | SR | 2 | 0 | 0 | — | 0 |
| 94 | Alton Tarber IV | DL | SR | 2 | 0 | 0 | — | 0 |
| 95 | Gabe Jones | DL | JR | 2 | 0 | 0 | — | 0 |
| 71 | Ismael El Bouomrani | DL | SO | — | — | — | — | — |
| 97 | Amare Bell | DL | 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 —+ plays per team game. Colorado State depth chart →