John LopezC
ACL Royals
Age 20
R/R
5'5" / 170 lbs
ROK
HR -15%K -8%
Svc 0.0 · Ctrl thru 2037
2026 FULL-SEASON PROJECTIONpark-neutral Marcel · 41 proj PA
wRC+†53
AVG/OBP/SLG.200 / .261 / .276
PA3
HR0
K%30
BB%7
ISO77
MLB%0%
Value2026 · WAR
━ projected WAR━ paid WAR ($/8M) surplus deficit+$2M ctrl surplus
Tools · Contract
Career Stats + Projections
Real MLB stats plus park-adjusted projections — this season (so far / rest / full), then future seasons and career totals.
basis chips:
RAW = as recorded ·
CTX = with park/league context ·
A+C = actual + context combined ·
MLE = level/park-neutral
Methodology▸ how these numbers are built
All seasons translated to park-neutral MLB-equivalent (MLE) and combined per year. 2026 = actual YTD + projected ROS + total. 2027+ via Advanced Marcel + aging curve. Catcher framing: only 2026 Statcast framing is modeled (Baseball Savant server-caches the leaderboard to the current season); prior-year framing is unmodeled — projections for established framers may run below FG-DC by 1-3 WAR.
| Year | Age | Lvl | Team | MLB% | PA | AB | H | 2B | 3B | HR | BB | SO | HBP | SB | CS | AVG | OBP | SLG | OPS | ISO | BABIP | K% | BB% | wOBA | wRC+ | BAT | RUN | FLD | POS | REP | WAR |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ▸ Career — actual stats, one row per stint (as recorded, no adjustments) | |||||||||||||||||||||||||||||||
| 2024 | 18 | ROK | FCL Pirates | — | 24 | 21 | 5 | 2 | 0 | 0 | 3 | 6 | 0 | 0 | 0 | 238 | 333 | 333 | 667 | 95 | 333 | 25 | 12 | 307 | 94 | -0 | +0 | — | — | +1 | 0.0 |
| 2025 | 19 | ROK | ACL Royals | — | 22 | 20 | 4 | 1 | 0 | 0 | 2 | 5 | 0 | 0 | 0 | 200 | 273 | 250 | 523 | 50 | 267 | 23 | 9 | 245 | 52 | -1 | +0 | — | — | +0 | -0.1 |
| ▸ Career — adjusted (every ACTUAL line translated to park/league-neutral MLB equivalents) | |||||||||||||||||||||||||||||||
| 2024 | 18 | ROK MLE | FCL Pirates | — | 24 | 22 | 3 | 1 | 0 | 0 | 2 | 8 | 0 | 0 | 0 | 136 | 208 | 182 | 390 | 45 | 268 | 33 | 8 | 212 | 30 | -2 | +0 | — | — | +1 | -0.2 |
| 2025 | 19 | ROK MLE | ACL Royals | — | 22 | 21 | 3 | 1 | 0 | 0 | 1 | 7 | 0 | 0 | 0 | 143 | 182 | 190 | 372 | 48 | 210 | 32 | 5 | 164 | -3 | -3 | +0 | — | — | +0 | -0.2 |
| 2024 | 18 | ROK MLE | FCL Pirates | — | 24 | 22 | 3 | 1 | 0 | 0 | 2 | 8 | 0 | 0 | 0 | 136 | 208 | 182 | 390 | 45 | 214 | 33 | 8 | 212 | 30 | — | — | — | — | — | — |
| 2024 | 18 | ROK RAW | FCL Pirates | — | 24 | 21 | 5 | 2 | 0 | 0 | 3 | 6 | 0 | 0 | 0 | 238 | 333 | 333 | 667 | 95 | 333 | 25 | 12 | 307 | 30 | — | — | — | — | — | — |
| 2025 | 19 | ROK MLE | ACL Royals | — | 22 | 21 | 3 | 1 | 0 | 0 | 1 | 7 | 0 | 0 | 0 | 143 | 182 | 190 | 372 | 48 | 214 | 32 | 5 | 164 | -3 | — | — | — | — | — | — |
| 2025 | 19 | ROK RAW | ACL Royals | — | 22 | 20 | 4 | 1 | 0 | 0 | 2 | 5 | 0 | 0 | 0 | 200 | 273 | 250 | 523 | 50 | 267 | 23 | 9 | 245 | -3 | — | — | — | — | — | — |
| 2024 | 18 | ROK MLE | FCL Pirates | — | 24 | 22 | 3 | 1 | 0 | 0 | 2 | 8 | 0 | 0 | 0 | 136 | 208 | 182 | 390 | 45 | 268 | 33 | 8 | 212 | 30 | — | — | — | — | — | — |
| 2025 | 19 | ROK MLE | ACL Royals | — | 22 | 21 | 3 | 1 | 0 | 0 | 1 | 7 | 0 | 0 | 0 | 143 | 182 | 190 | 372 | 48 | 210 | 32 | 5 | 164 | -3 | — | — | — | — | — | — |
| ▸ Model inputs — neutral MLE (past 3 seasons + 2026 so far) | |||||||||||||||||||||||||||||||
| 2024 | 18 | ROK MLE | FCL Pirates | — | 24 | 22 | 3 | 1 | 0 | 0 | 2 | 8 | 0 | 0 | 0 | 136 | 208 | 182 | 390 | 45 | 268 | 33 | 8 | 212 | 30 | — | — | — | — | — | — |
| 2025 | 19 | ROK MLE | ACL Royals | — | 22 | 21 | 3 | 1 | 0 | 0 | 1 | 7 | 0 | 0 | 0 | 143 | 182 | 190 | 372 | 48 | 210 | 32 | 5 | 164 | -3 | — | — | — | — | — | — |
| ▸ 2026 season | |||||||||||||||||||||||||||||||
| 2026 | 20 | MLB MLE | KC | 0% | 3 | 3 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 291 | 33 | 0 | 247 | 53 | -0 | +0 | +0 | +0 | +0 | 0.0 | |||||
| ▸ Career projection (2027+) — MLB context, MLB playing time (PA × MLB%) | |||||||||||||||||||||||||||||||
| 2027 | 21 | MLB MLE | KC | 34% | 127 | 116 | 24 | 5 | 1 | 1 | 9 | 37 | 1 | 1 | 0 | 207 | 270 | 293 | 563 | 86 | 292 | 29 | 7 | 257 | 60 | -6 | +0 | +0 | +2 | +3 | -0.1 |
| 2028 | 22 | MLB MLE | KC | 50% | 269 | 245 | 51 | 11 | 1 | 3 | 20 | 77 | 2 | 2 | 1 | 208 | 273 | 298 | 571 | 90 | 293 | 29 | 7 | 265 | 65 | -11 | +0 | +0 | +5 | +6 | -0.1 |
| 2029 | 23 | MLB MLE | KC | 58% | 370 | 337 | 73 | 16 | 2 | 5 | 27 | 105 | 3 | 3 | 1 | 217 | 281 | 320 | 601 | 104 | 293 | 28 | 7 | 269 | 68 | -14 | +0 | +0 | +7 | +8 | 0.1 |
| 2030 | 24 | MLB MLE | KC | 61% | 439 | 400 | 86 | 18 | 2 | 6 | 33 | 123 | 3 | 4 | 1 | 215 | 280 | 315 | 595 | 100 | 294 | 28 | 8 | 272 | 70 | -16 | +0 | +0 | +8 | +10 | 0.2 |
| 2031 | 25 | MLB MLE | KC | 63% | 480 | 437 | 95 | 20 | 3 | 7 | 36 | 135 | 4 | 4 | 1 | 217 | 283 | 325 | 608 | 108 | 294 | 28 | 8 | 273 | 71 | -17 | +0 | +0 | +9 | +10 | 0.3 |
| 2032 | 26 | MLB MLE | KC | 64% | 503 | 456 | 99 | 21 | 3 | 7 | 38 | 141 | 4 | 4 | 2 | 217 | 283 | 322 | 606 | 105 | 294 | 28 | 8 | 273 | 71 | -17 | +0 | +0 | +9 | +11 | 0.3 |
| 2033 | 27 | MLB MLE | KC | 65% | 514 | 466 | 102 | 22 | 3 | 7 | 39 | 145 | 4 | 4 | 2 | 219 | 285 | 324 | 609 | 105 | 294 | 28 | 8 | 273 | 71 | -18 | +0 | +0 | +9 | +11 | 0.3 |
| 2034 | 28 | MLB MLE | KC | 65% | 516 | 467 | 101 | 21 | 3 | 7 | 40 | 146 | 4 | 4 | 2 | 216 | 284 | 319 | 603 | 103 | 293 | 28 | 8 | 272 | 70 | -18 | +0 | -1 | +9 | +11 | 0.2 |
| 2035 | 29 | MLB MLE | KC | 65% | 511 | 462 | 99 | 21 | 2 | 7 | 40 | 146 | 4 | 4 | 1 | 214 | 283 | 314 | 596 | 100 | 293 | 29 | 8 | 270 | 69 | -19 | +0 | -1 | +9 | +11 | 0.0 |
| 2027 | 21 | MLB CTX | KC | 34% | 43 | 40 | 8 | 2 | 0 | 0 | 3 | 13 | 0 | 0 | 0 | 200 | 256 | 250 | 506 | 50 | 289 | 30 | 7 | 249 | 60 | -2 | +0 | +0 | +1 | +1 | -0.0 |
| 2028 | 22 | MLB CTX | KC | 50% | 134 | 122 | 25 | 5 | 1 | 1 | 10 | 38 | 1 | 1 | 0 | 205 | 271 | 287 | 558 | 82 | 289 | 28 | 7 | 256 | 65 | -6 | +0 | +0 | +2 | +3 | -0.0 |
| 2029 | 23 | MLB CTX | KC | 58% | 213 | 193 | 42 | 9 | 1 | 3 | 16 | 60 | 2 | 2 | 1 | 218 | 284 | 321 | 606 | 104 | 290 | 28 | 8 | 260 | 68 | -8 | +0 | +0 | +4 | +5 | 0.0 |
| 2030 | 24 | MLB CTX | KC | 61% | 268 | 244 | 52 | 11 | 2 | 3 | 20 | 75 | 2 | 2 | 1 | 213 | 278 | 311 | 590 | 98 | 291 | 28 | 7 | 263 | 70 | -9 | +0 | +0 | +5 | +6 | 0.1 |
| 2031 | 25 | MLB CTX | KC | 63% | 301 | 274 | 59 | 12 | 2 | 4 | 22 | 85 | 2 | 2 | 1 | 215 | 279 | 318 | 596 | 102 | 291 | 28 | 7 | 263 | 71 | -10 | +0 | +0 | +5 | +7 | 0.1 |
| 2032 | 26 | MLB CTX | KC | 64% | 321 | 291 | 62 | 13 | 2 | 4 | 24 | 90 | 3 | 3 | 1 | 213 | 280 | 313 | 593 | 100 | 291 | 28 | 7 | 264 | 71 | -11 | +0 | +0 | +6 | +7 | 0.2 |
| 2033 | 27 | MLB CTX | KC | 65% | 334 | 303 | 65 | 14 | 2 | 4 | 25 | 94 | 3 | 3 | 1 | 215 | 281 | 314 | 594 | 99 | 291 | 28 | 7 | 264 | 71 | -11 | +0 | +0 | +6 | +7 | 0.2 |
| 2034 | 28 | MLB CTX | KC | 65% | 335 | 303 | 65 | 14 | 2 | 4 | 26 | 95 | 3 | 3 | 1 | 215 | 283 | 314 | 597 | 99 | 290 | 28 | 8 | 263 | 70 | -12 | +0 | -0 | +6 | +7 | 0.1 |
| 2035 | 29 | MLB CTX | KC | 65% | 332 | 300 | 63 | 13 | 2 | 4 | 26 | 95 | 3 | 2 | 1 | 210 | 280 | 307 | 586 | 97 | 289 | 29 | 8 | 261 | 69 | -12 | +0 | -1 | +6 | +7 | 0.0 |
| ▸ Career Totals | |||||||||||||||||||||||||||||||
| ▸ Career totals — MLB only (actual + projected) | |||||||||||||||||||||||||||||||
| Career | — | A+C | — | 2281 | 2070 | 441 | 93 | 14 | 27 | 172 | 645 | 19 | 18 | 7 | 213 | 280 | 311 | 590 | 98 | 293 | 28 | 8 | 262 | 69 | -82 | +1 | -1 | +41 | +49 | 0.8 | |
| / 162G | — | A+C | — | 650 | 590 | 126 | 27 | 4 | 8 | 49 | 184 | 5 | 5 | 2 | 214 | 280 | 314 | 593 | 100 | 294 | 28 | 8 | 262 | 69 | -23 | +0 | -0 | +12 | +14 | 0.2 | |
| Career | — | MLE | — | 3778 | 3432 | 736 | 157 | 20 | 50 | 285 | 1071 | 29 | 30 | 11 | 214 | 280 | 316 | 596 | 101 | 294 | 28 | 8 | 270 | 69 | -135 | +2 | -2 | +67 | +81 | 1.2 | |
| / 162G | — | MLE | — | 650 | 590 | 127 | 27 | 3 | 9 | 49 | 184 | 5 | 5 | 2 | 215 | 281 | 317 | 598 | 102 | 295 | 28 | 8 | 270 | 69 | -24 | +0 | -0 | +12 | +14 | 0.2 | |