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, 2025

Team titles: ACC champions, 2025

Receiving

Receiving yards, season by season, with his team’s record
SeasonTeamRecYdsAvgTDLong
2021Duke155.005
2022Duke3140012.9541
2023Duke302608.7023
2024Duke474138.8365
2025Duke4451211.6635
Career1531,59010.41465

Returns

SeasonTeamKRYdsTDPRYdsTD
2021Duke51090–––
2022Duke240041461
2023Duke–––170
2024Duke31261–––
2025Duke144671–––
Career24742251531

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

SeasonTeamNo.PosClassHtWt
2021Duke2WRYr 1
2022Duke2WRYr 2
2023Duke2WRYr 3
2024Duke2WRYr 4
2025Duke2WRSr. (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

SeasonTeamPlaysEPA/playPctileMedianTotalUsage
2021Duke2-0.31––-0.6–
2022Duke420.6744th (n=683)0.7128.26%
2023Duke410.295th (n=681)0.8012.07%
2024Duke570.548th (n=581)0.9230.57%
2025Duke620.5971st (n=1040)0.4636.46%

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
DateOpponentResultRecRec ydsRec TDKRYdsPR
Aug 28vs.ElonW 45–⁠175542–––
Sep 6vs.IllinoisL 19–⁠453330–––
Sep 13atTulaneL 27–⁠341291–––
Sep 20vs.NC StateW 45–⁠333631–––
Sep 27atSyracuseW 38–⁠35590–––
Oct 4atCaliforniaW 45–⁠213100261–
Oct 18vs.Georgia TechL 18–⁠275691135–
Nov 1atClemsonW 46–⁠453202117–
Nov 8atUConnL 34–⁠372230262–
Nov 15vs.VirginiaL 17–⁠341350338–
Nov 22atNorth CarolinaW 32–⁠253300140–
Nov 29vs.Wake ForestW 49–⁠3222912101–
Dec 6vs.VirginiaW 27–⁠202310113–
Dec 31 ✦vs.Arizona StateW 42–⁠396450–––
2024 Duke 13 games, 47 catches, 413 yards, 3 TD
DateOpponentResultRecRec ydsRec TDKRYdsPR
Aug 30vs.ElonW 26–⁠34410–––
Sep 6vs.NorthwesternW 26–⁠204350–––
Sep 14vs.UConnW 26–⁠21140–––
Sep 21atMiddle TennesseeW 45–⁠173210–––
Sep 28vs.North CarolinaW 21–⁠203130–––
Oct 5atGeorgia TechL 14–⁠241651–––
Oct 18vs.Florida StateW 23–⁠164150–––
Oct 26vs.SMUL 27–⁠283120–––
Nov 2atMiamiL 31–⁠5391391–––
Nov 9atNC StateW 29–⁠194161227–
Nov 23vs.Virginia TechW 31–⁠282130–––
Nov 30atWake ForestW 23–⁠174110–––
Jan 2 ✦vs.Ole MissL 20–⁠525280199–
2023 Duke 10 games, 30 catches, 260 yards
DateOpponentResultRecRec ydsRec TDKRYdsPR
Sep 4vs.ClemsonW 28–⁠73250–––
Sep 9vs.LafayetteW 42–⁠73390–––
Sep 16vs.NorthwesternW 38–⁠14140–––
Sep 23atUConnW 41–⁠74330–––
Sep 30vs.Notre DameL 14–⁠213240––1
Oct 21atFlorida StateL 20–⁠383190–––
Nov 2vs.Wake ForestW 24–⁠212100–––
Nov 18atVirginiaL 27–⁠304400–––
Nov 25vs.PittsburghW 30–⁠192110–––
Dec 23 ✦vs.TroyW 17–⁠105550–––
2022 Duke 12 games, 31 catches, 400 yards, 5 TD
DateOpponentResultRecRec ydsRec TDKRYdsPR
Sep 2vs.TempleW 30–⁠02541–––
Sep 10atNorthwesternW 31–⁠23–––240–
Sep 17vs.North Carolina A&TW 49–⁠202480–––
Sep 24atKansasL 27–⁠351120–––
Oct 1vs.VirginiaW 38–⁠17210–––
Oct 8atGeorgia TechL 20–⁠23–––––3
Oct 15vs.North CarolinaL 35–⁠382311–––
Nov 4atBoston CollegeW 38–⁠315451–––
Nov 12vs.Virginia TechW 24–⁠72200––1
Nov 19atPittsburghL 26–⁠283180–––
Nov 26vs.Wake ForestW 34–⁠3181392–––
Dec 28 ✦vs.UCFW 30–⁠134320–––
2021 Duke 3 games, 5 returns, 109 yards
DateOpponentResultRecRec ydsRec TDKRYdsPR
Oct 30atWake ForestL 7–⁠45–––116–
Nov 6vs.PittsburghL 29–⁠54–––256–
Nov 27vs.MiamiL 10–⁠47150237–

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.