Johan Oviedo
P Boston Red Sox| Year | Age | Lvl / Team | G | GS | IP | ERA | FIP | K% | BB% | WAR | MLE rates |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 2023 | 25 | MLBPIT | 32 | 32 | 178 | 4.31 | 4.10 | 20.2% | 10.5% | 2.7 | |
| 2025 | 27 | MIX5 levels | 17 | 17 | 66 | 3.39 | 3.87 | 28.5% | 10.9% | 1.2 | K 26.9% · BB 11.7% · FIP 4.83 |
| 2026 | 28 | MIX2 levels | 2 | 1 | 6 | 7.50 | 6.10 | 25.9% | 7.4% | -0.0 | K 25.9% · BB 7.4% · FIP 5.91 |
| 2027PROJ | 29 | MLBBOS | 16 | 16 | 98 | 4.44 | 4.57 | 26.3% | 11.8% | 0.9 | |
| 2028PROJ | 30 | MLBBOS | 19 | 19 | 114 | 4.59 | 4.73 | 25.6% | 12.1% | 0.8 | |
| 2029PROJ | 31 | MLBBOS | 14 | 14 | 86 | 4.81 | 4.96 | 24.9% | 12.4% | 0.4 |
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) | |||||||||||||||||||
| 2016 | 18 | ROK MLE | DSL Cardinals | 7 | 7 | 22 | 88 | 29 | 6 | 0 | 100% | 3.1 | 22.4% | 8.5% | 13.9% | 0.0% | 1.66 | 2.29 | — |
| 2016 | 18 | ROK RAW | DSL Cardinals | 7 | 7 | 22 | 88 | 29 | 6 | 0 | 100% | 3.1 | 33.0% | 6.8% | 26.1% | 0.0% | 1.66 | 1.25 | — |
| 2017 | 19 | ROK MLE | Johnson City Cardinals | 6 | 6 | 28 | 125 | 31 | 18 | 0 | 100% | 4.6 | 16.9% | 18.0% | -1.1% | 0.0% | 4.88 | 3.96 | — |
| 2017 | 19 | ROK RAW | Johnson City Cardinals | 6 | 6 | 28 | 125 | 31 | 18 | 0 | 100% | 4.6 | 24.8% | 14.4% | 10.4% | 0.0% | 4.88 | 2.81 | — |
| 2018 | 20 | A MLE | Peoria Chiefs | 25 | 23 | 122 | 542 | 118 | 79 | 6 | 92% | 4.9 | 16.1% | 17.2% | -1.1% | 1.5% | 4.22 | 4.72 | — |
| 2018 | 20 | A RAW | Peoria Chiefs | 25 | 23 | 122 | 542 | 118 | 79 | 6 | 92% | 4.9 | 21.8% | 14.6% | 7.2% | 1.1% | 4.22 | 3.75 | — |
| 2019 | 21 | MIX MLE | 2 levels | 29 | 28 | 147 | 655 | 163 | 76 | 10 | 97% | 5.1 | 19.9% | 12.9% | 7.1% | 1.7% | 4.73 | 3.98 | — |
| 2019 | 21 | MIX RAW | 2 levels | 29 | 28 | 147 | 655 | 163 | 76 | 10 | 97% | 5.1 | 24.9% | 11.6% | 13.3% | 1.5% | 4.73 | 3.32 | — |
| 2020 | 22 | MLB MLE | St. Louis Cardinals | 5 | 5 | 25 | 112 | 16 | 10 | 3 | 100% | 4.9 | 14.3% | 8.9% | 5.4% | 2.9% | 5.47 | 4.61 | +0.2 |
| 2020 | 22 | MLB RAW | St. Louis Cardinals | 5 | 5 | 25 | 112 | 16 | 10 | 3 | 100% | 4.9 | 14.3% | 8.9% | 5.4% | 2.7% | 5.47 | 4.60 | +0.2 |
| 2021 | 23 | MIX MLE | 2 levels | 26 | 24 | 117 | 533 | 110 | 64 | 15 | 92% | 4.5 | 19.3% | 12.3% | 7.0% | 3.1% | 5.48 | 4.75 | +0.9 |
| 2021 | 23 | MIX RAW | 2 levels | 26 | 24 | 117 | 533 | 110 | 64 | 15 | 92% | 4.5 | 20.6% | 12.0% | 8.6% | 2.8% | 5.48 | 4.53 | +1.2 |
| 2022 | 24 | MIX MLE | 2 levels | 36 | 22 | 117 | 501 | 118 | 49 | 19 | 61% | 3.3 | 22.0% | 10.0% | 12.0% | 4.1% | 3.99 | 4.77 | +0.9 |
| 2022 | 24 | MIX RAW | 2 levels | 36 | 22 | 117 | 501 | 118 | 49 | 19 | 61% | 3.3 | 23.6% | 9.8% | 13.8% | 3.8% | 3.99 | 4.45 | +1.3 |
| 2023 | 25 | MLB MLE | Pittsburgh Pirates | 32 | 32 | 178 | 781 | 158 | 82 | 19 | 100% | 5.6 | 20.2% | 10.5% | 9.7% | 2.6% | 4.31 | 4.17 | +2.6 |
| 2023 | 25 | MLB RAW | Pittsburgh Pirates | 32 | 32 | 178 | 781 | 158 | 82 | 19 | 100% | 5.6 | 20.2% | 10.5% | 9.7% | 2.4% | 4.31 | 4.10 | +2.7 |
| 2025 | 27 | MIX MLE | 5 levels | 17 | 17 | 66 | 274 | 78 | 30 | 9 | 100% | 3.9 | 26.9% | 11.7% | 15.2% | 4.6% | 3.39 | 4.83 | +0.4 |
| 2025 | 27 | MIX MLE | 5 levels | 17 | 17 | 66 | 274 | 78 | 30 | 9 | 100% | 3.9 | 26.9% | 11.7% | 15.2% | 4.6% | 3.39 | 4.83 | +0.4 |
| 2025 | 27 | MIX RAW | 5 levels | 17 | 17 | 66 | 274 | 78 | 30 | 9 | 100% | 3.9 | 28.5% | 10.9% | 17.5% | 3.3% | 3.39 | 3.87 | +1.2 |
| 2026 | 28 | MIX MLE | 2 levels | 2 | 1 | 6 | 27 | 7 | 2 | 2 | 50% | 3.0 | 25.9% | 7.4% | 18.5% | 7.4% | 7.50 | 5.91 | -0.0 |
| 2026 | 28 | MIX MLE | 2 levels | 2 | 1 | 6 | 27 | 7 | 2 | 2 | 50% | 3.0 | 25.9% | 7.4% | 18.5% | 7.4% | 7.50 | 5.91 | -0.0 |
| 2026 | 28 | MIX RAW | 2 levels | 2 | 1 | 6 | 27 | 7 | 2 | 2 | 50% | 3.0 | 25.9% | 7.4% | 18.5% | 7.4% | 7.50 | 6.10 | -0.0 |
| ▸ Career totals (raw MLB only — as recorded) | |||||||||||||||||||
| MLB Career | — | 82 | 67 | 365 | 1611 | 324 | 174 | 43 | 82% | 4.4 | 20.1% | 10.8% | 9.3% | 2.7% | 4.29 | 4.29 | +4.8 | ||
| ▸ 2027 season — projected remainder (no 2027 stats recorded) | |||||||||||||||||||
| 2027 | 29 | MLB | BOS | 16 | 16 | 98 | 414 | 109 | 49 | 14 | 100% | 6.1 | 26.3% | 11.8% | 14.5% | 3.3% | 4.44 | 4.57 | +0.9 |
| ▸ Career projection (2028+) — MLB context, MLB playing time (IP × MLB%) | |||||||||||||||||||
| 2028 | 30 | MLB MLE | BOS | 19 | 19 | 114 | 479 | 123 | 58 | 17 | 100% | 6.0 | 25.6% | 12.1% | 13.5% | 3.5% | 4.64 | 4.78 | +0.8 |
| 2029 | 31 | MLB MLE | BOS | 14 | 14 | 86 | 363 | 90 | 45 | 14 | 100% | 6.1 | 24.9% | 12.4% | 12.4% | 3.7% | 4.86 | 5.01 | +0.4 |
| 2030 | 32 | MLB MLE | BOS | 11 | 11 | 66 | 277 | 67 | 36 | 11 | 100% | 6.0 | 24.1% | 12.8% | 11.2% | 4.0% | 5.10 | 5.26 | +0.1 |
| 2028 | 30 | MLB CTX | BOS | 19 | 19 | 114 | 481 | 123 | 58 | 17 | 100% | 6.0 | 25.6% | 12.1% | 13.5% | 3.4% | 4.59 | 4.73 | +0.8 |
| 2029 | 31 | MLB CTX | BOS | 14 | 14 | 86 | 363 | 90 | 45 | 13 | 100% | 6.1 | 24.9% | 12.4% | 12.4% | 3.7% | 4.81 | 4.96 | +0.4 |
| 2030 | 32 | MLB CTX | BOS | 11 | 11 | 66 | 279 | 67 | 36 | 11 | 100% | 6.0 | 24.1% | 12.8% | 11.2% | 3.9% | 5.05 | 5.21 | +0.1 |
| ▸ Career totals — MLB only (actual + projected) | |||||||||||||||||||
| Career | — | RAW | 126 | 111 | 630 | 2731 | 604 | 313 | 83 | 88% | 5.0 | 22.1% | 11.4% | 10.7% | 3.1% | 4.50 | 4.36 | +7.7 | |
| / 200 IP | — | RAW | 40 | 35 | 200 | 867 | 192 | 99 | 26 | 88% | 5.0 | 22.1% | 11.4% | 10.7% | 3.1% | 4.50 | 4.36 | +2.4 | |
| Career | — | MLE | 185 | 165 | 826 | 3638 | 727 | 449 | 95 | 89% | 4.5 | 20.0% | 12.3% | 7.6% | 2.6% | 4.42 | 4.41 | +6.0 | |
| / 200 IP | — | MLE | 45 | 40 | 200 | 881 | 176 | 109 | 23 | 89% | 4.5 | 20.0% | 12.3% | 7.6% | 2.6% | 4.42 | 4.41 | +1.9 | |
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.
2025 AAAIndianapolis Indians · 14 IPFIP 3.78 → 4.84 (+1.06)K% 40.0% → 34.4%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 40.00% | — | ×0.860 | 34.40% |
| BB% (unintentional) /BF | 6.00% | — | ×0.900 | 5.40% |
| HR / BF /BF | 6.00% | ÷0.915 | ×1.100 | 7.21% |
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 83).
Result: FIP 3.78 → 4.84, 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 AAAltoona Curve · 8 IPFIP 0.99 → 1.39 (+0.40)K% 25.0% → 20.2%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 25.00% | — | ×0.810 | 20.25% |
| BB% (unintentional) /BF | 0.00% | — | ×1.100 | 0.00% |
| HR / BF /BF | 0.00% | ÷0.891 | ×1.200 | 0.00% |
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 78).
Result: FIP 0.99 → 1.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).
2022 AAAIndianapolis Indians · 61 IPFIP 5.25 → 5.82 (+0.57)K% 24.7% → 21.7%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 24.71% | — | ×0.880 | 21.75% |
| BB% (unintentional) /BF | 10.04% | — | ×1.050 | 10.54% |
| HR / BF /BF | 5.41% | ÷1.013 | ×1.100 | 5.87% |
Factors used: pitcher AAA level factors — K ×0.88, BB ×1.05, 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 103).
Result: FIP 5.25 → 5.82, 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).
2021 AAAMemphis Redbirds · 54 IPFIP 4.13 → 4.70 (+0.57)K% 24.1% → 21.2%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 24.08% | — | ×0.880 | 21.19% |
| BB% (unintentional) /BF | 11.84% | — | ×1.050 | 12.43% |
| HR / BF /BF | 2.86% | ÷0.949 | ×1.100 | 3.31% |
Factors used: pitcher AAA level factors — K ×0.88, BB ×1.05, 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 90).
Result: FIP 4.13 → 4.70, 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).
2019 AASpringfield Cardinals · 113 IPFIP 3.54 → 4.17 (+0.64)K% 24.9% → 20.2%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 24.90% | — | ×0.810 | 20.17% |
| BB% (unintentional) /BF | 12.45% | — | ×1.100 | 13.70% |
| HR / BF /BF | 1.75% | ÷1.108 | ×1.200 | 1.90% |
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 122).
Result: FIP 3.54 → 4.17, 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).
2019 A+Palm Beach Cardinals · 34 IPFIP 2.47 → 3.26 (+0.79)K% 24.8% → 19.1%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 24.82% | — | ×0.770 | 19.11% |
| BB% (unintentional) /BF | 8.51% | — | ×1.150 | 9.79% |
| HR / BF /BF | 0.71% | ÷0.912 | ×1.250 | 0.97% |
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 82).
Result: FIP 2.47 → 3.26, 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).
2018 APeoria Chiefs · 122 IPFIP 3.72 → 4.72 (+1.01)K% 21.8% → 16.1%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 21.77% | — | ×0.740 | 16.11% |
| BB% (unintentional) /BF | 14.58% | — | ×1.180 | 17.20% |
| HR / BF /BF | 1.11% | ÷0.981 | ×1.300 | 1.47% |
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 96).
Result: FIP 3.72 → 4.72, 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).
2017 ROKJohnson City Cardinals · 28 IPFIP 2.83 → 3.96 (+1.13)K% 24.8% → 16.9%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 24.80% | — | ×0.680 | 16.86% |
| BB% (unintentional) /BF | 14.40% | — | ×1.250 | 18.00% |
| HR / BF /BF | 0.00% | ÷1.000 | ×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 100).
Result: FIP 2.83 → 3.96, 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 | 3.7 | 82 | 22.7% | 11.6% | 1.21 | 4.51 |
| Bobby Castillo ('77-'85, 5 WAR*) | 3.4 | 86 | 22.3%* | 11.3%* | 1.23* | 4.27* |
| Bill Butler ('69-'77, 2 WAR*) | 3.0 | 99 | 22.0%* | 11.3%* | 1.30* | 4.83* |
| Darrell Jackson ('78-'82, 3 WAR*) | 2.1 | 82 | 21.0%* | 10.4%* | 1.05* | 4.43* |
| Chad Kuhl ('24) | 3.3 | 84 | 20.0% | 10.4% | 1.31 | 4.98 |
| Jonathan Sánchez ('13) | 3.9 | 112 | 22.8% | 12.5% | 1.04 | 4.70 |
| Héctor Santiago ('21) | 4.7 | 105 | 20.7% | 10.6% | 1.38 | 4.12 |