Running back, James Madison (from Holy Cross), 2021–⁠24

Tyler Purdy

Number
No. 20
Height
5′11″
Weight
208 lb
Class (2024)
Senior
Hometown
Chesterfield, MO

Tyler Purdy played running back at Holy Cross (2021–⁠23) and James Madison (2024).

Career highs

106rushing yards, career highvs. Georgetown, 202385receiving yards, career highat Fordham, 2023

Team titles: Patriot League champions, 2021, 2022 and 2023

Rushing

Rushing yards, season by season, with his team’s record
SeasonTeamCarYdsAvgTDLong
2021Holy Cross10424.2114
2022Holy Cross241034.3018
2023Holy Cross594407.5350
2024James Madison371704.6213
Career1307555.8650

Receiving

SeasonTeamRecYdsAvgTDLong
2021Holy Cross133.013
2022Holy Cross815018.8236
2023Holy Cross1416611.9134
2024James Madison6447.3019
Career2936312.5436

Returns

SeasonTeamKRYdsTD
2021Holy Cross2370
2022Holy Cross2280
2023Holy Cross4870
Career81520

Season lines from CollegeFootballData, regular season and bowls.

On the roster

SeasonTeamNo.PosClassHtWt
2021Holy Cross20RBFr.
2022Holy Cross20RBSo.
2023Holy Cross20RBJr.
2024James Madison20RBSr.5′11″208

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
2021Holy Cross (FCS)41.17––4.7–
2022Holy Cross (FCS)180.38––6.8–
2023Holy Cross (FCS)620.5599th (n=450)0.1734.210%
2024James Madison430.26––11.08%

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

2024 James Madison 8 games, 170 rushing yards, 2 TD
DateOpponentResultCarRush ydsRush TDRecRec ydsRec TD
Aug 31atCharlotteW 30–⁠72160130
Sep 7vs.Gardner-WebbW 13–⁠610581–––
Sep 21atNorth CarolinaW 70–⁠5062202250
Sep 28vs.Ball StateW 63–⁠74160–––
Oct 5atUL MonroeL 19–⁠214161140
Oct 10vs.Coastal CarolinaW 39–⁠78360140
Oct 19atGeorgia SouthernL 14–⁠28360–––
Oct 26vs.Southern MissW 32–⁠15–––180
2023 Holy Cross 11 games, 440 rushing yards, 3 TD
DateOpponentResultCarRush ydsRush TDRecRec ydsRec TD
Sep 1vs.MerrimackW 42–⁠2021602170
Sep 9atBoston CollegeL 28–⁠3142102230
Sep 16atYaleW 49–⁠2485101170
Sep 23vs.ColgateW 47–⁠74611–––
Sep 30vs.HarvardL 28–⁠386290–––
Oct 7atBucknellW 55–⁠275311160
Oct 21vs.LafayetteL 35–⁠383401−20
Oct 28atFordhamW 49–⁠4753015851
Nov 4atLehighW 28–⁠248430–––
Nov 11atArmyL 14–⁠1764802200
Nov 18vs.GeorgetownW 31–⁠1081060–––
2022 Holy Cross 8 games, 103 rushing yards
DateOpponentResultCarRush ydsRush TDRecRec ydsRec TD
Sep 2atMerrimackW 31–⁠1751702430
Sep 10atBuffaloW 37–⁠311401140
Sep 17vs.YaleW 38–⁠142701361
Oct 29vs.FordhamW 53–⁠5211601180
Nov 12vs.BryantW 36–⁠294300180
Nov 19atGeorgetownW 47–⁠1041001251
Dec 3vs.New HampshireW 35–⁠196200–––
Dec 10atSouth Dakota StateL 21–⁠411−10160
2021 Holy Cross 1 game, 42 rushing yards, 1 TD
DateOpponentResultCarRush ydsRush TDRecRec ydsRec TD
Sep 4atUConnW 38–⁠2810421131

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.