Running back, Louisville, 2014–17
Reggie Bonnafon
- Number
- No. 7
- Height
- 6′3″
- Weight
- 212 lb
- Hometown
- Louisville, KY
- Born
- Jan 4, 1996
Reggie Bonnafon played running back at Louisville (2014–17).
Career highs
206passing yards, career highvs. Wake Forest, 2014107rushing yards, career highvs. Boston College, 20172rushing touchdowns, career highthree times; last at Kentucky, 20172receiving touchdowns, career highat Virginia, 2016Rushing
| Season | Team | Car | Yds | Avg | TD | Long |
|---|---|---|---|---|---|---|
| 2014 | Louisville | 72 | 164 | 2.3 | 5 | 36 |
| 2015 | Louisville | 45 | 175 | 3.9 | 0 | 29 |
| 2016 | Louisville | 5 | 7 | 1.4 | 0 | 5 |
| 2017 | Louisville | 93 | 459 | 4.9 | 7 | 64 |
| Career | 215 | 805 | 3.7 | 12 | 64 | |
Receiving
| Season | Team | Rec | Yds | Avg | TD | Long |
|---|---|---|---|---|---|---|
| 2015 | Louisville | 10 | 105 | 10.5 | 0 | 26 |
| 2016 | Louisville | 13 | 159 | 12.2 | 5 | 24 |
| 2017 | Louisville | 21 | 182 | 8.7 | 1 | 34 |
| Career | 44 | 446 | 10.1 | 6 | 34 | |
Passing
| Season | Team | Cmp | Att | Pct | Yds | Y/A | TD | Int |
|---|---|---|---|---|---|---|---|---|
| 2014 | Louisville | 61 | 120 | 50.8 | 864 | 7.2 | 5 | 4 |
| 2015 | Louisville | 14 | 24 | 58.3 | 192 | 8.0 | 2 | 1 |
| 2017 | Louisville | 0 | 1 | 0.0 | 0 | 0.0 | 0 | 0 |
| Career | 75 | 145 | 51.7 | 1,056 | 7.3 | 7 | 5 | |
Returns
| Season | Team | PR | Yds | TD |
|---|---|---|---|---|
| 2017 | Louisville | 12 | 81 | 0 |
Season lines from CollegeFootballData, regular season and bowls.
On the roster
| Season | Team | No. | Pos | Ht | Wt |
|---|---|---|---|---|---|
| 2014 | Louisville | 7 | RB | ||
| 2015 | Louisville | 7 | RB | ||
| 2016 | Louisville | 7 | RB | ||
| 2017 | Louisville | 7 | RB | 6′3″ | 212 |
As each season’s roster listed the player (CollegeFootballData). Classes before the latest listing are counted back from it; “Yr 1” is the year on file where that count can’t place a season he played (a redshirt, transfer or 2020 year); height and weight as last listed.
Per play
| Season | Team | Plays | EPA/play | Pctile | Median | Total | Usage | Adj. rush |
|---|---|---|---|---|---|---|---|---|
| 2014 | Louisville | 191 | 0.22 | 75th (n=253) | 0.12 | 41.4 | 26% | – |
| 2015 | Louisville | 78 | 0.21 | 76th (n=268) | 0.12 | 16.1 | 11% | 0.12 |
| 2016 | Louisville | 31 | 0.50 | – | – | 15.6 | 3% | – |
| 2017 | Louisville | 122 | 0.07 | 33rd (n=287) | 0.12 | 8.0 | 13% | 0.17 |
Expected points added: how much the player’s plays moved the team’s expected score, per play and in total. Plays: total EPA divided by EPA per play, the plays the source credits to him (for a receiver roughly his catches and runs, not every target; for a passer, not every attempt), so it can differ from attempts plus carries. Percentile: against the position’s regulars that season across all divisions on file (quarterbacks with 150+ plays, backs 60+, receivers and tight ends 30+), with how many there were (n) and their median; a dash means too few plays to rank. A season in progress uses the full-season bar scaled by games played, never below 75 plays for quarterbacks, 30 for backs and 20 for receivers. The cohort grows or shrinks with the source’s coverage each season (2025 lists far more players), so compare percentiles rather than raw EPA across years. FCS seasons are marked. Usage: the share of the team’s plays the player was part of (shown from 20 plays). Adjusted pass and rush: EPA per play adjusted for the defenses faced (CollegeFootballData’s WEPA). From CollegeFootballData, 2013 on.
Game by game
2017 Louisville 13 games, 459 rushing yards, 7 TD
| Date | Opponent | Result | Car | Rush yds | Rush TD | Rec | Rec yds | Rec TD |
|---|---|---|---|---|---|---|---|---|
| Sep 2 | vs. | W 35–28 | 6 | 33 | 1 | 3 | 5 | 0 |
| Sep 9 | at | W 47–35 | 10 | 22 | 0 | 3 | 21 | 0 |
| Sep 16 | vs. | L 21–47 | 4 | 17 | 0 | – | – | – |
| Sep 23 | vs. | W 42–3 | 3 | 18 | 0 | 2 | 30 | 0 |
| Sep 30 | vs. | W 55–10 | 4 | 26 | 1 | 2 | 19 | 0 |
| Oct 5 | at | L 25–39 | 4 | 13 | 0 | 3 | 7 | 0 |
| Oct 14 | vs. | L 42–45 | 12 | 107 | 1 | 1 | 3 | 0 |
| Oct 21 | at | W 31–28 | 16 | 74 | 1 | 2 | 14 | 0 |
| Oct 28 | at | L 32–42 | 10 | 22 | 0 | 3 | 22 | 0 |
| Nov 11 | vs. | W 38–21 | 3 | 8 | 0 | – | – | – |
| Nov 18 | vs. | W 56–10 | 5 | 43 | 1 | 1 | 34 | 1 |
| Nov 25 | at | W 44–17 | 9 | 63 | 2 | 1 | 27 | 0 |
| Dec 30 ✦ | vs. | L 27–31 | 7 | 13 | 0 | – | – | – |
2016 Louisville 12 games, 13 catches, 159 yards, 5 TD
| Date | Opponent | Result | Car | Rush yds | Rush TD | Rec | Rec yds | Rec TD |
|---|---|---|---|---|---|---|---|---|
| Sep 1 | vs. | W 70–14 | – | – | – | 2 | 33 | 1 |
| Sep 9 | at | W 62–28 | 1 | −8 | 0 | – | – | – |
| Sep 17 | vs. | W 63–20 | 1 | 5 | 0 | 1 | 24 | 0 |
| Sep 24 | at | W 59–28 | 1 | 3 | 0 | 2 | 17 | 1 |
| Oct 1 | at | L 36–42 | – | – | – | 1 | 9 | 0 |
| Oct 14 | vs. | W 24–14 | – | – | – | 1 | 10 | 0 |
| Oct 22 | vs. | W 54–13 | – | – | – | 1 | 5 | 0 |
| Oct 29 | at | W 32–25 | – | – | – | 2 | 18 | 2 |
| Nov 5 | at | W 52–7 | 1 | 5 | 0 | – | – | – |
| Nov 12 | vs. | W 44–12 | – | – | – | 1 | 12 | 0 |
| Nov 17 | at | L 10–36 | – | – | – | 1 | 13 | 0 |
| Nov 26 | vs. | L 38–41 | 1 | 2 | 0 | 1 | 18 | 1 |
2015 Louisville 10 games, 175 rushing yards
| Date | Opponent | Result | Car | Rush yds | Rush TD | Rec | Rec yds | Rec TD |
|---|---|---|---|---|---|---|---|---|
| Sep 5 | vs. | L 24–31 | 8 | 14 | 0 | – | – | – |
| Sep 26 | vs. | W 45–3 | 6 | 26 | 0 | 1 | 13 | 0 |
| Oct 3 | at | W 20–13 | 1 | 12 | 0 | – | – | – |
| Oct 17 | at | L 21–41 | 3 | 20 | 0 | 3 | 31 | 0 |
| Oct 24 | vs. | W 17–14 | 10 | 56 | 0 | 2 | 18 | 0 |
| Oct 30 | at | W 20–19 | 5 | 18 | 0 | 1 | 26 | 0 |
| Nov 14 | vs. | W 38–31 | 2 | 16 | 0 | – | – | – |
| Nov 21 | at | L 34–45 | 2 | −1 | 0 | 2 | 10 | 0 |
| Nov 28 | at | W 38–24 | 2 | 5 | 0 | 1 | 7 | 0 |
| Dec 30 ✦ | vs. | W 27–21 | 6 | 9 | 0 | – | – | – |
2014 Louisville 10 games, 864 passing yards, 5 TD
| Date | Opponent | Result | Car | Rush yds | Rush TD | Rec | Rec yds | Rec TD |
|---|---|---|---|---|---|---|---|---|
| Sep 6 | vs. | W 66–21 | 5 | 22 | 2 | – | – | – |
| Sep 13 | at | L 21–23 | 1 | −1 | 0 | – | – | – |
| Sep 27 | vs. | W 20–10 | 14 | 46 | 0 | – | – | – |
| Oct 3 | at | W 28–6 | 8 | 10 | 0 | – | – | – |
| Oct 11 | at | L 17–23 | 8 | −28 | 0 | – | – | – |
| Oct 18 | vs. | W 30–18 | 2 | 13 | 0 | – | – | – |
| Nov 8 | at | W 38–19 | 13 | 76 | 1 | – | – | – |
| Nov 22 | at | W 31–28 | 15 | 35 | 2 | – | – | – |
| Nov 29 | vs. | W 44–40 | 5 | 0 | 0 | – | – | – |
| Dec 30 ✦ | vs. | L 14–37 | 1 | −9 | 0 | – | – | – |
Box scores from CollegeFootballData, 2004 on. ✦ postseason; ★ a career high on file.
Before the draft
| Drill | Pro day 2018 |
|---|---|
| Height | 6′0⅞″ |
| Weight | 212 lb |
| Arm length | 32¾″ |
| Hand size | 9¾″ |
| 40-yard dash | 4.53 s |
| Vertical jump | 38″ |
| Broad jump | 10′7″ |
| Bench press | 20 reps |
| 3-cone drill | 6.97 s |
| 20-yard shuttle | 4.25 s |
Combine and pro day results compiled by array-carpenter (nfl-draft-data).
In the NFL
4 seasons, 15 games with a stat; latest team: Washington Commanders.
| Season | Team | G | Car | Yds | TD | Rec | Rec yds |
|---|---|---|---|---|---|---|---|
| 2019 | Carolina Panthers | 11 | 16 | 116 | 1 | 6 | 57 |
| 2020 | Carolina Panthers | 2 | 12 | 69 | 0 | 2 | 18 |
| 2021 | Carolina Panthers | 1 | 1 | 4 | 0 | 2 | 12 |
| 2022 | Washington Commanders | 1 | 3 | 8 | 0 | 0 | 0 |
| NFL career | 15 | 32 | 197 | 1 | 10 | 87 | |
Regular seasons, from nflverse (CC BY 4.0). G counts games in which the player recorded a stat.
Is this you, or do you know of something wrong or missing here? Suggest a correction. We check each one against a source before changing the page.
