Every player
New here?

How to read this page

▶

Team tables split by side of the ball, and the Side control hides the half you are not reading. What a team allowed is what its opponents gained, so the allowed tables are the offensive ones read from the other end. The roster is everyone who recorded a stat line, because the source holds no roster of its own — a player who never got on the field is absent. A dash means no number for that cell, or a zero in a roster column that counts.

DUKE

Sahmir Hagans

Sahmir Hagans sits 1264th of 1569 ncaaf wrs in fumbles lost, at 1.

94th beats 94% of the NCAAF WRs; 1 is the best of however many the row says. Higher is always better, whichever way the stat runs. Red to green by where the placing sits. A stat with no better end is left unpainted.

all 5 shown▶
Playing Timevs NCAAF WRs▶
Games Played13
EfficiencyOffensevs NCAAF WRs▶
Points Added per Play0.59—
Total Points Added36.482nd277/1543
ReceivingOffensevs NCAAF WRs▶
Receptions2.865th531/1529
Receiving Yards35.661st604/1529
Yards per Catch12.542nd485/841
Receiving Touchdowns691st103/1529
Longest Catch3536th967/1529
Ball SecurityOffensevs NCAAF WRs▶
Fumbles26th1419/1569
Fumbles Lost111th1264/1569
Special Teamsvs NCAAF WRs▶
Kick Returns1483rd78/472
Kick Return Yards35.987th62/472
Kick Return Touchdowns198th4/472
13 games
DateOppRECREC YDSREC TDLONG REC
DUKEDec 7, 2025@UVAUVA#16231035
DUKENov 29, 2025WAKEWAKE229130
DUKENov 22, 2025@UNCUNC330022
DUKENov 15, 2025UVAUVA#20135035
DUKENov 8, 2025@CONNCONN223017
DUKENov 1, 2025@CLEMCLEM3203
DUKEOct 18, 2025GTGT#12569124
DUKEOct 5, 2025@CALCAL2603
DUKESep 27, 2025@SYRSYR559023
DUKESep 20, 2025NCSUNCSU363133
DUKESep 14, 2025@TULNTULN129129
DUKESep 6, 2025ILLILL#11333024
DUKEAug 28, 2025ELONELON554221
By season5 seasons
SeasonGPRECREC YDSYDS/RECREC TDLONG RECRUSH YDSRUSH TD
2025DUKE133746312.5635——
2024DUKE12423859.2365——
2023DUKE9252058.2019——
2022DUKE112736813.6541——
2021DUKE3155.005——

About College Football Research

▶

Every number the site holds for a college football team and the players who played for it, in one place. Pick a team, a season and a set of games, and read it. Nothing here needs an account.

Where the numbers come from

The same tables the boards read, resolved through one shared definition per stat. A rate is computed over the whole window rather than averaged across games, so a season figure is not the mean of the nightly ones.