Receiver, Duke, 2021–25
Sahmir Hagans
- Number
- No. 2
- Height
- 5′10″
- Weight
- 190 lb
- Class (2025)
- Senior
- Hometown
- Philadelphia, PA
Sahmir Hagans played receiver at Duke (2021–25).
Career highs
9catches, career highat Miami, 2024139receiving yards, career hightwice; last at Miami, 20242receiving touchdowns, career hightwice; last vs. Elon, 2025Team titles: ACC champions, 2025
Receiving
Returns
Season lines from CollegeFootballData, regular season and bowls. A dash: the source has no number for that season (often an FCS season), and career totals count only the numbers on file.
On the roster
| Season | Team | No. | Pos | Class | Ht | Wt |
|---|---|---|---|---|---|---|
| 2021 | Duke | 2 | WR | Yr 1 | ||
| 2022 | Duke | 2 | WR | Yr 2 | ||
| 2023 | Duke | 2 | WR | Yr 3 | ||
| 2024 | Duke | 2 | WR | Yr 4 | ||
| 2025 | Duke | 2 | WR | Sr. (Yr 5) | 5′10″ | 190 |
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 |
|---|---|---|---|---|---|---|---|
| 2021 | Duke | 2 | -0.31 | – | – | -0.6 | – |
| 2022 | Duke | 42 | 0.67 | 44th (n=683) | 0.71 | 28.2 | 6% |
| 2023 | Duke | 41 | 0.29 | 5th (n=681) | 0.80 | 12.0 | 7% |
| 2024 | Duke | 57 | 0.54 | 8th (n=581) | 0.92 | 30.5 | 7% |
| 2025 | Duke | 62 | 0.59 | 71st (n=1040) | 0.46 | 36.4 | 6% |
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). From CollegeFootballData, 2013 on.
Game by game
2025 Duke 14 games, 44 catches, 512 yards, 6 TD
| Date | Opponent | Result | Rec | Rec yds | Rec TD | KR | Yds | PR |
|---|---|---|---|---|---|---|---|---|
| Aug 28 | vs. | W 45–17 | 5 | 54 | 2 | – | – | – |
| Sep 6 | vs. | L 19–45 | 3 | 33 | 0 | – | – | – |
| Sep 13 | at | L 27–34 | 1 | 29 | 1 | – | – | – |
| Sep 20 | vs. | W 45–33 | 3 | 63 | 1 | – | – | – |
| Sep 27 | at | W 38–3 | 5 | 59 | 0 | – | – | – |
| Oct 4 | at | W 45–21 | 3 | 10 | 0 | 2 | 61 | – |
| Oct 18 | vs. | L 18–27 | 5 | 69 | 1 | 1 | 35 | – |
| Nov 1 | at | W 46–45 | 3 | 2 | 0 | 2 | 117 | – |
| Nov 8 | at | L 34–37 | 2 | 23 | 0 | 2 | 62 | – |
| Nov 15 | vs. | L 17–34 | 1 | 35 | 0 | 3 | 38 | – |
| Nov 22 | at | W 32–25 | 3 | 30 | 0 | 1 | 40 | – |
| Nov 29 | vs. | W 49–32 | 2 | 29 | 1 | 2 | 101 | – |
| Dec 6 | vs. | W 27–20 | 2 | 31 | 0 | 1 | 13 | – |
| Dec 31 ✦ | vs. | W 42–39 | 6 | 45 | 0 | – | – | – |
2024 Duke 13 games, 47 catches, 413 yards, 3 TD
| Date | Opponent | Result | Rec | Rec yds | Rec TD | KR | Yds | PR |
|---|---|---|---|---|---|---|---|---|
| Aug 30 | vs. | W 26–3 | 4 | 41 | 0 | – | – | – |
| Sep 6 | vs. | W 26–20 | 4 | 35 | 0 | – | – | – |
| Sep 14 | vs. | W 26–21 | 1 | 4 | 0 | – | – | – |
| Sep 21 | at | W 45–17 | 3 | 21 | 0 | – | – | – |
| Sep 28 | vs. | W 21–20 | 3 | 13 | 0 | – | – | – |
| Oct 5 | at | L 14–24 | 1 | 65 | 1 | – | – | – |
| Oct 18 | vs. | W 23–16 | 4 | 15 | 0 | – | – | – |
| Oct 26 | vs. | L 27–28 | 3 | 12 | 0 | – | – | – |
| Nov 2 | at | L 31–53 | 9 | 139 | 1 | – | – | – |
| Nov 9 | at | W 29–19 | 4 | 16 | 1 | 2 | 27 | – |
| Nov 23 | vs. | W 31–28 | 2 | 13 | 0 | – | – | – |
| Nov 30 | at | W 23–17 | 4 | 11 | 0 | – | – | – |
| Jan 2 ✦ | vs. | L 20–52 | 5 | 28 | 0 | 1 | 99 | – |
2023 Duke 10 games, 30 catches, 260 yards
| Date | Opponent | Result | Rec | Rec yds | Rec TD | KR | Yds | PR |
|---|---|---|---|---|---|---|---|---|
| Sep 4 | vs. | W 28–7 | 3 | 25 | 0 | – | – | – |
| Sep 9 | vs. | W 42–7 | 3 | 39 | 0 | – | – | – |
| Sep 16 | vs. | W 38–14 | 1 | 4 | 0 | – | – | – |
| Sep 23 | at | W 41–7 | 4 | 33 | 0 | – | – | – |
| Sep 30 | vs. | L 14–21 | 3 | 24 | 0 | – | – | 1 |
| Oct 21 | at | L 20–38 | 3 | 19 | 0 | – | – | – |
| Nov 2 | vs. | W 24–21 | 2 | 10 | 0 | – | – | – |
| Nov 18 | at | L 27–30 | 4 | 40 | 0 | – | – | – |
| Nov 25 | vs. | W 30–19 | 2 | 11 | 0 | – | – | – |
| Dec 23 ✦ | vs. | W 17–10 | 5 | 55 | 0 | – | – | – |
2022 Duke 12 games, 31 catches, 400 yards, 5 TD
| Date | Opponent | Result | Rec | Rec yds | Rec TD | KR | Yds | PR |
|---|---|---|---|---|---|---|---|---|
| Sep 2 | vs. | W 30–0 | 2 | 54 | 1 | – | – | – |
| Sep 10 | at | W 31–23 | – | – | – | 2 | 40 | – |
| Sep 17 | vs. | W 49–20 | 2 | 48 | 0 | – | – | – |
| Sep 24 | at | L 27–35 | 1 | 12 | 0 | – | – | – |
| Oct 1 | vs. | W 38–17 | 2 | 1 | 0 | – | – | – |
| Oct 8 | at | L 20–23 | – | – | – | – | – | 3 |
| Oct 15 | vs. | L 35–38 | 2 | 31 | 1 | – | – | – |
| Nov 4 | at | W 38–31 | 5 | 45 | 1 | – | – | – |
| Nov 12 | vs. | W 24–7 | 2 | 20 | 0 | – | – | 1 |
| Nov 19 | at | L 26–28 | 3 | 18 | 0 | – | – | – |
| Nov 26 | vs. | W 34–31 | 8 | 139 | 2 | – | – | – |
| Dec 28 ✦ | vs. | W 30–13 | 4 | 32 | 0 | – | – | – |
2021 Duke 3 games, 5 returns, 109 yards
| Date | Opponent | Result | Rec | Rec yds | Rec TD | KR | Yds | PR |
|---|---|---|---|---|---|---|---|---|
| Oct 30 | at | L 7–45 | – | – | – | 1 | 16 | – |
| Nov 6 | vs. | L 29–54 | – | – | – | 2 | 56 | – |
| Nov 27 | vs. | L 10–47 | 1 | 5 | 0 | 2 | 37 | – |
Box scores from CollegeFootballData, 2004 on. ✦ postseason; ★ a career high on file.
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.
