EPA = expected points added per play. Compared with every FBS RB who qualifies
Computed from every play, garbage time excluded. FBS rank among players with enough volume
| Rushing | Value | FBS rank |
|---|---|---|
| Carries | 102 | — |
| Success rate | 45.1% | 165th / 332 |
| Explosive run rate | 17.6% | 67th / 332 |
| Stuffed at the line | 19.6% | 252nd / 332 |
| First downs | 29 | — |
| Red-zone carries | 12 | — |
| Goal-line carries | 2 | — |
| Receiving | Value | FBS rank |
|---|---|---|
| Targets | 18 | — |
| Target share | 10.3% | — |
| Catch rate | 77.8% | — |
| Success rate per target | 55.6% | — |
| Yards per target | 8.4 | — |
| Explosive catches | 16.7% | — |
| Deep-target rate | 0.0% | — |
| 3rd-down targets | 2 | — |
| Red-zone targets | 1 | — |
Where Komolafe's plays went: throw and catch spots, air yards and yards after the catch, read from the play-by-play
2025 season. ESPN's play-by-play only has throw and catch spots for part of 2025 (5 of Komolafe’s games here), so treat the maps as a sample.
4 seasons since 2014 · box-score totals, snap share estimated from play-by-play
| Season | Team | G | Snaps | Car | Rush yds | Y/C | Rush TD | Rush SR | Rec | Rec yds | Rec TD | Tgt share |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026 so far | Northwestern#24 · 6-2 | 8 | 50% | 104 | 618 | 5.9 | 5 | 45.1% | 15 | 162 | 0 | 10.3% |
| 2025 | Northwestern#59 · 7-6 | 12 | 48% | 190 | 941 | 5.0 | 11 | 42.3% | 11 | 60 | 1 | 6.9% |
| 2024 | Northwestern#91 · 4-8 | 10 | 20% | 50 | 139 | 2.8 | 0 | 34.2% | 2 | 8 | 0 | 2.6% |
| 2023 | Northwestern#70 · 8-5 | 3 | 4% | 4 | 9 | 2.2 | 0 | 0.0% | 5 | 33 | 1 | 2.6% |
Past seasons are summed from ESPN box scores; success rates and snap shares come from the play-by-play. Caleb Komolafe's team rank is that season's final TDC rank. A dash means the stat wasn't recorded.
Caleb Komolafe'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
| Rushing | Receiving | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Wk | Opponent | Result | Game score | Car | Yds | Y/C | TD | Long | Rec | Yds | Y/R | TD | Long |
| 1 | W 34–18 | 7.2 | 10 | 46 | 4.6 | 1 | 11 | 2 | 37 | 18.5 | 0 | 25 | |
| 3 | W 41–7 | 4.9 | 11 | 49 | 4.5 | 0 | 11 | 3 | 27 | 9.0 | 0 | 11 | |
| 4 | @ | L 23–29 | 3.3 | 6 | 7 | 1.2 | 0 | 2 | 1 | 3 | 3.0 | 0 | 3 |
| 5 | W 34–13 | 8.8 | 25 | 188 | 7.5 | 1 | 32 | 1 | 14 | 14.0 | 0 | 14 | |
| 6 | W 45–14 | 6.2 | 8 | 44 | 5.5 | 1 | 14 | · | · | · | · | · | |
| 7 | @ | W 24–21 | 7.8 | 15 | 67 | 4.5 | 1 | 14 | 4 | 51 | 12.8 | 0 | 21 |
| 8 | W 42–14 | 8.5 | 13 | 150 | 11.5 | 1 | 56 | · | · | · | · | · | |
| 9 | @ | L 26–34 | 6.7 | 16 | 67 | 4.2 | 0 | 12 | 4 | 30 | 7.5 | 0 | 18 |
| 2026 · 8 games | 6.7 | 104 | 618 | 5.9 | 5 | 56 | 15 | 162 | 10.8 | 0 | 25 | ||
FBS rank among qualifying players
| Rushing | 2026 | FBS rank |
|---|---|---|
| Carries | 104 | — |
| Yards | 618 | 42nd / 1519 |
| Yards / carry | 5.9 | 55th / 312 |
| Touchdowns | 5 | 82nd / 683 |
| Long | 56 | — |
| Receiving | 2026 | FBS rank |
|---|---|---|
| Receptions | 15 | 468th / 2089 |
| Yards | 162 | 529th / 2074 |
| Yards / catch | 10.8 | — |
| Touchdowns | 0 | — |
| Long | 25 | — |
| Fumbles | 2026 | FBS rank |
|---|---|---|
| Fumbles | 1 | — |
| Lost | 1 | — |
| Recovered | 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 | Team plays | Est. snaps | Plays involved | Penalties | Snap share |
|---|---|---|---|---|---|---|
| Wk 1 · South Dakota State | ✓ RB | 54 | ~24 (16–31) | 12 | · | 44% |
| Wk 3 · Colorado | ✓ RB | 73 | ~25 (17–32) | 14 | · | 34% |
| Wk 4 · Indiana | ✓ RB | 56 | ~25 (17–32) | 7 | 1 | 45% |
| Wk 5 · Penn State | ✓ RB | 69 | ~42 (35–47) | 26 | · | 61% |
| Wk 6 · Ball State | — | 55 | ~20 (14–26) | 9 | · | 36% |
| Wk 7 · Michigan State | ✓ RB | 71 | ~43 (36–48) | 20 | · | 61% |
| Wk 8 · Rutgers | ✓ RB | 66 | ~30 (20–39) | 13 | · | 45% |
| Wk 9 · Oregon | ✓ RB | 74 | ~49 (41–54) | 22 | · | 66% |
| Season | 7 GS | 518 | 258 (205–319) | 123 | 1 | 50% |
8 RBs on the Northwestern roster, ordered by car
| # | Player | Pos | Class | Car | Yds | YPC | TD | Rec | EPA/play |
|---|---|---|---|---|---|---|---|---|---|
| 5 | Caleb Komolafe | RB | JR | 104 | 618 | 5.9 | 5 | 15 | +0.19 |
| Gavin Sawchuk | RB | 47 | 225 | 4.8 | 0 | 2 | -0.07 | ||
| 6 | Joseph Himon II | RB | SR | 43 | 384 | 8.9 | 3 | 6 | +0.29 |
| 22 | Daniel Anderson | RB | FR | 6 | 18 | 3 | 0 | — | -0.26 |
| 12 | Marcus Romain | RB | FR | 5 | 7 | 1.4 | 0 | — | -0.33 |
| 36 | Sean Morris II | RB | FR | 3 | 21 | 7 | 0 | — | +0.74 |
| 41 | Robby Preckel | RB | SO | 1 | 1 | 1 | 0 | 1 | -1.97 |
| 7 | Mar'Kel Porter | RB | 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 6+ plays per team game. Northwestern depth chart →