Jose Curpa
| Year | Age | Lvl / Team | PA | AVG/OBP/SLG | HR | SB | wRC+ | WAR | MLE AVG/OBP/SLG |
|---|---|---|---|---|---|---|---|---|---|
| 2019 | 19 | ROKARI | 213 | .293/.387/.353 | 0 | 28 | 45 | — | .207/.278/.244 |
| 2021 | 21 | A/ROKARI | 133 | .154/.333/.240 | 0 | 16 | 27 | — | .116/.250/.178 |
| 2022 | 22 | AA/A+/ROK2 orgs | 154 | .242/.386/.323 | 1 | 10 | 68 | — | .206/.320/.275 |
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) | |||||||||||||||||||||||||||||||
| 2017 | 17 | ROK | DSL D-backs 1 | — | 256 | 212 | 55 | 12 | 2 | 0 | 29 | 41 | 12 | 13 | 9 | 259 | 379 | 335 | 714 | 75 | 318 | 16 | 11 | 331 | 43 | — | — | — | — | — | — |
| 2018 | 18 | ROK | DSL D-backs 1 | — | 218 | 180 | 48 | 11 | 0 | 0 | 26 | 30 | 11 | 31 | 4 | 267 | 392 | 328 | 719 | 61 | 318 | 14 | 12 | 339 | 46 | — | — | — | — | — | — |
| 2019 | 19 | ROK | ACL D-backs | — | 213 | 184 | 54 | 7 | 2 | 0 | 24 | 41 | 4 | 28 | 9 | 293 | 387 | 353 | 740 | 60 | 375 | 19 | 11 | 341 | 45 | — | — | — | — | — | — |
| 2021 | 21 | A | Visalia Rawhide | — | 110 | 84 | 12 | 0 | 4 | 0 | 22 | 31 | 3 | 11 | 2 | 143 | 339 | 238 | 578 | 95 | 226 | 28 | 20 | 284 | 31 | — | — | — | — | — | — |
| 2021 | 21 | ROK | ACL D-backs | — | 23 | 20 | 4 | 1 | 0 | 0 | 3 | 4 | 0 | 5 | 2 | 200 | 304 | 250 | 554 | 50 | 250 | 17 | 13 | 265 | 9 | — | — | — | — | — | — |
| 2022 | 22 | AA | Amarillo Sod Poodles | — | 15 | 14 | 3 | 1 | 0 | 0 | 1 | 3 | 0 | 1 | 0 | 214 | 267 | 286 | 552 | 71 | 273 | 20 | 7 | 253 | 25 | — | — | — | — | — | — |
| 2022 | 22 | A+ | Hillsboro Hops | — | 104 | 80 | 18 | 2 | 1 | 1 | 18 | 27 | 6 | 5 | 2 | 225 | 404 | 312 | 716 | 87 | 327 | 26 | 17 | 345 | 80 | — | — | — | — | — | — |
| 2022 | 22 | ROK | ACL D-backs Black | — | 35 | 30 | 9 | 2 | 0 | 0 | 4 | 6 | 0 | 4 | 1 | 300 | 382 | 367 | 749 | 67 | 360 | 17 | 11 | 334 | 50 | — | — | — | — | — | — |
| ▸ Career — adjusted (every ACTUAL line translated to park/league-neutral MLB equivalents) | |||||||||||||||||||||||||||||||
| 2017 | 17 | ROK MLE | DSL D-backs 1 | — | 256 | 221 | 40 | 8 | 1 | 0 | 20 | 50 | 12 | 13 | 9 | 181 | 285 | 226 | 511 | 45 | 222 | 20 | 8 | 232 | 43 | — | — | — | — | — | — |
| 2018 | 18 | ROK MLE | DSL D-backs 1 | — | 218 | 188 | 34 | 7 | 0 | 0 | 18 | 37 | 11 | 31 | 4 | 181 | 290 | 218 | 508 | 37 | 220 | 17 | 8 | 236 | 46 | — | — | — | — | — | — |
| 2019 | 19 | ROK MLE | ACL D-backs | — | 213 | 193 | 40 | 5 | 1 | 0 | 15 | 59 | 4 | 28 | 9 | 207 | 278 | 244 | 522 | 36 | 288 | 28 | 7 | 235 | 45 | — | — | — | — | — | — |
| 2021 | 21 | A MLE | Visalia Rawhide | — | 110 | 91 | 10 | 0 | 3 | 0 | 15 | 43 | 3 | 11 | 2 | 110 | 257 | 176 | 433 | 66 | 207 | 39 | 14 | 214 | 31 | — | — | — | — | — | — |
| 2021 | 21 | ROK MLE | ACL D-backs | — | 23 | 21 | 3 | 1 | 0 | 0 | 2 | 6 | 0 | 5 | 2 | 143 | 217 | 190 | 408 | 48 | 197 | 26 | 9 | 181 | 9 | — | — | — | — | — | — |
| 2022 | 22 | AA MLE | Amarillo Sod Poodles | — | 15 | 14 | 3 | 1 | 0 | 0 | 1 | 4 | 0 | 1 | 0 | 214 | 267 | 286 | 552 | 71 | 244 | 27 | 7 | 205 | 25 | — | — | — | — | — | — |
| 2022 | 22 | A+ MLE | Hillsboro Hops | — | 104 | 85 | 17 | 2 | 1 | 1 | 13 | 35 | 6 | 5 | 2 | 200 | 346 | 282 | 629 | 82 | 317 | 34 | 12 | 286 | 80 | — | — | — | — | — | — |
| 2022 | 22 | ROK MLE | ACL D-backs Black | — | 35 | 32 | 7 | 1 | 0 | 0 | 2 | 9 | 0 | 4 | 1 | 219 | 265 | 250 | 515 | 31 | 279 | 26 | 6 | 242 | 50 | — | — | — | — | — | — |
| 2017 | 17 | ROK MLE | DSL D-backs 1 | — | 256 | 221 | 40 | 8 | 1 | 0 | 20 | 50 | 12 | 13 | 9 | 181 | 285 | 226 | 511 | 45 | 231 | 20 | 8 | 232 | 43 | — | — | — | — | — | — |
| 2017 | 17 | ROK RAW | DSL D-backs 1 | — | 256 | 212 | 55 | 12 | 2 | 0 | 29 | 41 | 12 | 13 | 9 | 259 | 379 | 335 | 714 | 75 | 318 | 16 | 11 | 331 | 43 | — | — | — | — | — | — |
| 2018 | 18 | ROK MLE | DSL D-backs 1 | — | 218 | 188 | 34 | 7 | 0 | 0 | 18 | 37 | 11 | 31 | 4 | 181 | 290 | 218 | 508 | 37 | 224 | 17 | 8 | 236 | 46 | — | — | — | — | — | — |
| 2018 | 18 | ROK RAW | DSL D-backs 1 | — | 218 | 180 | 48 | 11 | 0 | 0 | 26 | 30 | 11 | 31 | 4 | 267 | 392 | 328 | 719 | 61 | 318 | 14 | 12 | 339 | 46 | — | — | — | — | — | — |
| 2019 | 19 | ROK MLE | ACL D-backs | — | 213 | 193 | 40 | 5 | 1 | 0 | 15 | 59 | 4 | 28 | 9 | 207 | 278 | 244 | 522 | 36 | 296 | 28 | 7 | 235 | 45 | — | — | — | — | — | — |
| 2019 | 19 | ROK RAW | ACL D-backs | — | 213 | 184 | 54 | 7 | 2 | 0 | 24 | 41 | 4 | 28 | 9 | 293 | 387 | 353 | 740 | 60 | 375 | 19 | 11 | 341 | 45 | — | — | — | — | — | — |
| 2021 | 21 | A MLE | 2 teams | — | 133 | 112 | 13 | 1 | 3 | 0 | 17 | 49 | 3 | 16 | 4 | 116 | 250 | 179 | 429 | 62 | 206 | 37 | 13 | 208 | 27 | — | — | — | — | — | — |
| 2021 | 21 | A RAW | 2 teams | — | 133 | 104 | 16 | 1 | 4 | 0 | 25 | 35 | 3 | 16 | 4 | 154 | 333 | 240 | 574 | 87 | 232 | 26 | 19 | 281 | 27 | — | — | — | — | — | — |
| 2022 | 22 | A+ MLE | 3 teams | — | 154 | 131 | 27 | 4 | 1 | 1 | 16 | 47 | 6 | 10 | 3 | 206 | 320 | 275 | 595 | 69 | 310 | 31 | 10 | 268 | 68 | — | — | — | — | — | — |
| 2022 | 22 | A+ RAW | 3 teams | — | 154 | 124 | 30 | 5 | 1 | 1 | 23 | 36 | 6 | 10 | 3 | 242 | 386 | 323 | 708 | 81 | 330 | 23 | 15 | 334 | 68 | — | — | — | — | — | — |
| 2017 | 17 | ROK MLE | DSL D-backs 1 | — | 256 | 222 | 40 | 8 | 1 | 0 | 20 | 50 | 12 | 13 | 9 | 180 | 285 | 225 | 510 | 45 | 222 | 20 | 8 | 232 | 43 | — | — | — | — | — | — |
| 2018 | 18 | ROK MLE | DSL D-backs 1 | — | 218 | 187 | 34 | 7 | 0 | 0 | 18 | 37 | 11 | 31 | 4 | 182 | 290 | 219 | 510 | 37 | 220 | 17 | 8 | 236 | 46 | — | — | — | — | — | — |
| 2019 | 19 | ROK MLE | ACL D-backs | — | 213 | 192 | 40 | 5 | 1 | 0 | 15 | 59 | 4 | 28 | 9 | 208 | 278 | 245 | 523 | 36 | 288 | 28 | 7 | 235 | 45 | — | — | — | — | — | — |
| 2021 | 21 | A MLE | 2 teams | — | 133 | 112 | 13 | 1 | 3 | 0 | 17 | 49 | 3 | 16 | 4 | 116 | 250 | 179 | 429 | 62 | 205 | 37 | 13 | 208 | 27 | — | — | — | — | — | — |
| 2022 | 22 | A+ MLE | 3 teams | — | 154 | 131 | 27 | 4 | 1 | 1 | 16 | 47 | 6 | 10 | 3 | 206 | 320 | 275 | 595 | 69 | 301 | 31 | 10 | 268 | 68 | — | — | — | — | — | — |
| ▸ Career Totals | |||||||||||||||||||||||||||||||
| Career | — | MLE | — | 974 | 845 | 154 | 25 | 6 | 1 | 86 | 242 | 36 | 98 | 29 | 182 | 285 | 230 | 515 | 47 | 252 | 25 | 9 | 236 | 46 | -63 | +8 | +0 | +10 | +21 | -2.4 | |
| / 162G | — | MLE | — | 650 | 564 | 103 | 17 | 4 | 1 | 57 | 161 | 24 | 65 | 19 | 183 | 285 | 232 | 517 | 50 | 252 | 25 | 9 | 236 | 46 | -42 | +5 | +0 | +7 | +14 | -1.6 | |
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.
2022 A+Hillsboro Hops · 104 PAwOBA .338 → .286 (−52)K% 26.0% → 33.5%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 25.96% | ÷1.046 | ×1.350 | — | — | 33.49% |
| BB% (unintentional) /PA | 17.31% | ÷0.974 | ×0.710 | — | ×1.012 | 12.77% |
| HBP% /PA | 5.77% | — | ×0.810 | — | ×1.012 | 4.73% |
| Singles /BIP | 26.42% | ÷0.965 | ×0.910 | ×1.050 | ×1.012 | 26.47% |
| Doubles /BIP | 3.77% | ÷1.100 | ×0.830 | ×1.050 | ×1.012 | 3.03% |
| Triples /BIP | 1.89% | ÷1.006 | ×0.820 | ×1.050 | ×1.012 | 1.63% |
| Home runs /BIP | 1.89% | ÷0.848 | ×0.830 | — | ×1.012 | 1.87% |
Factors used: level-wide A+ factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 70, 1B 93, 2B 120, 3B 101, K 109, BB 95 — applied at half strength. Age: age 22 vs a level average of 22.8 → +1.2% on BB/HBP/hit rates (0.8 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×1.050.
Result: wOBA .338 → .286; ISO .087 → .076; BABIP .327 → .317. 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).
2022 ROKACL D-backs Black · 35 PAwOBA .336 → .242 (−94)K% 17.1% → 25.0%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 17.14% | ÷0.988 | ×1.440 | — | — | 24.99% |
| BB% (unintentional) /PA | 11.43% | ÷1.016 | ×0.620 | — | ×0.975 | 6.80% |
| HBP% /PA | 0.00% | — | ×0.720 | — | ×0.975 | 0.00% |
| Singles /BIP | 29.17% | ÷0.996 | ×0.820 | — | ×0.975 | 23.42% |
| Doubles /BIP | 8.33% | ÷1.043 | ×0.720 | — | ×0.975 | 5.61% |
| Triples /BIP | 0.00% | ÷0.958 | ×0.720 | — | ×0.975 | 0.00% |
| Home runs /BIP | 0.00% | ÷0.948 | ×0.780 | — | ×0.975 | 0.00% |
Factors used: level-wide ROK factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 90, 1B 99, 2B 109, 3B 92, K 98, BB 103 — applied at half strength. Age: age 22 vs a level average of 19.5 → −2.5% on BB/HBP/hit rates (2.5 yr older than average).
Result: wOBA .336 → .242; ISO .067 → .045; BABIP .360 → .279. 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).
2022 AAAmarillo Sod Poodles · 15 PAwOBA .246 → .205 (−42)K% 20.0% → 24.2%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 20.00% | ÷1.008 | ×1.220 | — | — | 24.22% |
| BB% (unintentional) /PA | 6.67% | ÷1.061 | ×0.700 | — | ×1.042 | 4.58% |
| HBP% /PA | 0.00% | — | ×0.870 | — | ×1.042 | 0.00% |
| Singles /BIP | 18.18% | ÷1.048 | ×0.920 | — | ×1.042 | 16.62% |
| Doubles /BIP | 9.09% | ÷1.022 | ×0.840 | — | ×1.042 | 7.78% |
| Triples /BIP | 0.00% | ÷0.938 | ×0.940 | — | ×1.042 | 0.00% |
| Home runs /BIP | 0.00% | ÷1.094 | ×0.800 | — | ×1.042 | 0.00% |
Factors used: league row TL. Park (home-season share, regressed): HR 119, 1B 110, 2B 104, 3B 88, K 102, BB 112 — applied at half strength. Age: age 22 vs a level average of 24.8 → +4.2% on BB/HBP/hit rates (2.8 yr younger than average).
Result: wOBA .246 → .205; ISO .071 → .059; BABIP .273 → .244. 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).
2021 AVisalia Rawhide · 110 PAwOBA .279 → .214 (−65)K% 28.2% → 38.8%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 28.18% | ÷0.988 | ×1.360 | — | — | 38.80% |
| BB% (unintentional) /PA | 20.00% | ÷1.013 | ×0.690 | — | ×1.015 | 13.83% |
| HBP% /PA | 2.73% | — | ×0.780 | — | ×1.015 | 2.16% |
| Singles /BIP | 15.09% | ÷1.006 | ×0.920 | ×1.003 | ×1.015 | 14.06% |
| Doubles /BIP | 0.00% | ÷1.056 | ×0.830 | ×1.003 | ×1.015 | 0.00% |
| Triples /BIP | 7.55% | ÷1.054 | ×0.910 | ×1.003 | ×1.015 | 6.63% |
| Home runs /BIP | 0.00% | ÷0.923 | ×0.800 | — | ×1.015 | 0.00% |
Factors used: level-wide A factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 85, 1B 101, 2B 111, 3B 111, K 98, BB 103 — applied at half strength. Age: age 21 vs a level average of 22.0 → +1.5% on BB/HBP/hit rates (1.0 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×1.003.
Result: wOBA .279 → .214; ISO .095 → .079; BABIP .226 → .207. 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).
2021 ROKACL D-backs · 23 PAwOBA .259 → .181 (−78)K% 17.4% → 25.4%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 17.39% | ÷0.985 | ×1.440 | — | — | 25.43% |
| BB% (unintentional) /PA | 13.04% | ÷1.008 | ×0.620 | — | ×0.985 | 7.90% |
| HBP% /PA | 0.00% | — | ×0.720 | — | ×0.985 | 0.00% |
| Singles /BIP | 18.75% | ÷1.010 | ×0.820 | — | ×0.985 | 14.99% |
| Doubles /BIP | 6.25% | ÷0.950 | ×0.720 | — | ×0.985 | 4.67% |
| Triples /BIP | 0.00% | ÷0.941 | ×0.720 | — | ×0.985 | 0.00% |
| Home runs /BIP | 0.00% | ÷0.986 | ×0.780 | — | ×0.985 | 0.00% |
Factors used: level-wide ROK factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 97, 1B 102, 2B 90, 3B 88, K 97, BB 102 — applied at half strength. Age: age 21 vs a level average of 19.5 → −1.5% on BB/HBP/hit rates (1.5 yr older than average).
Result: wOBA .259 → .181; ISO .050 → .036; BABIP .250 → .197. 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).
2019 ROKACL D-backs · 213 PAwOBA .334 → .235 (−100)K% 19.2% → 27.7%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 19.25% | ÷1.000 | ×1.440 | — | — | 27.72% |
| BB% (unintentional) /PA | 11.27% | ÷1.000 | ×0.620 | — | ×1.008 | 7.04% |
| HBP% /PA | 1.88% | — | ×0.720 | — | ×1.008 | 1.36% |
| Singles /BIP | 31.47% | ÷1.000 | ×0.820 | ×0.950 | ×1.008 | 24.70% |
| Doubles /BIP | 4.90% | ÷1.000 | ×0.720 | ×0.950 | ×1.008 | 3.37% |
| Triples /BIP | 1.40% | ÷1.000 | ×0.720 | ×0.950 | ×1.008 | 0.96% |
| Home runs /BIP | 0.00% | ÷1.000 | ×0.780 | — | ×1.008 | 0.00% |
Factors used: level-wide ROK 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 19 vs a level average of 19.5 → +0.8% on BB/HBP/hit rates (0.5 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.950.
Result: wOBA .334 → .235; ISO .060 → .039; BABIP .375 → .288. 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).
2018 DSLDSL D-backs 1 · 218 PAwOBA .332 → .236 (−97)K% 13.8% → 16.8%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 13.76% | ÷1.000 | ×1.220 | — | — | 16.79% |
| BB% (unintentional) /PA | 11.93% | ÷1.000 | ×0.700 | — | ×1.008 | 8.41% |
| HBP% /PA | 5.05% | — | ×0.700 | — | ×1.008 | 3.56% |
| Singles /BIP | 24.67% | ÷1.000 | ×0.680 | ×1.039 | ×1.008 | 17.57% |
| Doubles /BIP | 7.33% | ÷1.000 | ×0.600 | ×1.039 | ×1.008 | 4.61% |
| Triples /BIP | 0.00% | ÷1.000 | ×0.600 | ×1.039 | ×1.008 | 0.00% |
| Home runs /BIP | 0.00% | ÷1.000 | ×0.470 | — | ×1.008 | 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 18 vs a level average of 18.5 → +0.8% on BB/HBP/hit rates (0.5 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×1.039.
Result: wOBA .332 → .236; ISO .061 → .040; BABIP .318 → .220. 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).
2017 DSLDSL D-backs 1 · 256 PAwOBA .325 → .232 (−92)K% 16.0% → 19.5%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 16.02% | ÷1.000 | ×1.220 | — | — | 19.54% |
| BB% (unintentional) /PA | 10.94% | ÷1.000 | ×0.700 | — | ×1.022 | 7.83% |
| HBP% /PA | 4.69% | — | ×0.700 | — | ×1.022 | 3.36% |
| Singles /BIP | 23.98% | ÷1.000 | ×0.680 | ×1.033 | ×1.022 | 17.22% |
| Doubles /BIP | 7.02% | ÷1.000 | ×0.600 | ×1.033 | ×1.022 | 4.45% |
| Triples /BIP | 1.17% | ÷1.000 | ×0.600 | ×1.033 | ×1.022 | 0.74% |
| Home runs /BIP | 0.00% | ÷1.000 | ×0.470 | — | ×1.022 | 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 17 vs a level average of 18.5 → +2.2% on BB/HBP/hit rates (1.5 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×1.033.
Result: wOBA .325 → .232; ISO .075 → .050; BABIP .318 → .222. 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).