Ronnyel Espinoza
2B DSL Cubs Red| Year | Age | Lvl / Team | PA | AVG/OBP/SLG | HR | SB | wRC+ | WAR | MLE AVG/OBP/SLG |
|---|---|---|---|---|---|---|---|---|---|
| 2024 | 18 | ROKDSL Cubs Red | 87 | .215/.407/.308 | 1 | 6 | 34 | — | .139/.279/.181 |
| 2025 | 19 | ROKDSL Cubs Blue | 91 | .246/.449/.354 | 0 | 3 | 57 | — | .151/.303/.205 |
| 2026 | 20 | ROKDSL Cubs Red | 46 | .194/.422/.290 | 0 | 1 | 49 | — | .139/.311/.222 |
| 2027PROJMLE | 21 | MLBCHC | 156 | .204/.293/.285 | 1 | 2 | 67 | 0.0 | |
| 2028PROJ34% MLB | 22 | MLBCHC | 29 | .212/.299/.306 | 0 | 0 | 72 | -0.0 | |
| 2029PROJ50% MLB | 23 | MLBCHC | 82 | .216/.302/.319 | 1 | 1 | 76 | -0.0 |
Tools · Contract
Career Stats + Projections
Methodology▸ how these numbers are built
All seasons translated to park-neutral MLB-equivalent (MLE) and combined per year. 2027 = full-season projection (no games played yet). 2028+ via Advanced Marcel + aging curve.
| 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 | DSL Cubs Red | — | 87 | 65 | 14 | 1 | 1 | 1 | 20 | 15 | 1 | 6 | 2 | 215 | 407 | 308 | 715 | 92 | 265 | 17 | 23 | 340 | 34 | — | — | — | — | — | — |
| 2025 | 19 | ROK | DSL Cubs Blue | — | 91 | 65 | 16 | 3 | 2 | 0 | 22 | 18 | 2 | 3 | 1 | 246 | 449 | 354 | 803 | 108 | 327 | 20 | 24 | 372 | 57 | — | — | — | — | — | — |
| 2026 | 20 | ROK | DSL Cubs Red | — | 46 | 31 | 6 | 1 | 1 | 0 | 13 | 14 | 0 | 1 | 1 | 194 | 422 | 290 | 713 | 97 | 333 | 30 | 28 | 339 | 49 | — | — | — | — | — | — |
| ▸ Career — adjusted (every ACTUAL line translated to park/league-neutral MLB equivalents) | |||||||||||||||||||||||||||||||
| 2024 | 18 | ROK MLE | DSL Cubs Red | — | 87 | 72 | 10 | 1 | 1 | 0 | 13 | 19 | 1 | 6 | 2 | 139 | 279 | 181 | 460 | 42 | 164 | 22 | 15 | 219 | 34 | — | — | — | — | — | — |
| 2025 | 19 | ROK MLE | DSL Cubs Blue | — | 91 | 73 | 11 | 2 | 1 | 0 | 14 | 22 | 2 | 3 | 1 | 151 | 303 | 205 | 509 | 55 | 201 | 24 | 15 | 253 | 57 | — | — | — | — | — | — |
| 2026 | 20 | ROK MLE | DSL Cubs Red | — | 46 | 36 | 5 | 1 | 1 | 0 | 9 | 17 | 0 | 1 | 1 | 139 | 311 | 222 | 533 | 83 | 214 | 37 | 20 | 240 | 49 | — | — | — | — | — | — |
| 2024 | 18 | ROK MLE | DSL Cubs Red | — | 87 | 72 | 10 | 1 | 1 | 0 | 13 | 19 | 1 | 6 | 2 | 139 | 279 | 181 | 460 | 42 | 189 | 22 | 15 | 219 | 34 | — | — | — | — | — | — |
| 2024 | 18 | ROK RAW | DSL Cubs Red | — | 87 | 65 | 14 | 1 | 1 | 1 | 20 | 15 | 1 | 6 | 2 | 215 | 407 | 308 | 715 | 92 | 265 | 17 | 23 | 340 | 34 | — | — | — | — | — | — |
| 2025 | 19 | ROK MLE | DSL Cubs Blue | — | 91 | 73 | 11 | 2 | 1 | 0 | 14 | 22 | 2 | 3 | 1 | 151 | 303 | 205 | 509 | 55 | 208 | 24 | 15 | 253 | 57 | — | — | — | — | — | — |
| 2025 | 19 | ROK RAW | DSL Cubs Blue | — | 91 | 65 | 16 | 3 | 2 | 0 | 22 | 18 | 2 | 3 | 1 | 246 | 449 | 354 | 803 | 108 | 327 | 20 | 24 | 372 | 57 | — | — | — | — | — | — |
| 2026 | 20 | ROK MLE | DSL Cubs Red | — | 46 | 36 | 5 | 1 | 1 | 0 | 9 | 17 | 0 | 1 | 1 | 139 | 311 | 222 | 533 | 83 | 250 | 37 | 20 | 240 | 49 | — | — | — | — | — | — |
| 2026 | 20 | ROK RAW | DSL Cubs Red | — | 46 | 31 | 6 | 1 | 1 | 0 | 13 | 14 | 0 | 1 | 1 | 194 | 422 | 290 | 713 | 97 | 333 | 30 | 28 | 339 | 49 | — | — | — | — | — | — |
| 2024 | 18 | ROK MLE | DSL Cubs Red | — | 87 | 73 | 10 | 1 | 1 | 0 | 13 | 19 | 1 | 6 | 2 | 137 | 279 | 178 | 457 | 41 | 164 | 22 | 15 | 219 | 34 | — | — | — | — | — | — |
| 2025 | 19 | ROK MLE | DSL Cubs Blue | — | 91 | 75 | 11 | 2 | 1 | 0 | 14 | 22 | 2 | 3 | 1 | 147 | 303 | 200 | 503 | 53 | 201 | 24 | 15 | 253 | 57 | — | — | — | — | — | — |
| 2026 | 20 | ROK MLE | DSL Cubs Red | — | 46 | 37 | 5 | 1 | 1 | 0 | 9 | 17 | 0 | 1 | 1 | 135 | 311 | 216 | 527 | 81 | 214 | 37 | 20 | 240 | 49 | — | — | — | — | — | — |
| ▸ Model inputs — neutral MLE (past 3 seasons) | |||||||||||||||||||||||||||||||
| 2024 | 18 | ROK MLE | DSL Cubs Red | — | 87 | 73 | 10 | 1 | 1 | 0 | 13 | 19 | 1 | 6 | 2 | 137 | 279 | 178 | 457 | 41 | 164 | 22 | 15 | 219 | 34 | — | — | — | — | — | — |
| 2025 | 19 | ROK MLE | DSL Cubs Blue | — | 91 | 75 | 11 | 2 | 1 | 0 | 14 | 22 | 2 | 3 | 1 | 147 | 303 | 200 | 503 | 53 | 201 | 24 | 15 | 253 | 57 | — | — | — | — | — | — |
| 2026 | 20 | ROK MLE | DSL Cubs Red | — | 46 | 37 | 5 | 1 | 1 | 0 | 9 | 17 | 0 | 1 | 1 | 135 | 311 | 216 | 527 | 81 | 214 | 37 | 20 | 240 | 49 | — | — | — | — | — | — |
| ▸ 2027 season | |||||||||||||||||||||||||||||||
| ▸ 2027 — full MLE projection (neutral park, full availability) | |||||||||||||||||||||||||||||||
| 2027 | 21 | MLB MLE | CHC | 0% | 156 | 138 | 28 | 4 | 2 | 1 | 16 | 43 | 1 | 2 | 1 | 204 | 293 | 285 | 577 | 80 | 287 | 28 | 10 | 267 | 67 | -6 | +0 | +0 | +1 | +3 | 0.0 |
| ▸ Career projection (2028+) — MLB context, MLB playing time (PA × MLB%) | |||||||||||||||||||||||||||||||
| 2028 | 22 | MLB MLE | CHC | 34% | 86 | 76 | 16 | 2 | 1 | 1 | 9 | 24 | 1 | 1 | 0 | 209 | 297 | 300 | 596 | 91 | 288 | 28 | 10 | 274 | 72 | -3 | +0 | +0 | +0 | +2 | -0.1 |
| 2029 | 23 | MLB MLE | CHC | 50% | 165 | 145 | 31 | 5 | 2 | 2 | 17 | 45 | 2 | 3 | 1 | 213 | 300 | 313 | 613 | 100 | 290 | 27 | 10 | 280 | 76 | -5 | +0 | +0 | +1 | +4 | -0.0 |
| 2030 | 24 | MLB MLE | CHC | 57% | 247 | 218 | 49 | 8 | 3 | 4 | 25 | 66 | 2 | 4 | 1 | 217 | 303 | 324 | 626 | 107 | 291 | 27 | 10 | 285 | 79 | -6 | +0 | +0 | +1 | +5 | 0.1 |
| 2031 | 25 | MLB MLE | CHC | 60% | 315 | 278 | 61 | 10 | 3 | 5 | 31 | 84 | 3 | 5 | 1 | 219 | 305 | 332 | 637 | 113 | 291 | 27 | 10 | 289 | 82 | -7 | +1 | +0 | +1 | +7 | 0.2 |
| 2032 | 26 | MLB MLE | CHC | 62% | 359 | 318 | 69 | 11 | 3 | 6 | 35 | 95 | 3 | 5 | 1 | 221 | 306 | 340 | 645 | 118 | 291 | 26 | 10 | 292 | 84 | -7 | +1 | +0 | +1 | +8 | 0.3 |
| 2033 | 27 | MLB MLE | CHC | 63% | 379 | 336 | 74 | 12 | 4 | 7 | 37 | 101 | 3 | 5 | 1 | 220 | 305 | 337 | 642 | 117 | 290 | 27 | 10 | 291 | 83 | -8 | +1 | +0 | +1 | +8 | 0.3 |
| 2034 | 28 | MLB MLE | CHC | 65% | 386 | 342 | 75 | 12 | 4 | 7 | 38 | 103 | 3 | 4 | 1 | 218 | 303 | 332 | 635 | 114 | 289 | 27 | 10 | 288 | 81 | -9 | +0 | -1 | +1 | +8 | 0.1 |
| 2035 | 29 | MLB MLE | CHC | 65% | 382 | 339 | 73 | 12 | 3 | 6 | 37 | 103 | 3 | 3 | 1 | 215 | 300 | 325 | 625 | 110 | 288 | 27 | 10 | 284 | 79 | -10 | +0 | -1 | +1 | +8 | -0.1 |
| 2028 | 22 | MLB CTX | CHC | 34% | 29 | 26 | 5 | 1 | 0 | 0 | 3 | 8 | 0 | 0 | 0 | 212 | 299 | 306 | 606 | 94 | 293 | 28 | 10 | 278 | 72 | -1 | +0 | +0 | +0 | +1 | -0.0 |
| 2029 | 23 | MLB CTX | CHC | 50% | 82 | 73 | 16 | 3 | 1 | 1 | 8 | 22 | 1 | 1 | 0 | 216 | 302 | 319 | 621 | 103 | 294 | 27 | 10 | 283 | 76 | -2 | +0 | +0 | +0 | +2 | -0.0 |
| 2030 | 24 | MLB CTX | CHC | 57% | 140 | 124 | 27 | 4 | 2 | 2 | 14 | 38 | 1 | 2 | 1 | 219 | 305 | 329 | 634 | 110 | 295 | 27 | 10 | 288 | 79 | -3 | +0 | +0 | +0 | +3 | 0.0 |
| 2031 | 25 | MLB CTX | CHC | 60% | 190 | 167 | 37 | 6 | 2 | 3 | 19 | 51 | 2 | 3 | 1 | 222 | 307 | 338 | 644 | 116 | 295 | 27 | 10 | 292 | 82 | -4 | +0 | +0 | +1 | +4 | 0.1 |
| 2032 | 26 | MLB CTX | CHC | 62% | 224 | 198 | 45 | 7 | 3 | 4 | 22 | 59 | 2 | 3 | 1 | 223 | 308 | 344 | 652 | 121 | 295 | 26 | 10 | 295 | 84 | -4 | +0 | +0 | +1 | +5 | 0.2 |
| 2033 | 27 | MLB CTX | CHC | 63% | 240 | 212 | 48 | 8 | 3 | 4 | 24 | 64 | 2 | 3 | 1 | 222 | 307 | 341 | 648 | 119 | 295 | 27 | 10 | 294 | 83 | -5 | +0 | +0 | +1 | +5 | 0.1 |
| 2034 | 28 | MLB CTX | CHC | 65% | 251 | 222 | 49 | 8 | 3 | 4 | 25 | 67 | 2 | 3 | 1 | 220 | 305 | 337 | 641 | 116 | 293 | 27 | 10 | 291 | 81 | -6 | +0 | -0 | +1 | +5 | 0.0 |
| 2035 | 29 | MLB CTX | CHC | 65% | 248 | 220 | 49 | 8 | 3 | 4 | 24 | 67 | 2 | 2 | 1 | 218 | 302 | 330 | 632 | 112 | 292 | 27 | 10 | 287 | 79 | -6 | +0 | -1 | +1 | +5 | -0.1 |
| ▸ Career Totals | |||||||||||||||||||||||||||||||
| ▸ Career totals — MLB only (actual + projected) | |||||||||||||||||||||||||||||||
| Career | — | A+C | — | 1404 | 1242 | 276 | 45 | 17 | 22 | 139 | 376 | 12 | 17 | 6 | 222 | 307 | 339 | 646 | 117 | 299 | 27 | 10 | 291 | 78 | -32 | +1 | -1 | +5 | +30 | 0.3 | |
| / 162G | — | A+C | — | 650 | 575 | 128 | 21 | 8 | 10 | 64 | 174 | 6 | 8 | 3 | 223 | 307 | 339 | 646 | 117 | 299 | 27 | 10 | 291 | 78 | -15 | +0 | -1 | +2 | +14 | 0.2 | |
| Career | — | MLE | — | 2576 | 2263 | 479 | 77 | 26 | 38 | 268 | 688 | 23 | 41 | 11 | 212 | 301 | 319 | 621 | 107 | 284 | 27 | 10 | 283 | 78 | -55 | +3 | -2 | +8 | +51 | 0.6 | |
| / 162G | — | MLE | — | 650 | 571 | 121 | 19 | 7 | 10 | 68 | 174 | 6 | 10 | 3 | 212 | 303 | 322 | 625 | 110 | 284 | 27 | 10 | 283 | 78 | -15 | +1 | -1 | +2 | +14 | 0.2 | |
How the minor-league lines were translated
One row per minor-league stint. Open a row to see each step: the raw rate, the park adjustment, the league/level factor, the age adjustment (hitters) and the resulting MLE rate. Factors are the same ones listed on the MLE Factors page.
2026 DSLDSL Cubs Red · 46 PAwOBA .340 → .240 (−100)K% 30.4% → 37.1%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 30.43% | ÷1.000 | ×1.220 | — | — | 37.13% |
| BB% (unintentional) /PA | 28.26% | ÷1.000 | ×0.700 | — | ×0.975 | 19.29% |
| HBP% /PA | 0.00% | — | ×0.700 | — | ×0.975 | 0.00% |
| Singles /BIP | 23.53% | ÷1.000 | ×0.680 | — | ×0.975 | 15.60% |
| Doubles /BIP | 5.88% | ÷1.000 | ×0.600 | — | ×0.975 | 3.44% |
| Triples /BIP | 5.88% | ÷1.000 | ×0.600 | — | ×0.975 | 3.44% |
| Home runs /BIP | 0.00% | ÷1.000 | ×0.470 | — | ×0.975 | 0.00% |
Factors used: level-wide DSL factors (no league-specific row for this league/era). Park (home-season share, regressed): no park row on file (treated as neutral) — applied at half strength. Age: age 21 vs a level average of 18.5 → −2.5% on BB/HBP/hit rates (2.5 yr older than average).
Result: wOBA .340 → .240; ISO .097 → .067; BABIP .333 → .214. Both wOBAs use the same linear weights, so the change is the translation alone. The MLE line is not regressed to the mean — regression happens later, when seasons are blended into a projection (how).
2025 DSLDSL Cubs Blue · 91 PAwOBA .369 → .253 (−116)K% 19.8% → 24.1%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 19.78% | ÷1.001 | ×1.220 | — | — | 24.11% |
| BB% (unintentional) /PA | 23.08% | ÷1.006 | ×0.700 | — | ×0.985 | 15.81% |
| HBP% /PA | 2.20% | — | ×0.700 | — | ×0.985 | 1.52% |
| Singles /BIP | 23.40% | ÷1.016 | ×0.680 | ×0.950 | ×0.985 | 14.65% |
| Doubles /BIP | 6.38% | ÷0.928 | ×0.600 | ×0.950 | ×0.985 | 3.86% |
| Triples /BIP | 4.26% | ÷1.038 | ×0.600 | ×0.950 | ×0.985 | 2.30% |
| Home runs /BIP | 0.00% | ÷0.926 | ×0.470 | — | ×0.985 | 0.00% |
Factors used: level-wide DSL factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 85, 1B 103, 2B 86, 3B 108, K 100, BB 101 — applied at half strength. Age: age 20 vs a level average of 18.5 → −1.5% on BB/HBP/hit rates (1.5 yr older than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.950.
Result: wOBA .369 → .253; ISO .108 → .069; BABIP .327 → .201. Both wOBAs use the same linear weights, so the change is the translation alone. The MLE line is not regressed to the mean — regression happens later, when seasons are blended into a projection (how).
2024 DSLDSL Cubs Red · 87 PAwOBA .334 → .219 (−115)K% 17.2% → 21.8%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 17.24% | ÷0.964 | ×1.220 | — | — | 21.81% |
| BB% (unintentional) /PA | 22.99% | ÷1.047 | ×0.700 | — | ×0.995 | 15.29% |
| HBP% /PA | 1.15% | — | ×0.700 | — | ×0.995 | 0.80% |
| Singles /BIP | 22.00% | ÷1.018 | ×0.680 | ×0.950 | ×0.995 | 13.88% |
| Doubles /BIP | 2.00% | ÷0.960 | ×0.600 | ×0.950 | ×0.995 | 1.18% |
| Triples /BIP | 2.00% | ÷1.000 | ×0.600 | ×0.950 | ×0.995 | 1.13% |
| Home runs /BIP | 2.00% | ÷1.025 | ×0.470 | — | ×0.995 | 0.91% |
Factors used: level-wide DSL factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 105, 1B 104, 2B 92, 3B 100, K 93, BB 109 — applied at half strength. Age: age 19 vs a level average of 18.5 → −0.5% on BB/HBP/hit rates (0.5 yr older than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.950.
Result: wOBA .334 → .219; ISO .092 → .051; BABIP .265 → .164. Both wOBAs use the same linear weights, so the change is the translation alone. The MLE line is not regressed to the mean — regression happens later, when seasons are blended into a projection (how).