Tommy Kahnle
P Worcester Red Sox| Year | Age | Lvl / Team | G | GS | IP | ERA | FIP | K% | BB% | WAR | MLE rates |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 2024 | 34 | MIX3 levels | 55 | 2 | 48 | 1.89 | 3.20 | 29.4% | 9.3% | 0.8 | K 25.7% · BB 10.1% · FIP 3.64 |
| 2025 | 35 | MLBDET | 66 | 0 | 63 | 4.43 | 4.64 | 18.7% | 11.6% | -0.1 | |
| 2026 | 36 | MIX2 levels | 31 | 0 | 34 | 3.15 | 3.94 | 21.5% | 12.1% | 0.2 | K 21.9% · BB 10.2% · FIP 3.11 |
| 2027PROJ | 37 | MLBBOS | 59 | 0 | 62 | 4.27 | 4.57 | 21.3% | 10.9% | -0.0 | |
| 2028PROJ | 38 | MLBBOS | 23 | 0 | 24 | 4.71 | 5.00 | 20.2% | 11.6% | -0.1 | |
| 2029PROJ | 39 | MLBBOS | 9 | 0 | 9 | 5.15 | 5.44 | 19.1% | 12.3% | -0.1 |
Grades · Statcast · Contract
Contract
No contract data on file. Pre-MLB players and minor-league free agents do not yet have salary projections — entries are added at first 40-man roster placement.
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) | |||||||||||||||||||
| 2014 | 24 | MLB MLE | Colorado Rockies | 54 | 0 | 69 | 285 | 63 | 29 | 7 | 0% | 1.3 | 22.1% | 10.2% | 11.9% | 2.2% | 4.19 | 3.72 | +0.7 |
| 2014 | 24 | MLB RAW | Colorado Rockies | 54 | 0 | 69 | 285 | 63 | 29 | 7 | 0% | 1.3 | 22.1% | 10.2% | 11.9% | 2.5% | 4.19 | 3.86 | +0.6 |
| 2015 | 25 | MIX MLE | 2 levels | 57 | 0 | 60 | 267 | 67 | 39 | 6 | 0% | 1.1 | 23.8% | 14.8% | 9.0% | 2.1% | 4.77 | 4.13 | +0.3 |
| 2015 | 25 | MIX RAW | 2 levels | 57 | 0 | 60 | 267 | 67 | 39 | 6 | 0% | 1.1 | 25.1% | 14.6% | 10.5% | 2.2% | 4.77 | 4.11 | +0.3 |
| 2016 | 26 | MIX MLE | 2 levels | 52 | 0 | 54 | 228 | 61 | 27 | 2 | 0% | 1.0 | 24.9% | 12.1% | 12.8% | 0.9% | 2.82 | 3.00 | +1.0 |
| 2016 | 26 | MIX RAW | 2 levels | 52 | 0 | 54 | 228 | 61 | 27 | 2 | 0% | 1.0 | 26.8% | 11.8% | 14.9% | 0.9% | 2.82 | 2.82 | +1.1 |
| 2017 | 27 | MLB MLE | New York Yankees | 69 | 0 | 63 | 256 | 96 | 16 | 4 | 0% | 0.9 | 37.5% | 6.2% | 31.2% | 1.5% | 2.59 | 1.53 | +2.3 |
| 2017 | 27 | MLB RAW | New York Yankees | 69 | 0 | 63 | 256 | 96 | 16 | 4 | 0% | 0.9 | 37.5% | 6.2% | 31.2% | 1.6% | 2.59 | 1.63 | +2.2 |
| 2018 | 28 | MIX MLE | 3 levels | 50 | 1 | 50 | 222 | 69 | 26 | 6 | 2% | 1.0 | 29.2% | 12.4% | 16.8% | 2.3% | 5.22 | 3.46 | +0.6 |
| 2018 | 28 | MIX RAW | 3 levels | 50 | 1 | 50 | 222 | 69 | 26 | 6 | 2% | 1.0 | 31.1% | 11.7% | 19.4% | 2.7% | 5.22 | 3.46 | +0.6 |
| 2019 | 29 | MLB MLE | New York Yankees | 72 | 0 | 61 | 248 | 88 | 20 | 9 | 0% | 0.9 | 35.5% | 8.1% | 27.4% | 3.4% | 3.67 | 2.99 | +1.1 |
| 2019 | 29 | MLB RAW | New York Yankees | 72 | 0 | 61 | 248 | 88 | 20 | 9 | 0% | 0.9 | 35.5% | 8.1% | 27.4% | 3.6% | 3.67 | 3.12 | +1.0 |
| 2020 | 30 | MLB MLE | New York Yankees | 1 | 0 | 1 | 6 | 3 | 0 | 0 | 0% | 1.0 | 50.0% | 0.0% | 50.0% | 0.0% | 0.00 | -1.12 | +0.1 |
| 2020 | 30 | MLB RAW | New York Yankees | 1 | 0 | 1 | 6 | 3 | 0 | 0 | 0% | 1.0 | 50.0% | 0.0% | 50.0% | 0.0% | 0.00 | -2.90 | +0.1 |
| 2022 | 32 | MIX MLE | 3 levels | 28 | 3 | 26 | 102 | 28 | 6 | 4 | 11% | 0.9 | 27.5% | 5.9% | 21.6% | 3.9% | 3.12 | 3.68 | +0.3 |
| 2022 | 32 | MIX RAW | 3 levels | 28 | 3 | 26 | 102 | 28 | 6 | 4 | 11% | 0.9 | 27.5% | 5.9% | 21.6% | 3.9% | 3.12 | 3.64 | +0.3 |
| 2023 | 33 | MIX MLE | 4 levels | 47 | 2 | 46 | 184 | 54 | 22 | 5 | 4% | 1.0 | 29.1% | 11.5% | 17.6% | 2.8% | 2.56 | 3.66 | +0.5 |
| 2023 | 33 | MIX RAW | 4 levels | 47 | 2 | 46 | 184 | 54 | 22 | 5 | 4% | 1.0 | 29.3% | 12.0% | 17.4% | 2.7% | 2.56 | 3.60 | +0.5 |
| 2024 | 34 | MIX MLE | 3 levels | 55 | 2 | 48 | 194 | 57 | 18 | 5 | 4% | 0.9 | 25.7% | 10.1% | 15.6% | 2.6% | 1.89 | 3.64 | +0.5 |
| 2024 | 34 | MIX MLE | 3 levels | 55 | 2 | 48 | 194 | 57 | 18 | 5 | 4% | 0.9 | 25.7% | 10.1% | 15.6% | 2.6% | 1.89 | 3.64 | +0.5 |
| 2024 | 34 | MIX RAW | 3 levels | 55 | 2 | 48 | 194 | 57 | 18 | 5 | 4% | 0.9 | 29.4% | 9.3% | 20.1% | 2.6% | 1.89 | 3.20 | +0.8 |
| 2025 | 35 | MLB MLE | Detroit Tigers | 66 | 0 | 63 | 267 | 50 | 31 | 8 | 0% | 1.0 | 18.7% | 11.6% | 7.1% | 3.1% | 4.43 | 4.71 | -0.1 |
| 2025 | 35 | MLB MLE | Detroit Tigers | 66 | 0 | 63 | 267 | 50 | 31 | 8 | 0% | 1.0 | 18.7% | 11.6% | 7.1% | 3.1% | 4.43 | 4.71 | -0.1 |
| 2025 | 35 | MLB RAW | Detroit Tigers | 66 | 0 | 63 | 267 | 50 | 31 | 8 | 0% | 1.0 | 18.7% | 11.6% | 7.1% | 3.0% | 4.43 | 4.64 | -0.1 |
| 2026 | 36 | MIX MLE | 2 levels | 31 | 0 | 34 | 149 | 32 | 18 | 3 | 0% | 1.1 | 21.9% | 10.2% | 11.7% | 1.0% | 3.15 | 3.11 | +0.6 |
| 2026 | 36 | MIX MLE | 2 levels | 31 | 0 | 34 | 149 | 32 | 18 | 3 | 0% | 1.1 | 21.9% | 10.2% | 11.7% | 1.0% | 3.15 | 3.11 | +0.6 |
| 2026 | 36 | MIX RAW | 2 levels | 31 | 0 | 34 | 149 | 32 | 18 | 3 | 0% | 1.1 | 21.5% | 12.1% | 9.4% | 2.0% | 3.15 | 3.94 | +0.2 |
| ▸ Career totals (raw MLB only — as recorded) | |||||||||||||||||||
| MLB Career | — | 464 | 0 | 446 | 1876 | 507 | 201 | 50 | 0% | 1.0 | 27.0% | 10.7% | 16.3% | 2.7% | 3.70 | 3.64 | +4.8 | ||
| ▸ 2027 season — projected remainder (no 2027 stats recorded) | |||||||||||||||||||
| 2027 | 37 | MLB | BOS | 59 | 0 | 62 | 262 | 56 | 28 | 7 | 0% | 1.1 | 21.3% | 10.9% | 10.5% | 2.8% | 4.27 | 4.57 | -0.0 |
| ▸ Career projection (2028+) — MLB context, MLB playing time (IP × MLB%) | |||||||||||||||||||
| 2028 | 38 | MLB MLE | BOS | 23 | 0 | 24 | 101 | 20 | 12 | 3 | 0% | 1.0 | 20.2% | 11.6% | 8.6% | 3.2% | 4.71 | 5.00 | -0.1 |
| 2029 | 39 | MLB MLE | BOS | 8 | 0 | 9 | 38 | 7 | 5 | 1 | 0% | 1.1 | 19.1% | 12.3% | 6.8% | 3.7% | 5.15 | 5.44 | -0.1 |
| 2030 | 40 | MLB MLE | BOS | 3 | 0 | 3 | 14 | 3 | 2 | 1 | 0% | 1.1 | 17.9% | 13.0% | 4.9% | 4.1% | 5.58 | 5.87 | -0.0 |
| 2028 | 38 | MLB CTX | BOS | 23 | 0 | 24 | 101 | 20 | 12 | 3 | 0% | 1.0 | 20.2% | 11.6% | 8.6% | 3.2% | 4.71 | 5.00 | -0.1 |
| 2029 | 39 | MLB CTX | BOS | 9 | 0 | 9 | 38 | 7 | 5 | 1 | 0% | 1.0 | 19.1% | 12.3% | 6.8% | 3.7% | 5.15 | 5.44 | -0.1 |
| 2030 | 40 | MLB CTX | BOS | 3 | 0 | 3 | 13 | 2 | 2 | 1 | 0% | 1.0 | 17.9% | 13.0% | 4.9% | 4.1% | 5.58 | 5.87 | -0.0 |
| ▸ Career totals — MLB only (actual + projected) | |||||||||||||||||||
| Career | — | RAW | 498 | 0 | 482 | 2029 | 537 | 219 | 55 | 0% | 1.0 | 26.5% | 10.8% | 15.7% | 2.7% | 3.79 | 3.73 | +4.7 | |
| / 200 IP | — | RAW | 207 | 0 | 200 | 842 | 223 | 91 | 23 | 0% | 1.0 | 26.5% | 10.8% | 15.7% | 2.7% | 3.79 | 3.73 | +2.0 | |
| Career | — | MLE | 582 | 8 | 575 | 2408 | 649 | 253 | 55 | 1% | 1.0 | 27.0% | 10.5% | 16.5% | 2.3% | 3.57 | 3.41 | +4.6 | |
| / 200 IP | — | MLE | 202 | 3 | 200 | 838 | 226 | 88 | 19 | 1% | 1.0 | 27.0% | 10.5% | 16.5% | 2.3% | 3.57 | 3.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.
2026 AAAWorcester Red Sox · 25 IPFIP 2.90 → 3.11 (+0.21)K% 25.5% → 21.9%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 25.47% | — | ×0.860 | 21.91% |
| BB% (unintentional) /BF | 11.32% | — | ×0.900 | 10.19% |
| HR / BF /BF | 0.94% | ÷1.000 | ×1.100 | 1.04% |
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 2.90 → 3.11, 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 AAAOklahoma City Dodgers · 10 IPFIP 4.68 → 5.27 (+0.59)K% 25.0% → 22.0%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 25.00% | — | ×0.880 | 22.00% |
| BB% (unintentional) /BF | 7.50% | — | ×1.050 | 7.88% |
| HR / BF /BF | 5.00% | ÷0.997 | ×1.100 | 5.52% |
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 99).
Result: FIP 4.68 → 5.27, 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 AAAScranton/Wilkes-Barre RailRiders · 25 IPFIP 2.51 → 2.98 (+0.47)K% 34.6% → 30.4%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 34.58% | — | ×0.880 | 30.43% |
| BB% (unintentional) /BF | 10.28% | — | ×1.050 | 10.79% |
| HR / BF /BF | 1.87% | ÷1.046 | ×1.100 | 1.97% |
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 109).
Result: FIP 2.51 → 2.98, 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).
2016 AAACharlotte Knights · 27 IPFIP 1.47 → 1.87 (+0.39)K% 33.0% → 29.1%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 33.03% | — | ×0.880 | 29.06% |
| BB% (unintentional) /BF | 9.17% | — | ×1.050 | 9.63% |
| HR / BF /BF | 0.00% | ÷0.950 | ×1.100 | 0.00% |
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 1.47 → 1.87, 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).
2015 AAAAlbuquerque Isotopes · 27 IPFIP 3.82 → 4.13 (+0.31)K% 25.0% → 22.0%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 25.00% | — | ×0.880 | 22.00% |
| BB% (unintentional) /BF | 10.71% | — | ×1.050 | 11.25% |
| HR / BF /BF | 2.68% | ÷1.105 | ×1.100 | 2.67% |
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 121).
Result: FIP 3.82 → 4.13, 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: 1,234 reliever careers (754 from 1990-2025 + 480 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.7 | 42 | 25.9% | 11.2% | 1.06 | 3.84 |
| Rudy Seanez ('08) | 2.8 | 43 | 23.1% | 11.4% | 0.93 | 4.11 |
| Brad Boxberger ('23) | 2.4 | 43 | 28.7% | 11.5% | 1.19 | 3.50 |
| Michael Wuertz ('11) | 2.1 | 52 | 25.3% | 11.3% | 0.96 | 3.71 |
| Alberto Reyes ('95-'08, 5 WAR*) | 2.1 | 54 | 27.1%* | 10.2%* | 1.18* | 3.66* |
| Tony Fossas ('88-'99, 2 WAR*) | 2.1 | 42 | 21.9%* | 9.3%* | 0.99* | 3.88* |
| Mike Fetters ('89-'04, 6 WAR*) | 3.6 | 55 | 20.3%* | 10.4%* | 0.83* | 3.70* |