Quarterback, East Carolina, 2018–⁠22

Holton Ahlers

Number
No. 12
Height
6′4″
Weight
230 lb
Class (2022)
Senior
Hometown
Greenville, NC
Born
Nov 10, 1999

Holton Ahlers played quarterback at East Carolina (2018–⁠22).

At a glance

Best season
3,708
Passing yards, 2022 (East Carolina, 8–⁠5)
Best game
498 yards
At SMU, week 11, 2019: No. 1 passing game in FBS that week
National rank
No. 10
In FBS in passing yards, 2022

Career highs

535passing yards, career highvs. Cincinnati, 20196touchdown passes, career hightwice; last vs. South Florida, 2022130rushing yards, career highvs. UConn, 20182rushing touchdowns, career highthree times; last at BYU, 2022

Passing

Passing yards, season by season, with his team’s record
SeasonTeamCmpAttPctYdsY/ATDInt
2018East Carolina12726248.51,7856.8123
2019East Carolina26444259.73,3877.72110
2020East Carolina16526961.31,9277.2189
2021East Carolina25641461.83,1267.61810
2022East Carolina31546967.23,7087.9285
Career1,1271,85660.713,9337.59737

Rushing

SeasonTeamCarYdsAvgTDLong
2018East Carolina1195925.0653
2019East Carolina1083593.3636
2020East Carolina541092.0175
2021East Carolina1162041.8634
2022East Carolina721822.5637
Career4691,4463.12575

Season lines from CollegeFootballData, regular season and bowls.

On the roster

SeasonTeamNo.PosClassHtWt
2018East Carolina12QBYr 1
2019East Carolina12QBYr 2
2020East Carolina12QBYr 3
2021East Carolina12QBYr 4
2022East Carolina12QBSr. (Yr 5)6′4″230

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
2018East Carolina3680.2445th (n=160)0.2687.547%0.220.21
2019East Carolina5470.3166th (n=155)0.27169.160%0.450.15
2020East Carolina3190.2029th (n=116)0.2762.555%0.300.06
2021East Carolina5110.3247th (n=145)0.33162.958%0.440.33
2022East Carolina5380.3873rd (n=250)0.32205.159%0.430.34

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 East Carolina 13 games, 3,708 passing yards, 28 TD
DateOpponentResultCmpAttYdsTDIntRush
Sep 3vs.NC StateL 20–⁠2125412672257
Sep 10vs.Old DominionW 39–⁠21253927020−3
Sep 17vs.CampbellW 49–⁠10172026330−5
Sep 24vs.NavyL 20–⁠2322342672123
Oct 1vs.South FloridaW 48–⁠283141465609
Oct 8atTulaneL 9–⁠2432512881217
Oct 15vs.MemphisW 47–⁠4526343041010
Oct 22vs.UCFW 34–⁠133036311106
Oct 28atBYUW 27–⁠2415221970018
Nov 11atCincinnatiL 25–⁠2726462802014
Nov 19vs.HoustonL 3–⁠42153018200−11
Nov 26atTempleW 49–⁠46253731430−1
Dec 27 ✦vs.Coastal CarolinaW 53–⁠2926383005048
2021 East Carolina 12 games, 3,126 passing yards, 18 TD
DateOpponentResultCmpAttYdsTDIntRush
Sep 2atApp StateL 19–⁠3322402952114
Sep 11vs.South CarolinaL 17–⁠20112477024
Sep 18atMarshallW 42–⁠38304836820−12
Sep 25vs.Charleston SouthernW 31–⁠281726238124
Oct 2vs.TulaneW 52–⁠2921322882012
Oct 9atUCFL 16–⁠20203221911−1
Oct 23atHoustonL 24–⁠312337278205
Oct 28vs.South FloridaW 29–⁠1421352201078
Nov 6vs.TempleW 45–⁠316241973133
Nov 13atMemphisW 30–⁠2929463130246
Nov 20atNavyW 38–⁠3527324053048
Nov 26vs.CincinnatiL 13–⁠35193822811−27
2020 East Carolina 8 games, 1,927 passing yards, 18 TD
DateOpponentResultCmpAttYdsTDIntRush
Sep 26vs.UCFL 28–⁠5114292153155
Oct 3atGeorgia StateL 29–⁠49295024203−13
Oct 10atSouth FloridaW 44–⁠2417262223035
Oct 30atTulsaL 30–⁠343850330315
Nov 7vs.TulaneL 21–⁠38274335130−26
Nov 13atCincinnatiL 17–⁠559208703−18
Nov 21atTempleW 28–⁠311221822170
Nov 28vs.SMUW 52–⁠382029298401
2019 East Carolina 12 games, 3,387 passing yards, 21 TD
DateOpponentResultCmpAttYdsTDIntRush
Aug 31atNC StateL 6–⁠3422391680111
Sep 7vs.Gardner-WebbW 48–⁠918291951178
Sep 14atNavyL 10–⁠4211231380136
Sep 21vs.William & MaryW 19–⁠720342101060
Sep 28atOld DominionW 24–⁠21821202221
Oct 3vs.TempleL 17–⁠2719392292026
Oct 19atUCFL 28–⁠4123373131147
Oct 26vs.South FloridaL 20–⁠45182821701−3
Nov 2vs.CincinnatiL 43–⁠4632525354121
Nov 9atSMUL 51–⁠5932424986025
Nov 23atUConnW 31–⁠2434503741222
Nov 30vs.TulsaL 24–⁠4927483083035
2018 East Carolina 10 games, 1,785 passing yards, 12 TD
DateOpponentResultCmpAttYdsTDIntRush
Sep 8vs.North CarolinaW 41–⁠190100036
Sep 22atSouth FloridaL 13–⁠201230048
Sep 29vs.Old DominionW 37–⁠351340063
Oct 6atTempleL 6–⁠490400056
Oct 13vs.HoustonL 20–⁠4211181371045
Oct 20vs.UCFL 10–⁠3729524061169
Nov 3vs.MemphisL 41–⁠5934624493057
Nov 10atTulaneL 18–⁠2421673602167
Nov 17vs.UConnW 55–⁠21223124240130
Nov 23atCincinnatiL 6–⁠568221841121

Box scores from CollegeFootballData, 2004 on. ✦ postseason; ★ a career high on file.

Before the draft

MVP of the 2023 Hula Bowl; MVP of the 2023 NFLPA Collegiate Bowl.

DrillPro day 2023
Height6′2¾″
Weight237 lb
Arm length32¼″
Hand size9¾″
40-yard dash4.95 s
10-yard split1.77 s
Vertical jump28″
Broad jump9′3″
3-cone drill7.21 s
20-yard shuttle4.53 s

Pre-draft measurables: Wikipedia (CC BY-SA). Rosters and honors: Wikipedia (CC BY-SA).

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.