Usage / Role
18%
Rotational defensive role
Player Dossier
2025-2025James Madison
S • 6'1" • 208 lbs • Nashua, NH, USA
Curtis Harris-Lopez shows a ball-hunting defender profile with 6 disruption score.
Usage / Role
18%
Rotational defensive role
Impact Production
14
Developing production for a safety
Reliability
15
Sporadic game-to-game production
Star Power
19
Limited ceiling signals so far
Career Arc
Value trend by season
Best season by Season Value: 2025 Postseason · James Madison
Snapshot
Player Story
Curtis Harris-Lopez built his college career in 2025 as a safety from Nashua, NH wearing No. 21, spending time with James Madison. The clearest part of Curtis Harris-Lopez's career was his return-game role: 246...
Read the storyCurtis Harris-Lopez, S. Best season Best season by Season Value: 2025 Postseason · James Madison. Curtis Harris-Lopez shows a ball-hunting defender profile with 6 disruption score.
Stat Footprint
Quick Answers
Season Ledger
| Season | Team | Games | Tackles | TFL | Sacks | QB Hur | PD | TD | Overall |
|---|---|---|---|---|---|---|---|---|---|
| 2025 Postseason | James Madison | 10 | 2 | - | 0 | - | - | 0 | 12.9 |
| 2025 Regular Season | James Madison | 10 | 10 | - | 0 | - | 1 | 2 | 12.9 |
Related Context
Transfer Portal History
| Season | Path | Movement | Value | Date |
|---|---|---|---|---|
| 2025 | Unlisted to James Madison | Unlisted to G5/FCS | 75.2 | Dec 29, 2024 |
Curtis Harris-Lopez played S for James Madison. Across 1 tracked season, Curtis Harris-Lopez recorded 12 tackles and 2 touchdowns. His top tracked season came in 2025 with James Madison.
Lead takeaway
Best season by value score: 2025 Postseason
James Madison paired 1 primary output with 6 efficiency.
Supporting note
2025 Postseason role shape
impact-led usage with 6 efficiency.
Supporting note
Career value stayed steady
2025 Regular Season tracked close to the prior stop by season value score.
Supporting note
Peak game by takeover score: App State
Win with 1 impact plays across the defensive snap sheet. It landed in the 100th percentile of the selected season.
Analysis workspace
Filter the strongest season sample, inspect game-level shape, and then drop into the full log without losing the story of the year.
Understand the selected season before dropping into the full game log.
Games
10
Havoc Plays / G
0.1
Efficiency
6
Usage
1.1
Consistency
3.3
Best Game by takeover score
App State
Active game
Hover over a point
Hover or select a game to keep its context visible here without the page shifting around.
Follow how the selected stat changes from one game to the next. Spikes mark standout outings, while dips show quieter weeks.
Chronological game order.
Game by game trend chart. Oregon: 0. Weber State: 0. Liberty: 0. Georgia Southern: 0. Georgia State: 0. Louisiana: 0. Old Dominion: 0. App State: 1. Coastal Carolina: 0. Troy: 0
Each dot is a game. Farther right means the player carried more of the workload, and higher means they were more efficient with those chances.
Low volumeHigh quality
High volumeHigh quality
Low volumeLower quality
High volumeLower quality
Volume on the x-axis, quality on the y-axis.
Volume versus efficiency scatter chart. Oregon: 2 by 8.3. Weber State: 2 by 8.3. Liberty: 1 by 4.2. Georgia Southern: 1 by 4.2. Georgia State: 2 by 8.3. Old Dominion: 2 by 8.3. App State: 1 by 14.2. Troy: 1 by 4.2
Compare how this player performed across different situations. "Games" shows how many matchups are included in each split.
Dense stat lines with inline explanations and season-linked highlights.
10 games
Featured metric
Havoc Plays
Top game by takeover score
App State
Best efficiency game
14.2 vs App State
| Result | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Sun 12/21 | @ Oregon | L 34-51 | 2 | 1 | — | 0 | 0 | — | 0 | — | — |
| Sat 12/6 | vs Troy | W 31-14 | 1 | 0 | — | 0 | 0 | — | 0 | — | — |
| Sat 11/29 | @ Coastal Carolina | W 59-10 | — | — | — | — | — | — | — | — | — |
| Sat 11/15 | vs App State | W 58-10 | 1 | 0 | — | 0 | 0 | — | 1 | — | — |
| Sat 10/18 | vs Old Dominion | W 63-27 | 2 | 1 | — | 0 | 0 | — | 0 | — | — |
| Sat 10/11 | vs Louisiana | W 24-14 | — | — | — | — | — | — | — | — | — |
| Sat 10/4 | @ Georgia State | W 14-7 | 2 | 1 | — | 0 | 0 | — | 0 | — | — |
| Sat 9/27 | vs Georgia Southern | W 35-10 | 1 | 0 | — | 0 | 0 | — | 0 | — | — |
| Sat 9/20 | @ Liberty | W 31-13 | 1 | 1 | — | 0 | 0 | — | 0 | — | — |
| Sat 8/30 | vs Weber State | W 45-10 | 2 | 2 | — | 0 | 0 | — | 0 | — | — |
Player Story
Curtis Harris-Lopez built his college career in 2025 as a safety from Nashua, NH wearing No. 21, spending time with James Madison. The clearest part of Curtis Harris-Lopez's career was his return-game role: 246 return yards and 1 return touchdown across 13 career games in the available record. His largest box-score season came in 2025 with James Madison. Those numbers show where he fit, how often the ball or action found him, and how his role developed over time.
The value of the career arc is that it connects production to role, not just a name on a roster. His career also includes 12 tackles, giving the story more than a single-category snapshot. With 13 career games in the available record, his career has enough shape to show both opportunity and production across James Madison.
The arc is straightforward: Curtis Harris-Lopez moved through the depth chart, found a larger role, and turned that opportunity into production that can be understood through standard football numbers.
Track team changes, role shifts, and season-to-season movement.
James Madison
2025
Opening stop
Season Value Progression
| Season | Team | Primary | Efficiency | Usage | Delta |
|---|---|---|---|---|---|
| 2025 Postseason | James Madison | 1 | 6 | 1.1 | — |
| 2025 Regular Season | James Madison | 1 | 6 | 1.1 | 0 |
#1 Featured game
@ Syracuse
Week 5
Game with 3 impact plays across the defensive snap sheet.
3
Havoc Plays
77.5 takeover
3 disruption/tackle impact with 77.5 takeover score.
#2
@ Army
Week 11
1.5
Havoc Plays
67.9 takeover
Game with 1.5 impact plays across the defensive snap sheet.
1.5 disruption/tackle impact with 67.9 takeover score.
#3
@ Boston College
Week 2
1
Havoc Plays
52.9 takeover
Game with 1 impact plays across the defensive snap sheet.
1 disruption/tackle impact with 52.9 takeover score.
#4
vs No. 111 App State
Week 12 · W 58-10 · Conference game
1
Havoc Plays
41.4 takeover
Win with 1 impact plays across the defensive snap sheet.
1 disruption/tackle impact with 41.4 takeover score.
#5
@ No. 4 Oregon
Week 1 · L 34-51 · Postseason · Ranked opponent
0
Havoc Plays
8.3 takeover
Loss with 0 impact plays across the defensive snap sheet.
0 disruption/tackle impact with 8.3 takeover score.
#1 Season by Season Value
2025 Postseason · James Madison
1 primary output · 6 efficiency · 1.1 usage
12.9
#2
2025 Regular Season · James Madison
12.9
1 primary · 6 efficiency · 1.1 usage
2
Impact games
1
Splash games
0
10+ tackle games
Next best actions
Move from the player story into the game log, career arc, team context, and video shelf.