Johnfrank Salazar

3B Palm Beach Cardinals
Age 23 R/R 6'1" / 159 lbs A HR -14%BB -5% Svc 0.0 · Ctrl thru 2037
Overview
APROSPECTMiLBFA 2038
OGV OFP35OGV rank#2324ETA2029MLB%0%
YearAgeLvl / TeamPAAVG/OBP/SLGHRSBwRC+WARMLE AVG/OBP/SLG
202420A+/ASTL343.258/.337/.3342059—.228/.290/.289
202521A+/A/ROKSTL258.232/.316/.32031847—.201/.265/.265
202622ASTL92.317/.391/.4631492—.259/.315/.376
2027PROJMLE23MLBSTL219.219/.278/.30724650.0
2028PROJ29% MLB24MLBSTL33.225/.285/.3240172-0.0
2029PROJ45% MLB25MLBSTL78.227/.288/.33312760.0
Next 3 projected WAR 0.0Projected rows: MLB playing time only, park and league context applied.
ContractESTIMATED
Control thru2037Service0.0First FA2038
2027MiLB2028MiLB2029MiLB2030MiLB2031MiLB2032Pre-Arb$0.9M2033Pre-Arb$0.9M2034Ext$1.0M+3
Skills · percentileMiLB Statcast 2026 A
Z-Con%80
Whiff%71
K%66
Speed65
Max EV59
Chase%47
Career WAR0.0 WAR median (P10 0.0 / P90 0.0, comp-based) · star 0% · didn't stick 99%
2027 FULL-SEASON PROJECTIONpark-neutral Marcel · 66 proj PA
wRC+†65
AVG/OBP/SLG.217 / .275 / .304
PA66
HR1
K%25
BB%6
ISO88
MLB%0%
Value2027 · WAR
BAT: -2.7 runs (wOBA-derived runs vs avg)-3BATRUN: +0.2 runs (SB/CS + UBR baserunning)+0RUNFLD: +0.0 runs (Defensive runs vs avg)+0FLDPOS: +0.2 runs (Positional adjustment)+0POSREP: +1.4 runs (Replacement-level credit)+1REPTotal WAR: +0.00+0.0WAR
0.00.51.00.00.027282930313233343536
━ projected WAR━ paid WAR ($/8M) surplus deficit-$2M ctrl surplus
Tools · ContractCON 56 / POW 36
Toolsscout grade
CONTACT56
scouting grade only
POWER36
scouting grade only
EYE48
scouting grade only
SPEED59
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———
2033Pre-Arb$0.9M———
2034Extbeyond projection horizon · no WAR estimate
2035Extbeyond projection horizon · no WAR estimate
2036Extbeyond projection horizon · no WAR estimate
2037Extbeyond projection horizon · no WAR estimate
Totals $0.0M $-0.5M +$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)
202117 ROKDSL BOS Blue — 191167 45812 16216 52 269354365720 96297 118 327 29 — — — — — —
202218 ASalem Red Sox — 8374 19310 5171 00 257312324637 68333 206 280 50 — — — — — —
202218 ROKFCL Red Sox — 122101 33820 1793 30 327438446884 119355 714 397 74 — — — — — —
202319 ASalem Red Sox — 137123 28305 14220 02 228307374681 146240 1610 307 53 — — — — — —
202319 ROKFCL Red Sox — 10391 341103 5123 20 3744245931.018 220388 125 429 111 — — — — — —
202420 A+Peoria Chiefs — 114102 21201 6192 01 206264255519 49235 175 233 32 — — — — — —
202420 APalm Beach Cardinals — 229200 571501 24294 01 285373375748 90329 1310 341 72 — — — — — —
202521 A+Peoria Chiefs — 121111 25500 6172 60 225277270548 45260 145 249 30 — — — — — —
202521 APalm Beach Cardinals — 9983 22401 14132 62 265384349733 84304 1314 342 81 — — — — — —
202521 ROKFCL Cardinals — 3834 6202 371 60 176263412675 235160 188 299 13 — — — — — —
202622 APalm Beach Cardinals — 9282 26901 8202 41 317391463855 146410 229 382 92 — — — — — —
▸ Career — adjusted (every ACTUAL line translated to park/league-neutral MLB equivalents)
202117 ROK MLEDSL BOS Blue — 191172 31511 11266 52 180254238492 58196 146 211 29 — — — — — —
202218 A MLESalem Red Sox — 8375 18310 4251 00 240287307594 67325 305 242 50 — — — — — —
202218 ROK MLEFCL Red Sox — 122108 26520 10133 30 241322324646 83260 118 278 74 — — — — — —
202319 A MLESalem Red Sox — 137128 25304 9300 02 195248312561 117225 227 247 53 — — — — — —
202319 ROK MLEFCL Red Sox — 10393 26702 3173 20 280323419743 140299 173 332 111 — — — — — —
202420 A+ MLEPeoria Chiefs — 114103 21201 5242 01 204255252507 49229 214 216 32 — — — — — —
202420 A MLEPalm Beach Cardinals — 229208 501101 16414 01 240307308615 67293 187 274 72 — — — — — —
202521 A+ MLEPeoria Chiefs — 121113 23400 4232 60 204244239483 35237 193 212 30 — — — — — —
202521 A MLEPalm Beach Cardinals — 9987 21401 10182 62 241333322655 80289 1810 288 81 — — — — — —
202521 ROK MLEFCL Cardinals — 3835 3101 2101 60 86158200358 114113 265 187 13 — — — — — —
202622 A MLEPalm Beach Cardinals — 9285 22701 5272 41 259315376692 118377 295 304 92 — — — — — —
202117 ROK MLEDSL BOS Blue — 191172 31511 11266 52 180254238492 58205 146 211 29 — — — — — —
202117 ROK RAWDSL BOS Blue — 191167 45812 16216 52 269354365720 96297 118 327 29 — — — — — —
202218 ROK MLE2 teams — 205183 42720 14384 30 230299290588 60288 197 263 64 — — — — — —
202218 ROK RAW2 teams — 205175 521130 22264 30 297388394782 97347 1311 349 64 — — — — — —
202319 A MLE2 teams — 240220 511006 13483 22 232284359643 127265 205 283 78 — — — — — —
202319 A RAW2 teams — 240214 621408 19343 22 290356467823 178307 148 360 78 — — — — — —
202420 A MLE2 teams — 343311 711302 21656 02 228290289579 61279 196 255 59 — — — — — —
202420 A RAW2 teams — 343302 781702 30486 02 258337334672 76298 149 305 59 — — — — — —
202521 A+ MLE3 teams — 258235 47902 16515 182 200266264529 64245 206 237 47 — — — — — —
202521 A+ RAW3 teams — 258228 531103 23375 182 232316320637 88263 149 292 47 — — — — — —
202622 A MLEPalm Beach Cardinals — 9285 22701 5272 41 259315376692 118368 295 304 92 — — — — — —
202622 A RAWPalm Beach Cardinals — 9282 26901 8202 41 317391463855 146410 229 382 92 — — — — — —
202117 ROK MLEDSL BOS Blue — 191172 31511 11266 52 180254238492 58196 146 211 29 — — — — — —
202218 ROK MLE2 teams — 205185 42720 14384 30 227299286585 59286 197 263 64 — — — — — —
202319 A MLE2 teams — 240222 511006 13483 22 230284356640 126257 205 283 78 — — — — — —
202420 A MLE2 teams — 343313 711302 21656 02 227290288577 61272 196 255 59 — — — — — —
202521 A+ MLE3 teams — 258235 47902 16515 182 200266264529 64239 206 237 47 — — — — — —
202622 A MLEPalm Beach Cardinals — 9285 22701 5272 41 259315376692 118377 295 304 92 — — — — — —
▸ Model inputs — neutral MLE (past 3 seasons)
202420 A MLE2 teams — 343313 711302 21656 02 227290288577 61272 196 255 59 — — — — — —
202521 A+ MLE3 teams — 258235 47902 16515 182 200266264529 64239 206 237 47 — — — — — —
202622 A MLEPalm Beach Cardinals — 9285 22701 5272 41 259315376692 118377 295 304 92 — — — — — —
▸ 2027 season
▸ 2027 — full MLE projection (neutral park, full availability)
202723 MLB MLESTL 0% 219201 44912 13563 41 219278307584 88289 266 265 65 -9 +0 +0 +1 +5 0.0
▸ Career projection (2028+) — MLB context, MLB playing time (PA × MLB%)
202824 MLB MLESTL 29% 114105 23502 7291 21 224284323607 100290 256 274 72 -4 +0 +0 +0 +2 -0.1
202925 MLB MLESTL 45% 173158 36713 11432 31 226287334621 108291 256 280 76 -5 +0 +0 +1 +4 -0.0
203026 MLB MLESTL 54% 234213 491014 16583 41 228289340629 112291 257 283 78 -6 +0 +0 +1 +5 0.0
203127 MLB MLESTL 58% 271248 571215 18673 51 228290341631 113290 257 284 78 -7 +1 +0 +1 +6 0.0
203228 MLB MLESTL 61% 294269 601215 20733 41 227289339629 113289 257 283 78 -8 +0 -1 +1 +6 -0.1
203329 MLB MLESTL 62% 300274 621315 20753 31 224286333619 109288 257 279 75 -9 +0 -1 +1 +6 -0.3
202824 MLB CTXSTL 29% 3331 6100 280 10 225285324608 99293 246 275 72 -1 +0 +0 +0 +1 -0.0
202925 MLB CTXSTL 45% 7872 16401 5191 20 227288333621 106293 246 280 76 -2 +0 +0 +0 +2 0.0
203026 MLB CTXSTL 54% 127116 26602 8312 21 229290339629 110293 246 283 78 -3 +0 +0 +0 +3 -0.0
203127 MLB CTXSTL 58% 158144 34713 11392 31 228291339630 111292 257 284 78 -4 +0 +0 +1 +3 0.0
203228 MLB CTXSTL 61% 179163 38813 12442 31 227290338628 111292 257 283 78 -5 +0 -0 +1 +4 -0.0
203329 MLB CTXSTL 62% 187170 39813 13472 21 225287332619 107290 257 279 75 -6 +0 -1 +1 +4 -0.2
▸ Career Totals
▸ Career totals — MLB only (actual + projected)
Career— A+C — 762696 15934312 511889 134 228290338627 109294 257 281 68 -21 +1 -1 +3 +17 -0.2
/ 162G— A+C — 650594 13629310 441608 113 229291338630 109295 257 281 68 -18 +1 -1 +2 +14 -0.2
Career— MLE — 27812534 565113837 17661742 5415 223285318602 95278 226 268 68 -42 +2 -2 +5 +31 -0.5
/ 162G— MLE — 650592 1322629 4114410 134 223285319604 96278 226 268 68 -19 +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 APalm Beach Cardinals · 92 PAwOBA .372 → .304 (−69)K% 21.7% → 29.6%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA21.74%÷1.000×1.360——29.57%
BB% (unintentional) /PA8.70%÷1.000×0.690—×0.9905.94%
HBP% /PA2.17%—×0.780—×0.9901.68%
Singles /BIP25.81%÷1.000×0.920×1.050×0.99024.68%
Doubles /BIP14.52%÷1.000×0.830×1.050×0.99012.52%
Triples /BIP0.00%÷1.000×0.910×1.050×0.9900.00%
Home runs /BIP1.61%÷1.000×0.800—×0.9901.28%

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 23 vs a level average of 22.0 → −1.0% on BB/HBP/hit rates (1.0 yr older than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×1.050.

Result: wOBA .372 → .304; ISO .146 → .115; BABIP .410 → .377. 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 A+Peoria Chiefs · 121 PAwOBA .247 → .212 (−35)K% 14.0% → 18.8%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA14.05%÷0.951×1.270——18.77%
BB% (unintentional) /PA4.96%÷1.027×0.710—×1.0123.47%
HBP% /PA1.65%—×0.790—×1.0121.32%
Singles /BIP21.28%÷1.010×0.920×1.027×1.01220.13%
Doubles /BIP5.32%÷1.083×0.810×1.027×1.0124.13%
Triples /BIP0.00%÷0.926×0.850×1.027×1.0120.00%
Home runs /BIP0.00%÷0.857×0.800—×1.0120.00%

Factors used: league row Midwest League. Park (home-season share, regressed): HR 71, 1B 102, 2B 117, 3B 85, K 90, BB 105 — 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.027.

Result: wOBA .247 → .212; ISO .045 → .034; BABIP .260 → .237. 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 APalm Beach Cardinals · 99 PAwOBA .334 → .288 (−46)K% 13.1% → 17.9%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA13.13%÷1.000×1.360——17.87%
BB% (unintentional) /PA14.14%÷0.988×0.690——9.87%
HBP% /PA2.02%—×0.780——1.58%
Singles /BIP24.29%÷0.995×0.920×1.029—23.12%
Doubles /BIP5.71%÷0.896×0.830×1.029—5.45%
Triples /BIP0.00%÷0.900×0.910×1.029—0.00%
Home runs /BIP1.43%÷0.973×0.800——1.17%

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

Result: wOBA .334 → .288; ISO .084 → .076; BABIP .304 → .289. 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 ROKFCL Cardinals · 38 PAwOBA .291 → .187 (−104)K% 18.4% → 26.6%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA18.42%÷0.996×1.440——26.62%
BB% (unintentional) /PA7.89%÷1.011×0.620—×0.9754.72%
HBP% /PA2.63%—×0.720—×0.9751.85%
Singles /BIP7.41%÷1.030×0.820—×0.9755.75%
Doubles /BIP7.41%÷1.035×0.720—×0.9755.02%
Triples /BIP0.00%÷1.000×0.720—×0.9750.00%
Home runs /BIP7.41%÷1.149×0.780—×0.9754.90%

Factors used: level-wide ROK factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 130, 1B 106, 2B 107, 3B 100, K 99, BB 102 — 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 .291 → .187; ISO .235 → .147; BABIP .160 → .113. 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 APalm Beach Cardinals · 229 PAwOBA .331 → .274 (−57)K% 12.7% → 17.8%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA12.66%÷0.968×1.360——17.79%
BB% (unintentional) /PA10.04%÷0.999×0.690—×1.0157.04%
HBP% /PA1.75%—×0.780—×1.0151.38%
Singles /BIP23.98%÷1.040×0.920×1.044×1.01522.47%
Doubles /BIP8.77%÷1.153×0.830×1.044×1.0156.69%
Triples /BIP0.00%÷0.946×0.910×1.044×1.0150.00%
Home runs /BIP0.58%÷1.036×0.800—×1.0150.46%

Factors used: level-wide A factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 107, 1B 108, 2B 131, 3B 89, K 94, BB 100 — 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.044.

Result: wOBA .331 → .274; ISO .090 → .068; BABIP .329 → .293. 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 A+Peoria Chiefs · 114 PAwOBA .233 → .216 (−17)K% 16.7% → 21.0%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA16.67%÷1.006×1.270——21.05%
BB% (unintentional) /PA5.26%÷0.930×0.710—×1.0274.13%
HBP% /PA1.75%—×0.790—×1.0271.42%
Singles /BIP21.69%÷0.995×0.920×1.039×1.02721.40%
Doubles /BIP2.41%÷1.000×0.810×1.039×1.0272.08%
Triples /BIP0.00%÷1.150×0.850×1.039×1.0270.00%
Home runs /BIP1.20%÷0.993×0.800—×1.0271.00%

Factors used: league row Midwest League. Park (home-season share, regressed): HR 99, 1B 99, 2B 100, 3B 130, K 101, BB 86 — 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 ×1.039.

Result: wOBA .233 → .216; ISO .049 → .042; BABIP .235 → .229. 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 ASalem Red Sox · 137 PAwOBA .299 → .247 (−52)K% 16.1% → 22.2%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA16.06%÷0.982×1.360——22.24%
BB% (unintentional) /PA10.22%÷1.052×0.690—×1.0306.90%
HBP% /PA0.00%—×0.780—×1.0300.00%
Singles /BIP19.80%÷1.023×0.920×1.026×1.03018.81%
Doubles /BIP2.97%÷0.942×0.830×1.026×1.0302.76%
Triples /BIP0.00%÷1.000×0.910×1.026×1.0300.00%
Home runs /BIP4.95%÷0.999×0.800—×1.0304.08%

Factors used: level-wide A factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 100, 1B 105, 2B 88, 3B 100, K 96, BB 110 — 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.026.

Result: wOBA .299 → .247; ISO .146 → .118; BABIP .240 → .225. 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 ROKFCL Red Sox · 103 PAwOBA .434 → .332 (−102)K% 11.7% → 16.9%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA11.65%÷0.995×1.440——16.86%
BB% (unintentional) /PA4.85%÷1.000×0.620—×0.9952.99%
HBP% /PA2.91%—×0.720—×0.9952.09%
Singles /BIP25.32%÷0.977×0.820×1.004×0.99521.23%
Doubles /BIP13.92%÷1.079×0.720×1.004×0.9959.28%
Triples /BIP0.00%÷1.150×0.720×1.004×0.9950.00%
Home runs /BIP3.80%÷0.974×0.780—×0.9953.03%

Factors used: level-wide ROK factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 95, 1B 95, 2B 116, 3B 130, K 99, BB 100 — applied at half strength. Age: age 20 vs a level average of 19.5 → −0.5% on BB/HBP/hit rates (0.5 yr older than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×1.004.

Result: wOBA .434 → .332; ISO .220 → .162; BABIP .388 → .299. 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).