Keith, Ryan
No. 8, Seton Hill University, 2026 season
Rushing
- Rushing attempts
- 2
- Rushing yards gained
- 3
- Rushing yards lost
- 3
- Rushing yards
- 0
- Yards per rush
- 0.0
- Rushing touchdowns
- 0
- Longest rush
- 3
- Rushing yards per game
- 0.00
Receiving
- Receptions
- 19
- Receiving yards
- 300
- Yards per catch
- 15.79
- Receiving touchdowns
- 2
- Longest reception
- 59
- Receiving yards per game
- 37.50
Defense
- Total tackles
- 0
- Solo tackles
- 0
- Assisted tackles
- 0
- Tackles for loss
- 0
- Tackle-for-loss yards
- 0
- Sacks
- 0
- Sack yards
- 0
- Interceptions
- 0
- Passes broken up
- 0
- Quarterback hurries
- 0
- Forced fumbles
- 0
- Fumble recoveries
- 0
- Blocked kicks
- 0
- Safeties
- 0
Scoring
- Points
- 12
- Touchdowns scored
- 2
- Field goals scored
- 0
- Safeties scored
- 0
Participation
- Games played
- 8
Source: Seton Hill's cumulative statistics (opens in a new tab). Season totals fetched Oct 27, 8:06 PM CT.
Game log
Sat Sep 12 at Lackawanna College
- Receptions
- 3
- Receiving yards
- 54
- Receiving touchdowns
- 1
- Longest reception
- 34
Award score: offense 5.3 · defense 0.0 · special teams 0.0 (opp ×1.00). How it works
From the published box score (opens in a new tab), fetched Sep 26, 4:03 PM CT.
Sat Oct 10 at Slippery Rock
- Rushing attempts
- 1
- Rushing yards gained
- 0
- Rushing yards lost
- 3
- Rushing yards
- -3
- Yards per rush
- -3.0
- Rushing touchdowns
- 0
- Longest rush
- 0
- Receptions
- 2
- Receiving yards
- 25
- Receiving touchdowns
- 0
- Longest reception
- 15
Award score: offense 1.5 · defense 0.0 · special teams 0.0 (opp ×1.15). How it works
From the published box score (opens in a new tab), fetched Oct 17, 2:31 AM CT.
Sat Oct 17 at Gannon University
- Receptions
- 3
- Receiving yards
- 26
- Receiving touchdowns
- 0
- Longest reception
- 12
Award score: offense 1.8 · defense 0.0 · special teams 0.0 (opp ×0.99). How it works
From the published box score (opens in a new tab), fetched Oct 24, 8:33 PM CT.
Game lines come from each game's published box score, fetched as shown under each game, and appear only when the printed name matches this player exactly, so a game the box score spells differently is missing here. Live game state is provisional and is not added here.