David Festa

P Minnesota Twins
Age 27 RHP 6'6" / 185 lbs MLB Svc 2.0 · Ctrl thru 2030 peak 0.9 · 2028 ILInjured 60-Day (D60)
Overview
MLBSPIL-6040-MANPre-ArbFA 2031
YearAgeLvl / TeamGGSIPERAFIPK%BB%WARMLE rates
202323MIX2 levels2422924.193.1530.1%10.6%—K 24.5% · BB 11.2% · FIP 3.68
202424MIX2 levels29281254.483.4931.2%9.2%2.9K 28.9% · BB 8.7% · FIP 3.67
202525MIX2 levels1817854.363.6926.2%7.4%1.7K 24.7% · BB 7.2% · FIP 3.76
202626No MLB games played
2027PROJ27MLBMIN77404.224.1525.7%7.7%0.6
2028PROJ94% MLB28MLBMIN1111644.244.2425.6%7.8%0.9
2029PROJ95% MLB29MLBMIN1010624.344.4025.0%8.0%0.7
Last 3 seasons WAR 4.6  ·  Next 3 projected WAR 2.2Projected rows: MLB playing time only, park and league context applied.
ContractESTIMATED
Control thru2030Service2.302First FA2031
2027Pre-Arb$0.8M2028Arb-1$2M2029Arb-2$3M2030Arb-3$3M
Skills · percentileStatcast 2025
K%55
FB Velo44
xwOBA vs27
CompsErik Hiljus (age 28) · Todd Redmond (age 28) · Raynel Espinal (age 27)
2027 FULL-SEASON PROJECTIONrates below = full-season projection
showingPROJ
wRC+ AGAINSTvL 116108vR 100
ERA4.22
FIP4.15
K%25.7%
BB%7.7%
K-BB%18.1%
Proj IP43
Value2027 · WAR
Runs saved vs league avg · 43 IP
K: +1.4 runs (Runs saved by strikeouts vs lg-avg K%)+1KBB: +0.6 runs (Runs saved by walk suppression vs lg-avg BB%)+1BBCONTACT: -1.9 runs (Runs saved on contact quality (HR suppression) vs lg)-2CONTACTSTAM: +1.8 runs (Replacement credit for innings volume)+2STAMTotal WAR: +0.20 (43 IP)+0.2WAR
0.00.51.00.60.90.70.527282930313233343536
━ projected WAR━ paid WAR ($/8M) surplus deficit+$12M ctrl surplus
Grades · Statcast · Contract
Scouting Grades
STUF5555
CTRL5050
CMD5555
K†6060
Statcast Percentiles
FB Velo
p4494.1
Whiff%
p6327.4%
K%
p5523.1%
xwOBA vs
p270.339
Contract ESTIMATED · service-time + WAR-based estimator (needs verification)
Status   Pre-Arb
MLB Debut   2024
Service   2.302 yrs.days
Team Control Through   2030
First FA Year   2031
YearStatusSalary Proj WAR Value Surplus
2027Pre-Arb$0.8M+0.6$2M+$1M
2028Arb-1$2M+0.9$3M+$1M
2029Arb-2$3M+0.7$2M+$0.1M
2030Arb-3$3M+0.5$2M+$0.0M (cut)
Totals $6M $10M +$3M

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 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.

YearAge LvlTeam GGSIPBF KBBHR GS%IP/G K%BB%K-BB%HR% ERAFIP 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)
202121MIX MLE2 levels4083212400%2.137.5%12.5%25.0%0.0%4.321.52—
202121MIX RAW2 levels4083212400%2.137.5%12.5%25.0%0.0%4.321.66—
202222MIX MLE2 levels211810441310834686%4.919.9%9.5%10.4%1.9%2.433.67—
202222MIX RAW2 levels211810441310834686%4.926.2%8.2%17.9%1.5%2.432.75—
202323MIX MLE2 levels24229239611942992%3.824.5%11.2%13.3%2.2%4.193.68—
202323MIX RAW2 levels24229239611942992%3.830.1%10.6%19.4%2.3%4.193.15—
202424MIX MLE2 levels2928125532166491897%4.328.9%8.7%20.1%3.5%4.483.67+2.6
202424MIX MLE2 levels2928125532166491897%4.328.9%8.7%20.1%3.5%4.483.67+2.6
202424MIX RAW2 levels2928125532166491897%4.331.2%9.2%22.0%3.4%4.483.49+2.9
202525MIX MLE2 levels18178535192261294%4.724.7%7.2%17.4%3.3%4.363.76+1.7
202525MIX MLE2 levels18178535192261294%4.724.7%7.2%17.4%3.3%4.363.76+1.7
202525MIX RAW2 levels18178535192261294%4.726.2%7.4%18.8%3.4%4.363.69+1.7
▸ Career totals (raw MLB only — as recorded)
MLB Career—2523118506130421992%4.725.7%8.3%17.4%3.8%5.124.06+1.9
▸ 2027 season — projected remainder (no 2027 stats recorded)
202727MLBMIN774016943136100%5.725.7%7.7%18.1%3.4%4.224.15+0.6
▸ Career projection (2028+) — MLB context, MLB playing time (IP × MLB%)
202828MLB MLEMIN111168289742310100%6.225.6%7.8%17.8%3.5%4.234.23+0.9
202929MLB MLEMIN111165276692210100%5.925.0%8.0%17.0%3.7%4.334.39+0.8
203030MLB MLEMIN101062260632210100%6.224.3%8.3%16.0%3.9%4.494.60+0.6
202828MLB CTXMIN111164270692110100%5.825.6%7.8%17.8%3.5%4.244.24+0.9
202929MLB CTXMIN101062262662110100%6.225.0%8.0%17.0%3.7%4.344.40+0.7
203030MLB CTXMIN101058245602010100%5.824.3%8.3%16.0%3.9%4.504.61+0.5
▸ Career totals — MLB only (actual + projected)
Career— RAW565430212863251054896%5.425.3%8.2%17.1%3.7%4.664.04+4.9
/ 200 IP— RAW3736200851215693296%5.425.3%8.2%17.1%3.7%4.664.04+3.2
Career— MLE968541417244311594789%4.325.0%9.2%15.8%2.7%3.873.65+4.2
/ 200 IP— MLE4641200834209772389%4.325.0%9.2%15.8%2.7%3.873.65+2.7

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 AAASt. Paul Saints · 31 IPFIP 2.03 → 2.22 (+0.20)K% 32.0% → 27.5%
ComponentRawPark ÷Level factor ×= MLE
K% /BF31.97%—×0.86027.49%
BB% (unintentional) /BF5.74%—×0.9005.16%
HR / BF /BF1.64%÷1.253×1.1001.44%

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 151).

Result: FIP 2.03 → 2.22, 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 AAASt. Paul Saints · 60 IPFIP 3.38 → 3.78 (+0.40)K% 34.9% → 30.0%
ComponentRawPark ÷Level factor ×= MLE
K% /BF34.90%—×0.86030.02%
BB% (unintentional) /BF10.20%—×0.9009.18%
HR / BF /BF3.53%÷1.039×1.1003.74%

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 108).

Result: FIP 3.38 → 3.78, 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 AAWichita Wind Surge · 80 IPFIP 3.04 → 3.62 (+0.58)K% 30.4% → 24.6%
ComponentRawPark ÷Level factor ×= MLE
K% /BF30.41%—×0.81024.63%
BB% (unintentional) /BF9.65%—×1.10010.61%
HR / BF /BF2.34%÷1.231×1.2002.28%

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 146).

Result: FIP 3.04 → 3.62, 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 AAASt. Paul Saints · 12 IPFIP 3.88 → 4.09 (+0.21)K% 27.8% → 23.9%
ComponentRawPark ÷Level factor ×= MLE
K% /BF27.78%—×0.86023.89%
BB% (unintentional) /BF16.67%—×0.90015.00%
HR / BF /BF1.85%÷1.009×1.1002.02%

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 102).

Result: FIP 3.88 → 4.09, 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 A+Cedar Rapids Kernels · 80 IPFIP 3.09 → 3.97 (+0.88)K% 23.1% → 17.8%
ComponentRawPark ÷Level factor ×= MLE
K% /BF23.08%—×0.77017.77%
BB% (unintentional) /BF8.62%—×1.1509.91%
HR / BF /BF1.54%÷0.948×1.2502.03%

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 90).

Result: FIP 3.09 → 3.97, 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 AFort Myers Mighty Mussels · 24 IPFIP 1.42 → 2.59 (+1.17)K% 37.5% → 27.7%
ComponentRawPark ÷Level factor ×= MLE
K% /BF37.50%—×0.74027.75%
BB% (unintentional) /BF6.82%—×1.1808.05%
HR / BF /BF1.14%÷1.000×1.3001.48%

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 100).

Result: FIP 1.42 → 2.59, 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.

Player162sIP/yrK%BB%HR/9ERA
OGILVIE CAREER PROJECTION1.86025.3%8.1%1.424.58
Tyler Lyons ('20)1.45724.3%7.6%1.274.30
Michael Tonkin ('25)1.65523.2%8.1%1.284.23
Robert Stephenson ('25)1.96225.9%10.1%1.544.59
Julio Navarro ('62-'70, 1 WAR*)1.15321.7%*7.8%*1.55*4.13*
Steve Wilson ('88-'93, 0 WAR*)1.76921.6%*8.8%*1.25*4.84*
Pete Ladd ('79-'86, 0 WAR*)1.47224.6%*7.8%*1.53*4.42*