Kevyn Castillo

LF Rancho Cucamonga Quakes
Age 22 L/L 5'10" / 170 lbs A K +5%HR +4% Svc 0.0 · Ctrl thru 2037
Overview
APROSPECTMiLBFA 2038
OGV OFP35OGV rank#2399ETA2028MLB%0%
YearAgeLvl / TeamPAAVG/OBP/SLGHRSBwRC+WARMLE AVG/OBP/SLG
202419ASEA196.292/.376/.4154876—.237/.304/.328
202520ASEA192.285/.399/.3992688—.247/.335/.349
202621A+/ALAA549.277/.387/.453152590—.230/.315/.371
2027PROJMLE22MLBLAA576.222/.304/.3441113850.3
2028PROJ43% MLB23MLBLAA195.225/.307/.3534488-0.0
2029PROJ58% MLB24MLBLAA320.228/.310/.36176910.1
Next 3 projected WAR 0.3Projected rows: MLB playing time only, park and league context applied.
ContractESTIMATED
Control thru2037Service0.0First FA2038
2027MiLB2028MiLB2029MiLB2030MiLB2031MiLB2032Pre-Arb$0.9M2033Pre-Arb$0.9M2034Pre-Arb$1.0M+3
Skills · percentileMiLB Statcast 2026 A+
Z-Con%99
Whiff%88
K%67
BB%59
wRC+51
ISO45
Career WAR0.0 WAR median (P10 -0.1 / P90 6.1, comp-based) · star 4% · didn't stick 75%
CompsNelson Quiroz (age 22) · Luke Shliger (age 22) · Canaan Smith-Njigba (age 22)
2027 FULL-SEASON PROJECTIONpark-neutral Marcel · 210 proj PA
wRC+†85
AVG/OBP/SLG.220 / .302 / .341
PA210
HR4
SB5
K%25
BB%9
ISO122
MLB%0%
Value2027 · WAR
BAT: -3.9 runs (wOBA-derived runs vs avg)-4BATRUN: +0.2 runs (SB/CS + UBR baserunning)+0RUNFLD: +0.0 runs (Defensive runs vs avg)+0FLDPOS: -2.2 runs (Positional adjustment)-2POSREP: +4.5 runs (Replacement-level credit)+5REPTotal WAR: +0.30+0.3WAR
0.00.51.00.10.10.10.10.00.00.00.027282930313233343536
━ projected WAR━ paid WAR ($/8M) surplus deficit-$0M ctrl surplus
Tools · ContractCON 45 / POW 30
Toolsscout grade
CONTACT45
scouting grade only
POWER30
scouting grade only
EYE55
scouting grade only
SPEED45
scouting grade only
Contract ESTIMATED · service-time + WAR-based estimator (needs verification)
Status   MiLB
MLB Debut   2032
Service   0 yrs (est)
Team Control Through   2037
First FA Year   2038
YearStatusSalary Proj WAR Value Surplus
2027MiLBstill in minors · estimated debut 2032
2028MiLBstill in minors · estimated debut 2032
2029MiLBstill in minors · estimated debut 2032
2030MiLBstill in minors · estimated debut 2032
2031MiLBstill in minors · estimated debut 2032
2032Pre-Arb$0.9M+0.1$0.3M+$0.0M (cut)
2033Pre-Arb$0.9M———
2034Pre-Arb$1.0M———
2035Arb-1$0.2M———
2036Arb-2$0.4M———
2037Extbeyond projection horizon · no WAR estimate
Totals $0.0M $-3M +$0.0M

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. 2027 = full-season projection (no games played yet). 2028+ via Advanced Marcel + aging curve.

YearAge LvlTeam MLB% PAAB H2B3BHR BBSOHBP SBCS AVGOBPSLGOPS ISOBABIP K%BB% wOBAwRC+ BATRUNFLDPOSREP WAR
▸ Career — actual stats, one row per stint (as recorded, no adjustments)
202217 ROKDSL Angels — 4840 9300 6171 42 225340300640 75391 3512 296 17 — — — — — —
202318 ROKDSL Angels — 234186 691073 40362 239 3714875481.035 177437 1517 445 97 — — — — — —
202419 AInland Empire 66ers — 196171 50714 20533 84 292376415791 123400 2710 354 76 — — — — — —
202520 AInland Empire 66ers — 192158 45442 28392 63 285399399798 114361 2015 356 88 — — — — — —
202621 A+Tri-City Dust Devils — 11193 23403 14231 41 247352387739 140294 2113 328 68 — — — — — —
202621 ARancho Cucamonga Quakes — 438366 10420612 62746 218 284396470866 186325 1714 383 95 — — — — — —
▸ Career — adjusted (every ACTUAL line translated to park/league-neutral MLB equivalents)
202217 ROK MLEDSL Angels — 4842 6200 4211 42 143234190425 48271 448 193 17 — — — — — —
202318 ROK MLEDSL Angels — 234198 50742 28442 239 253351359709 106294 1912 311 97 — — — — — —
202419 A MLEInland Empire 66ers — 196177 42513 14753 84 237304328632 90383 387 281 76 — — — — — —
202520 A MLEInland Empire 66ers — 192166 41342 20532 63 247335349685 102335 2810 299 88 — — — — — —
202621 A+ MLETri-City Dust Devils — 11197 20303 10311 41 206287330617 124263 289 268 68 — — — — — —
202621 A MLERancho Cucamonga Quakes — 438385 9116510 431016 218 236323382704 145288 2310 308 95 — — — — — —
202217 ROK MLEDSL Angels — 4842 6200 4211 42 143234190425 48286 448 193 17 — — — — — —
202217 ROK RAWDSL Angels — 4840 9300 6171 42 225340300640 75391 3512 296 17 — — — — — —
202318 ROK MLEDSL Angels — 234198 50742 28442 239 253351359709 106308 1912 311 97 — — — — — —
202318 ROK RAWDSL Angels — 234186 691073 40362 239 3714875481.035 177437 1517 445 97 — — — — — —
202419 A MLEInland Empire 66ers — 196177 42513 14753 84 237304328632 90390 387 281 76 — — — — — —
202419 A RAWInland Empire 66ers — 196171 50714 20533 84 292376415791 123400 2710 354 76 — — — — — —
202520 A MLEInland Empire 66ers — 192166 41342 20532 63 247335349685 102345 2810 299 88 — — — — — —
202520 A RAWInland Empire 66ers — 192158 45442 28392 63 285399399798 114361 2015 356 88 — — — — — —
202621 A MLE2 teams — 549482 11120512 531327 259 230315367683 137289 2410 300 89 — — — — — —
202621 A RAW2 teams — 549459 12724615 76977 259 277387453841 176319 1814 372 89 — — — — — —
202217 ROK MLEDSL Angels — 4843 6200 4211 42 140234186420 47271 448 193 17 — — — — — —
202318 ROK MLEDSL Angels — 234202 50742 28442 239 248351351702 104294 1912 311 97 — — — — — —
202419 A MLEInland Empire 66ers — 196177 42513 14753 84 237304328632 90383 387 281 76 — — — — — —
202520 A MLEInland Empire 66ers — 192168 41342 20532 63 244335345680 101335 2810 299 88 — — — — — —
202621 A MLE2 teams — 549484 11120512 531327 259 229315366681 136283 2410 300 89 — — — — — —
▸ Model inputs — neutral MLE (past 3 seasons)
202419 A MLEInland Empire 66ers — 196177 42513 14753 84 237304328632 90383 387 281 76 — — — — — —
202520 A MLEInland Empire 66ers — 192168 41342 20532 63 244335345680 101335 2810 299 88 — — — — — —
202621 A MLE2 teams — 549484 11120512 531327 259 229315366681 136283 2410 300 89 — — — — — —
▸ 2027 season
▸ 2027 — full MLE projection (neutral park, full availability)
202722 MLB MLELAA 0% 576510 11319511 551436 135 222304344648 122283 2510 293 85 -11 +1 +0 -6 +12 0.3
▸ Career projection (2028+) — MLB context, MLB playing time (PA × MLB%)
202823 MLB MLELAA 43% 451400 9115410 431105 93 226308355663 129284 2410 299 88 -6 +1 +0 -5 +10 -0.1
202924 MLB MLELAA 58% 552488 11219512 531336 114 229311362673 134285 2410 303 91 -6 +1 +0 -6 +12 0.1
203025 MLB MLELAA 65% 569503 11519513 551366 114 230312367679 137286 2410 305 93 -5 +1 +0 -6 +12 0.2
203126 MLB MLELAA 68% 568503 11620513 541356 104 231313369682 138286 2410 306 93 -5 +0 +0 -6 +12 0.2
203227 MLB MLELAA 68% 561496 11520513 541346 94 231312368681 138286 2410 306 93 -5 +0 +0 -6 +12 0.2
203328 MLB MLELAA 73% 551488 11219413 531335 83 229310364674 135285 2410 303 91 -6 +0 -1 -6 +12 0.0
203429 MLB MLELAA 76% 521462 10518412 491275 63 227308358665 131284 249 300 89 -7 +0 -1 -6 +11 -0.3
203530 MLB MLELAA 78% 509451 10117411 481265 53 224304350655 127282 259 295 86 -8 -0 -2 -5 +11 -0.5
203631 MLB MLELAA 79% 492439 9716410 461234 35 220300341641 121280 259 290 82 -10 -1 -3 -5 +11 -0.9
202823 MLB CTXLAA 43% 195172 39624 19472 41 225307353661 129282 2410 298 88 -3 +0 +0 -2 +4 -0.0
202924 MLB CTXLAA 58% 320283 641037 31773 62 228310361671 134283 2410 302 91 -3 +0 +0 -3 +7 0.1
203025 MLB CTXLAA 65% 369327 751239 35884 73 229311365677 136284 249 304 93 -3 +0 +0 -4 +8 0.1
203126 MLB CTXLAA 68% 386342 781339 37924 73 230312367679 138284 2410 305 93 -3 +0 +0 -4 +8 0.1
203227 MLB CTXLAA 68% 381338 781339 36914 62 229311367678 137284 249 305 93 -3 +0 +0 -4 +8 0.1
203328 MLB CTXLAA 73% 404358 8213310 39974 62 228309362672 135283 2410 302 91 -4 +0 -1 -4 +9 0.0
203429 MLB CTXLAA 76% 396351 791339 38964 52 225307356663 131282 2410 299 89 -5 +0 -1 -4 +9 -0.2
203530 MLB CTXLAA 78% 397353 791339 37984 42 223303349652 126280 259 294 86 -7 +0 -2 -4 +9 -0.4
203631 MLB CTXLAA 79% 390348 761238 36983 24 219299339638 121277 259 289 82 -8 -1 -2 -4 +8 -0.8
▸ Career Totals
▸ Career totals — MLB only (actual + projected)
Career— A+C — 32382872 6501052674 30878432 4721 226308358667 132284 2410 300 89 -40 +1 -5 -35 +70 -0.9
/ 162G— A+C — 650577 13021515 621576 94 225307357664 132282 2410 300 89 -8 +0 -1 -7 +14 -0.2
Career— MLE — 62035481 125620756130 594153465 14362 229312359670 129292 2510 299 89 -61 +1 -7 -53 +108 -1.3
/ 162G— MLE — 650574 13222614 621617 156 230313362675 132293 2510 299 89 -8 +0 -1 -7 +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 ARancho Cucamonga Quakes · 438 PAwOBA .375 → .308 (−67)K% 16.9% → 23.0%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA16.89%÷1.000×1.360——22.98%
BB% (unintentional) /PA13.93%÷1.000×0.690—×1.0159.75%
HBP% /PA1.37%—×0.780—×1.0151.08%
Singles /BIP22.60%÷1.000×0.920×0.976×1.01520.61%
Doubles /BIP6.85%÷1.000×0.830×0.976×1.0155.63%
Triples /BIP2.05%÷1.000×0.910×0.976×1.0151.85%
Home runs /BIP4.11%÷1.000×0.800—×1.0153.34%

Factors used: level-wide A 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 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 ×0.976.

Result: wOBA .375 → .308; ISO .186 → .153; BABIP .325 → .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).

2026 A+Tri-City Dust Devils · 111 PAwOBA .322 → .268 (−54)K% 20.7% → 28.0%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA20.72%÷1.000×1.350——27.97%
BB% (unintentional) /PA12.61%÷1.000×0.710—×1.0279.20%
HBP% /PA0.90%—×0.810—×1.0270.75%
Singles /BIP22.86%÷1.000×0.910×0.981×1.02720.96%
Doubles /BIP5.71%÷1.000×0.830×0.981×1.0274.78%
Triples /BIP0.00%÷1.000×0.820×0.981×1.0270.00%
Home runs /BIP4.29%÷1.000×0.830—×1.0273.65%

Factors used: level-wide A+ 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 22.8 → +2.7% on BB/HBP/hit rates (1.8 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.981.

Result: wOBA .322 → .268; ISO .140 → .117; BABIP .294 → .263. 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 AInland Empire 66ers · 192 PAwOBA .352 → .299 (−53)K% 20.3% → 27.4%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA20.31%÷1.008×1.360——27.39%
BB% (unintentional) /PA14.58%÷1.011×0.690—×1.03010.26%
HBP% /PA1.04%—×0.780—×1.0300.84%
Singles /BIP29.41%÷1.066×0.920×1.050×1.03027.44%
Doubles /BIP3.36%÷1.065×0.830×1.050×1.0302.83%
Triples /BIP3.36%÷0.997×0.910×1.050×1.0303.32%
Home runs /BIP1.68%÷1.036×0.800—×1.0301.34%

Factors used: level-wide A factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 107, 1B 113, 2B 113, 3B 99, K 102, BB 102 — applied at half strength. Age: age 20 vs a level average of 22.0 → +3.0% on BB/HBP/hit rates (2.0 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×1.050.

Result: wOBA .352 → .299; ISO .114 → .101; BABIP .361 → .335. 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 AInland Empire 66ers · 196 PAwOBA .347 → .281 (−66)K% 27.0% → 38.4%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA27.04%÷0.957×1.360——38.44%
BB% (unintentional) /PA10.20%÷1.057×0.690—×1.0456.96%
HBP% /PA1.53%—×0.780—×1.0451.25%
Singles /BIP32.20%÷0.983×0.920×1.005×1.04531.66%
Doubles /BIP5.93%÷1.023×0.830×1.005×1.0455.06%
Triples /BIP0.85%÷1.139×0.910×1.005×1.0450.71%
Home runs /BIP3.39%÷0.882×0.800—×1.0453.21%

Factors used: level-wide A factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 76, 1B 97, 2B 105, 3B 128, K 91, BB 111 — applied at half strength. Age: age 19 vs a level average of 22.0 → +4.5% on BB/HBP/hit rates (3.0 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×1.005.

Result: wOBA .347 → .281; ISO .123 → .099; BABIP .400 → .383. 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).

2023 DSLDSL Angels · 234 PAwOBA .442 → .311 (−131)K% 15.4% → 18.7%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA15.38%÷1.002×1.220——18.73%
BB% (unintentional) /PA17.09%÷1.018×0.700—×1.00811.84%
HBP% /PA0.85%—×0.700—×1.0080.60%
Singles /BIP32.67%÷1.028×0.680×1.043×1.00822.72%
Doubles /BIP6.67%÷0.927×0.600×1.043×1.0084.54%
Triples /BIP4.67%÷1.150×0.600×1.043×1.0082.56%
Home runs /BIP2.00%÷0.852×0.470—×1.0081.11%

Factors used: level-wide DSL factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 70, 1B 106, 2B 85, 3B 130, K 100, BB 104 — 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.043.

Result: wOBA .442 → .311; ISO .177 → .112; BABIP .437 → .294. 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 DSLDSL Angels · 48 PAwOBA .289 → .193 (−96)K% 35.4% → 44.3%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA35.42%÷0.976×1.220——44.29%
BB% (unintentional) /PA12.50%÷1.074×0.700—×1.0228.33%
HBP% /PA2.08%—×0.700—×1.0221.49%
Singles /BIP26.09%÷1.016×0.680—×1.02217.85%
Doubles /BIP13.04%÷0.863×0.600—×1.0229.27%
Triples /BIP0.00%÷0.964×0.600—×1.0220.00%
Home runs /BIP0.00%÷0.801×0.470—×1.0220.00%

Factors used: level-wide DSL factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 60, 1B 103, 2B 73, 3B 93, K 95, BB 115 — 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).

Result: wOBA .289 → .193; ISO .075 → .051; BABIP .391 → .271. 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).