Cesar Perdomo
P Richmond Flying Squirrels| Year | Age | Lvl / Team | G | GS | IP | ERA | FIP | K% | BB% | WAR | MLE rates |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 2024 | 22 | MIX2 levels | 26 | 14 | 97 | 2.78 | 2.69 | 25.2% | 8.4% | — | K 19.0% · BB 9.7% · FIP 3.54 |
| 2025 | 23 | A+SF | 26 | 26 | 127 | 3.96 | 3.47 | 21.9% | 7.1% | — | K 16.9% · BB 8.1% · FIP 4.39 |
| 2026 | 24 | MIX3 levels | 29 | 26 | 145 | 4.29 | 3.81 | 22.7% | 8.0% | 2.8 | K 19.1% · BB 8.0% · FIP 4.34 |
| 2027PROJ | 25 | MLBSF | 11 | 11 | 64 | 4.58 | 4.79 | 17.0% | 7.9% | 0.4 | |
| 2028PROJ82% MLB | 26 | MLBSF | 14 | 14 | 87 | 4.48 | 4.54 | 18.2% | 7.8% | 0.7 | |
| 2029PROJ87% MLB | 27 | MLBSF | 14 | 14 | 83 | 4.50 | 4.54 | 18.5% | 7.9% | 0.7 |
Statcast · Contract
Career Stats + Projections
Methodology▸ how WAR & MLE are computed
Stats are park-neutral MLB equivalents. The "TEAM" column shows current org affiliation only — we do NOT project at that team's park.
Rates (K%, BB%, HR-BF) are park-stripped; MiLB stat lines are translated to their MLB-equivalent via per-level MLE factors.
WAR is computed from projected runs prevented vs a replacement pitcher (the marginal arm a team would call up if this pitcher were unavailable) — calibrated to the standard WAR scale.
| Year | Age | Lvl | Team | G | GS | IP | BF | K | BB | HR | GS% | IP/G | K% | BB% | K-BB% | HR% | ERA | FIP | WAR |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ▸ Career — actual stats, one row per year (as recorded, no adjustments) | |||||||||||||||||||
| ▸ Career — adjusted (each season translated to a park/league-neutral MLB-equivalent line; levels combined per year) | |||||||||||||||||||
| ▸ Model inputs — neutral MLE (past 3 seasons + 2027 so far) | |||||||||||||||||||
| 2022 | 20 | ROK MLE | DSL Giants Orange | 4 | 3 | 15 | 54 | 18 | 3 | 0 | 75% | 3.8 | 22.7% | 6.9% | 15.7% | 0.0% | 0.60 | 2.07 | — |
| 2022 | 20 | ROK RAW | DSL Giants Orange | 4 | 3 | 15 | 54 | 18 | 3 | 0 | 75% | 3.8 | 33.3% | 5.6% | 27.8% | 0.0% | 0.60 | 1.30 | — |
| 2023 | 21 | ROK MLE | ACL Giants Black | 15 | 5 | 60 | 278 | 53 | 19 | 4 | 33% | 4.0 | 13.0% | 8.5% | 4.4% | 2.0% | 5.55 | 4.16 | — |
| 2023 | 21 | ROK RAW | ACL Giants Black | 15 | 5 | 60 | 278 | 53 | 19 | 4 | 33% | 4.0 | 19.1% | 6.8% | 12.2% | 1.4% | 5.55 | 3.15 | — |
| 2024 | 22 | MIX MLE | 2 levels | 26 | 14 | 97 | 417 | 105 | 35 | 5 | 54% | 3.7 | 19.0% | 9.7% | 9.3% | 1.5% | 2.78 | 3.54 | — |
| 2024 | 22 | MIX MLE | 2 levels | 26 | 14 | 97 | 417 | 105 | 35 | 5 | 54% | 3.7 | 19.0% | 9.7% | 9.3% | 1.5% | 2.78 | 3.54 | — |
| 2024 | 22 | MIX RAW | 2 levels | 26 | 14 | 97 | 417 | 105 | 35 | 5 | 54% | 3.7 | 25.2% | 8.4% | 16.8% | 1.2% | 2.78 | 2.69 | — |
| 2025 | 23 | A+ MLE | Eugene Emeralds | 26 | 26 | 127 | 538 | 118 | 38 | 13 | 100% | 4.9 | 16.9% | 8.1% | 8.8% | 3.1% | 3.96 | 4.39 | — |
| 2025 | 23 | A+ MLE | Eugene Emeralds | 26 | 26 | 127 | 538 | 118 | 38 | 13 | 100% | 4.9 | 16.9% | 8.1% | 8.8% | 3.1% | 3.96 | 4.39 | — |
| 2025 | 23 | A+ RAW | Eugene Emeralds | 26 | 26 | 127 | 538 | 118 | 38 | 13 | 100% | 4.9 | 21.9% | 7.1% | 14.9% | 2.4% | 3.96 | 3.47 | — |
| 2026 | 24 | MIX MLE | 3 levels | 29 | 26 | 145 | 613 | 139 | 49 | 18 | 90% | 5.0 | 19.1% | 8.0% | 11.1% | 3.3% | 4.29 | 4.34 | +1.8 |
| 2026 | 24 | MIX MLE | 3 levels | 29 | 26 | 145 | 613 | 139 | 49 | 18 | 90% | 5.0 | 19.1% | 8.0% | 11.1% | 3.3% | 4.29 | 4.34 | +1.8 |
| 2026 | 24 | MIX RAW | 3 levels | 29 | 26 | 145 | 613 | 139 | 49 | 18 | 90% | 5.0 | 22.7% | 8.0% | 14.7% | 2.9% | 4.29 | 3.81 | +2.8 |
| ▸ Career totals (raw MLB only — as recorded) | |||||||||||||||||||
| MLB Career | — | 5 | 4 | 25 | 104 | 14 | 7 | 4 | 80% | 4.9 | 13.5% | 6.7% | 6.7% | 3.8% | 3.65 | 4.92 | +0.1 | ||
| ▸ 2027 season — projected remainder (no 2027 stats recorded) | |||||||||||||||||||
| 2027 | 25 | MLB | SF | 11 | 11 | 64 | 270 | 46 | 21 | 9 | 100% | 5.8 | 17.0% | 7.9% | 9.1% | 3.2% | 4.58 | 4.79 | +0.4 |
| ▸ Career projection (2028+) — MLB context, MLB playing time (IP × MLB%) | |||||||||||||||||||
| 2028 | 26 | MLB MLE | SF | 18 | 18 | 106 | 448 | 82 | 35 | 14 | 100% | 5.9 | 18.2% | 7.8% | 10.4% | 3.2% | 4.61 | 4.67 | +0.9 |
| 2029 | 27 | MLB MLE | SF | 16 | 16 | 96 | 404 | 75 | 32 | 13 | 100% | 6.0 | 18.5% | 7.9% | 10.6% | 3.2% | 4.63 | 4.67 | +0.8 |
| 2030 | 28 | MLB MLE | SF | 15 | 15 | 89 | 376 | 70 | 30 | 12 | 100% | 5.9 | 18.6% | 8.0% | 10.5% | 3.3% | 4.69 | 4.73 | +0.7 |
| 2031 | 29 | MLB MLE | SF | 14 | 14 | 82 | 344 | 62 | 28 | 12 | 100% | 5.8 | 18.1% | 8.2% | 9.8% | 3.4% | 4.80 | 4.88 | +0.5 |
| 2032 | 30 | MLB MLE | SF | 12 | 12 | 73 | 308 | 53 | 26 | 11 | 100% | 6.1 | 17.3% | 8.5% | 8.8% | 3.6% | 4.97 | 5.09 | +0.3 |
| 2028 | 26 | MLB CTX | SF | 14 | 14 | 87 | 367 | 67 | 29 | 11 | 100% | 6.2 | 18.2% | 7.8% | 10.4% | 2.9% | 4.48 | 4.54 | +0.7 |
| 2029 | 27 | MLB CTX | SF | 14 | 14 | 83 | 350 | 65 | 28 | 10 | 100% | 5.9 | 18.5% | 7.9% | 10.6% | 3.0% | 4.50 | 4.54 | +0.7 |
| 2030 | 28 | MLB CTX | SF | 13 | 13 | 80 | 338 | 63 | 27 | 10 | 100% | 6.2 | 18.6% | 8.0% | 10.5% | 3.0% | 4.55 | 4.59 | +0.6 |
| 2031 | 29 | MLB CTX | SF | 12 | 12 | 75 | 317 | 57 | 26 | 10 | 100% | 6.2 | 18.1% | 8.2% | 9.8% | 3.2% | 4.66 | 4.74 | +0.4 |
| 2032 | 30 | MLB CTX | SF | 11 | 11 | 68 | 287 | 50 | 25 | 10 | 100% | 6.2 | 17.3% | 8.5% | 8.8% | 3.4% | 4.82 | 4.94 | +0.2 |
| ▸ Career totals — MLB only (actual + projected) | |||||||||||||||||||
| Career | — | RAW | 71 | 70 | 418 | 1764 | 315 | 141 | 55 | 99% | 5.9 | 17.9% | 8.0% | 9.9% | 3.1% | 4.54 | 4.32 | +5.3 | |
| / 200 IP | — | RAW | 34 | 33 | 200 | 844 | 151 | 68 | 26 | 99% | 5.9 | 17.9% | 8.0% | 9.9% | 3.1% | 4.54 | 4.32 | +2.5 | |
| Career | — | MLE | 100 | 74 | 444 | 1900 | 336 | 161 | 49 | 74% | 4.4 | 17.7% | 8.5% | 9.2% | 2.6% | 3.91 | 4.09 | +3.3 | |
| / 200 IP | — | MLE | 45 | 33 | 200 | 856 | 151 | 73 | 22 | 74% | 4.4 | 17.7% | 8.5% | 9.2% | 2.6% | 3.91 | 4.09 | +1.4 | |
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 AARichmond Flying Squirrels · 72 IPFIP 2.99 → 3.86 (+0.87)K% 30.1% → 24.4%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 30.07% | — | ×0.810 | 24.35% |
| BB% (unintentional) /BF | 7.43% | — | ×1.100 | 8.18% |
| HR / BF /BF | 2.70% | ÷1.000 | ×1.200 | 3.24% |
Factors used: pitcher AA level factors — K ×0.81, BB ×1.10, HR ×1.20. Pitcher translation is level-wide (no per-league rows, no age adjustment); HR/BF is park-adjusted at half strength (park HR factor 100).
Result: FIP 2.99 → 3.86, computed from the rates in the table with the same formula before and after. The MLE line is not regressed to the mean — regression is applied when seasons are blended into a projection (how).
2026 AAASacramento River Cats · 48 IPFIP 4.41 → 4.64 (+0.24)K% 16.9% → 14.5%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 16.90% | — | ×0.860 | 14.54% |
| BB% (unintentional) /BF | 9.39% | — | ×0.900 | 8.45% |
| HR / BF /BF | 2.82% | ÷1.000 | ×1.100 | 3.10% |
Factors used: pitcher AAA level factors (Triple-A 2023+ robo-zone set: walks improve on promotion) — K ×0.86, BB ×0.90, HR ×1.10. Pitcher translation is level-wide (no per-league rows, no age adjustment); HR/BF is park-adjusted at half strength (park HR factor 100).
Result: FIP 4.41 → 4.64, computed from the rates in the table with the same formula before and after. The MLE line is not regressed to the mean — regression is applied when seasons are blended into a projection (how).
2025 A+Eugene Emeralds · 127 IPFIP 3.47 → 4.39 (+0.92)K% 21.9% → 16.9%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 21.93% | — | ×0.770 | 16.89% |
| BB% (unintentional) /BF | 7.06% | — | ×1.150 | 8.12% |
| HR / BF /BF | 2.42% | ÷0.980 | ×1.250 | 3.08% |
Factors used: pitcher A+ level factors — K ×0.77, BB ×1.15, HR ×1.25. Pitcher translation is level-wide (no per-league rows, no age adjustment); HR/BF is park-adjusted at half strength (park HR factor 96).
Result: FIP 3.47 → 4.39, computed from the rates in the table with the same formula before and after. The MLE line is not regressed to the mean — regression is applied when seasons are blended into a projection (how).
2024 A+Eugene Emeralds · 54 IPFIP 3.57 → 4.47 (+0.90)K% 22.7% → 17.5%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 22.73% | — | ×0.770 | 17.50% |
| BB% (unintentional) /BF | 9.92% | — | ×1.150 | 11.40% |
| HR / BF /BF | 2.07% | ÷1.010 | ×1.250 | 2.56% |
Factors used: pitcher A+ level factors — K ×0.77, BB ×1.15, HR ×1.25. Pitcher translation is level-wide (no per-league rows, no age adjustment); HR/BF is park-adjusted at half strength (park HR factor 102).
Result: FIP 3.57 → 4.47, computed from the rates in the table with the same formula before and after. The MLE line is not regressed to the mean — regression is applied when seasons are blended into a projection (how).
2024 ASan Jose Giants · 43 IPFIP 1.48 → 2.25 (+0.77)K% 28.6% → 21.1%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 28.57% | — | ×0.740 | 21.14% |
| BB% (unintentional) /BF | 6.29% | — | ×1.180 | 7.42% |
| HR / BF /BF | 0.00% | ÷0.959 | ×1.300 | 0.00% |
Factors used: pitcher A level factors — K ×0.74, BB ×1.18, HR ×1.30. Pitcher translation is level-wide (no per-league rows, no age adjustment); HR/BF is park-adjusted at half strength (park HR factor 92).
Result: FIP 1.48 → 2.25, computed from the rates in the table with the same formula before and after. The MLE line is not regressed to the mean — regression is applied when seasons are blended into a projection (how).
2023 ROKACL Giants Black · 60 IPFIP 3.15 → 4.16 (+1.01)K% 19.1% → 13.0%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 19.06% | — | ×0.680 | 12.96% |
| BB% (unintentional) /BF | 6.83% | — | ×1.250 | 8.54% |
| HR / BF /BF | 1.44% | ÷1.031 | ×1.400 | 1.95% |
Factors used: pitcher ROK level factors — K ×0.68, BB ×1.25, HR ×1.40. Pitcher translation is level-wide (no per-league rows, no age adjustment); HR/BF is park-adjusted at half strength (park HR factor 106).
Result: FIP 3.15 → 4.16, computed from the rates in the table with the same formula before and after. The MLE line is not regressed to the mean — regression is applied when seasons are blended into a projection (how).
2022 ROKDSL Giants Orange · 15 IPFIP 0.99 → 2.07 (+1.08)K% 33.3% → 22.7%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 33.33% | — | ×0.680 | 22.67% |
| BB% (unintentional) /BF | 5.56% | — | ×1.250 | 6.94% |
| HR / BF /BF | 0.00% | ÷0.973 | ×1.400 | 0.00% |
Factors used: pitcher ROK level factors — K ×0.68, BB ×1.25, HR ×1.40. Pitcher translation is level-wide (no per-league rows, no age adjustment); HR/BF is park-adjusted at half strength (park HR factor 95).
Result: FIP 0.99 → 2.07, computed from the rates in the table with the same formula before and after. The MLE line is not regressed to the mean — regression is applied when seasons are blended into a projection (how).
Career Comps
Completed MLB careers (no pro action in 2+ yrs) whose totals — actual + projected — most resemble this player's. Pool: 2,161 pitcher careers (1,251 from 1990-2025 + 910 historical, 1901-2023), also matched on career-to-date at the same age. * Historical (Lahman) careers: rates era-adjusted to 2001-24 league levels; WAR is an OGILVIE proxy.
| Player | 162s | IP/yr | K% | BB% | HR/9 | ERA |
|---|---|---|---|---|---|---|
| OGILVIE CAREER PROJECTION | 2.8 | 80 | 17.8% | 8.0% | 1.29 | 4.65 |
| Randy O'Neal ('84-'90, 1 WAR*) | 2.2 | 73 | 17.4%* | 7.8%* | 1.21* | 4.65* |
| Ross Ohlendorf ('16) | 2.9 | 84 | 17.2% | 8.6% | 1.38 | 4.82 |
| Chad Bettis ('19) | 3.0 | 86 | 16.2% | 7.9% | 1.18 | 5.12 |
| Bob Sadowski ('63-'66, 2 WAR*) | 2.2 | 110 | 17.7%* | 8.0%* | 1.20* | 4.73* |
| Alfredo Simon ('16) | 3.9 | 111 | 15.7% | 8.0% | 1.22 | 4.56 |
| John Martin ('80-'83, 1 WAR*) | 1.5 | 73 | 14.5%* | 8.1%* | 1.37* | 4.61* |