Quarterback, Old Dominion (from UCF), 2018–⁠22

D.J. Mack Jr.

Number
No. 8
Height
6′3″
Weight
215 lb
Class (2022)
Senior
Hometown
Norfolk, VA

D.J. Mack Jr. played quarterback at UCF (2018–⁠20) and Old Dominion (2021–⁠22).

Career highs

348passing yards, career highvs. Memphis, 2018120rushing yards, career highat East Carolina, 20184rushing touchdowns, career highvs. Memphis, 2018

Team titles: American champions, 2018

Passing

Passing yards, season by season, with his team’s record
SeasonTeamCmpAttPctYdsY/ATDInt
2018UCF5110051.06196.231
2019UCF193063.32197.341
2021Old Dominion8616751.58595.157
2022Old Dominion1333.3217.010
Career15730052.31,7185.7139

Rushing

SeasonTeamCarYdsAvgTDLong
2018UCF693374.9670
2019UCF411794.4316
2021Old Dominion761762.3642
2022Old Dominion5336.6120
Career1917253.81670

Season lines from CollegeFootballData, regular season and bowls.

On the roster

SeasonTeamNo.PosClassHtWt
2018UCF8QBYr 1
2019UCF8QBYr 2
2020UCF8QBYr 3
2021Old Dominion8QBYr 4
2022Old Dominion8QBSr. (Yr 5)6′3″215

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/playPctileMedianTotalUsageAdj. passAdj. rush
2018UCF1680.1934th (n=160)0.2632.124%0.190.20
2019UCF700.25––17.611%–0.19
2021Old Dominion1280.15––19.035%0.20–
2022Old Dominion70.64––4.5–––

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

2022 Old Dominion 4 games, 21 passing yards, 1 TD
DateOpponentResultCmpAttYdsTDIntRush
Oct 1vs.LibertyL 24–⁠38–––––2
Oct 15atCoastal CarolinaW 49–⁠2111211026
Oct 22vs.Georgia SouthernL 23–⁠28020005
Nov 5vs.MarshallL 0–⁠12––––––
2021 Old Dominion 7 games, 859 passing yards, 5 TD
DateOpponentResultCmpAttYdsTDIntRush
Sep 3atWake ForestL 10–⁠42721390213
Sep 11vs.HamptonW 47–⁠711221621057
Sep 18atLibertyL 17–⁠45152713411−24
Sep 25vs.BuffaloL 34–⁠3524412241184
Oct 2atUTEPL 21–⁠2820341941121
Oct 9atMarshallL 13–⁠209221061226
Nov 13vs.Florida AtlanticW 30–⁠16–––––−1
2019 UCF 8 games, 179 rushing yards, 3 TD
DateOpponentResultCmpAttYdsTDIntRush
Sep 28vs.UConnW 56–⁠21913971027
Oct 19vs.East CarolinaW 41–⁠2824491033
Oct 26atTempleW 63–⁠2122111012
Nov 2vs.HoustonW 44–⁠2912600–
Nov 8atTulsaL 31–⁠34–––––4
Nov 23atTulaneW 34–⁠31112109
Nov 29vs.South FloridaW 34–⁠711370036
Dec 23 ✦vs.MarshallW 48–⁠2537170158
2018 UCF 9 games, 619 passing yards, 3 TD
DateOpponentResultCmpAttYdsTDIntRush
Aug 30atUConnW 56–⁠1722100070
Sep 8vs.South Carolina StateW 38–⁠01470041
Sep 29vs.PittsburghW 45–⁠14–––––0
Oct 6vs.SMUW 48–⁠20137003
Oct 13atMemphisW 31–⁠30–––––−4
Oct 20atEast CarolinaW 37–⁠1012206900120
Nov 23atSouth FloridaW 38–⁠10514810051
Dec 1vs.MemphisW 56–⁠4119273482059
Jan 1 ✦vs.LSUL 32–⁠4011309711−3

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.