Riley O'Brien

P St. Louis Cardinals
Age 32 RHP 6'4" / 180 lbs MLB peak 0.5 · 2027
Overview
MLBRP40-MAN
YearAgeLvl / TeamGGSIPERAFIPK%BB%WARMLE rates
202429MIX2 levels220215.064.2720.4%13.3%0.1K 14.9% · BB 8.7% · FIP 2.94
202530MIX2 levels610672.272.6427.0%9.8%1.5K 25.4% · BB 9.5% · FIP 2.82
202631MLBSTL660644.083.2923.2%9.1%1.0
2027PROJ32MLBSTL510543.943.8925.3%10.1%0.4
2028PROJ95% MLB33MLBSTL370394.084.1724.5%10.5%0.2
2029PROJ90% MLB34MLBSTL240254.324.4723.6%11.0%0.0
Last 3 seasons WAR 2.6  ·  Next 3 projected WAR 0.6Projected rows: MLB playing time only, park and league context applied.
Contract
No contract data on file.
Skills · percentileStatcast 2026
FB Velo90
K%55
xwOBA vs26
Form5.06 ERA (proj 3.94) · K 20.9% (proj 25.3%) · BB 12.1% (proj 10.1%) ▼▼ last 90d · 21 IP through Oct 27
CompsJohn Axford (age 32) · Hirokazu Sawamura (age 33) · Jumbo Diaz (age 32)
2027 FULL-SEASON PROJECTIONrates below = full-season projection
showingPROJ
wRC+ AGAINSTvL 113105vR 97
ERA3.94
FIP3.89
K%25.3%
BB%10.1%
K-BB%15.3%
Proj IP58
Value2027 · WAR
Runs saved vs league avg · 58 IP
K: +3.9 runs (Runs saved by strikeouts vs lg-avg K%)+4KBB: -2.7 runs (Runs saved by walk suppression vs lg-avg BB%)-3BBCONTACT: +0.7 runs (Runs saved on contact quality (HR suppression) vs lg)+1CONTACTSTAM: +2.4 runs (Replacement credit for innings volume)+2STAMTotal WAR: +0.45 (58 IP)+0.4WAR
0.50.20.0272829
Grades · Statcast · Contract
Scouting Grades
STUF5050
CTRL3535
CMD4545
K†6060
Statcast Percentiles
FB Velo
p9097.7
Whiff%
p6026.8%
K%
p5523.2%
xwOBA vs
p260.340

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

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)
201722ROK MLEPrinceton Rays1110411594017191%3.717.1%13.4%3.7%0.9%2.203.83—
201722ROK RAWPrinceton Rays1110411594017191%3.725.2%10.7%14.5%0.6%2.202.71—
201823MIX MLE2 levels25138835710341452%3.521.7%13.4%8.3%1.5%2.753.77—
201823MIX RAW2 levels25138835710341452%3.528.9%11.5%17.4%1.1%2.752.75—
201924MIX MLE2 levels201710342910744685%5.119.9%11.5%8.4%1.8%3.163.88—
201924MIX RAW2 levels201710342910744685%5.124.9%10.3%14.7%1.4%3.163.06—
202126MIX MLE2 levels2423114499123571896%4.821.7%11.6%10.2%3.3%4.664.54+1.1
202126MIX RAW2 levels2423114499123571896%4.824.6%11.4%13.2%3.6%4.664.49+1.2
202227MIX MLE2 levels34141201483153%1.221.1%16.1%5.0%2.5%6.864.70-0.1
202227MIX RAW2 levels34141201483153%1.223.9%15.4%8.5%2.5%6.864.62-0.0
202328AAA MLETacoma Rainiers51355228863026%1.132.4%11.8%20.6%0.8%2.292.32—
202328AAA RAWTacoma Rainiers51355228863026%1.137.7%13.2%24.6%0.9%2.292.08—
202429MIX MLE2 levels2202198201320%1.014.9%8.7%6.2%0.0%5.062.94+0.4
202429MIX MLE2 levels2202198201320%1.014.9%8.7%6.2%0.0%5.062.94+0.4
202429MIX RAW2 levels2202198201320%1.020.4%13.3%7.1%2.0%5.064.27+0.1
202530MIX MLE2 levels61067285772830%1.125.4%9.5%15.9%1.2%2.272.82+1.4
202530MIX MLE2 levels61067285772830%1.125.4%9.5%15.9%1.2%2.272.82+1.4
202530MIX RAW2 levels61067285772830%1.127.0%9.8%17.2%1.1%2.272.64+1.5
202631MLB MLESt. Louis Cardinals66064276642550%1.023.2%9.1%14.1%1.9%4.083.36+0.9
202631MLB MLESt. Louis Cardinals66064276642550%1.023.2%9.1%14.1%1.9%4.083.36+0.9
202631MLB RAWSt. Louis Cardinals66064276642550%1.023.2%9.1%14.1%1.8%4.083.29+1.0
▸ Career totals (raw MLB only — as recorded)
MLB Career—118112253512357111%1.023.0%10.7%12.3%2.1%3.833.66+1.3
▸ 2027 season — projected remainder (no 2027 stats recorded)
202732MLBSTL51054228582350%1.125.3%10.1%15.3%2.3%3.943.89+0.4
▸ Career projection (2028+) — MLB context, MLB playing time (IP × MLB%)
202833MLB MLESTL40042175431850%1.024.5%10.5%14.0%2.6%4.084.17+0.2
202934MLB MLESTL27028118281330%1.023.6%11.0%12.6%2.9%4.324.47+0.0
202833MLB CTXSTL37039165401740%1.124.5%10.5%14.0%2.6%4.084.17+0.2
202934MLB CTXSTL24025106251230%1.023.6%11.0%12.6%2.9%4.324.47+0.0
▸ Career totals — MLB only (actual + projected)
Career— RAW180118780818986181%1.023.4%10.7%12.7%2.3%3.953.73+1.8
/ 200 IP— RAW192120086420292191%1.023.4%10.7%12.7%2.3%3.953.73+1.9
Career— MLE3146759425325662964721%1.922.3%11.7%10.7%1.8%3.563.70+1.5
/ 200 IP— MLE106232008521901001621%1.922.3%11.7%10.7%1.8%3.563.70+1.6

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 AAAMemphis Redbirds · 19 IPFIP 1.77 → 2.27 (+0.49)K% 37.2% → 32.0%
ComponentRawPark ÷Level factor ×= MLE
K% /BF37.21%—×0.86032.00%
BB% (unintentional) /BF9.30%—×0.9008.37%
HR / BF /BF1.16%÷0.869×1.1001.47%

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

Result: FIP 1.77 → 2.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).

2024 AAAMemphis Redbirds · 13 IPFIP 2.86 → 2.94 (+0.08)K% 17.3% → 14.9%
ComponentRawPark ÷Level factor ×= MLE
K% /BF17.31%—×0.86014.88%
BB% (unintentional) /BF9.62%—×0.9008.65%
HR / BF /BF0.00%÷1.020×1.1000.00%

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

Result: FIP 2.86 → 2.94, 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 AAATacoma Rainiers · 55 IPFIP 2.06 → 2.32 (+0.26)K% 37.7% → 32.4%
ComponentRawPark ÷Level factor ×= MLE
K% /BF37.72%—×0.86032.44%
BB% (unintentional) /BF13.16%—×0.90011.84%
HR / BF /BF0.88%÷1.157×1.1000.83%

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

Result: FIP 2.06 → 2.32, 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 AAATacoma Rainiers · 40 IPFIP 4.41 → 4.70 (+0.29)K% 24.0% → 21.1%
ComponentRawPark ÷Level factor ×= MLE
K% /BF23.98%—×0.88021.10%
BB% (unintentional) /BF15.31%—×1.05016.07%
HR / BF /BF2.55%÷1.144×1.1002.45%

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

Result: FIP 4.41 → 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).

2021 AAALouisville Bats · 113 IPFIP 4.20 → 4.54 (+0.34)K% 24.7% → 21.7%
ComponentRawPark ÷Level factor ×= MLE
K% /BF24.69%—×0.88021.73%
BB% (unintentional) /BF11.02%—×1.05011.57%
HR / BF /BF3.27%÷1.088×1.1003.30%

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

Result: FIP 4.20 → 4.54, 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 AAMontgomery Biscuits · 69 IPFIP 3.03 → 3.77 (+0.74)K% 24.2% → 19.6%
ComponentRawPark ÷Level factor ×= MLE
K% /BF24.24%—×0.81019.64%
BB% (unintentional) /BF9.76%—×1.10010.74%
HR / BF /BF1.35%÷0.920×1.2001.76%

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

Result: FIP 3.03 → 3.77, 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+Charlotte Stone Crabs · 34 IPFIP 3.13 → 4.14 (+1.01)K% 26.5% → 20.4%
ComponentRawPark ÷Level factor ×= MLE
K% /BF26.52%—×0.77020.42%
BB% (unintentional) /BF11.36%—×1.15013.07%
HR / BF /BF1.52%÷0.939×1.2502.02%

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

Result: FIP 3.13 → 4.14, 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 ABowling Green Hot Rods · 48 IPFIP 2.42 → 3.68 (+1.27)K% 35.7% → 26.4%
ComponentRawPark ÷Level factor ×= MLE
K% /BF35.68%—×0.74026.40%
BB% (unintentional) /BF11.35%—×1.18013.39%
HR / BF /BF1.62%÷1.037×1.3002.03%

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

Result: FIP 2.42 → 3.68, 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.25023.8%11.1%0.893.95
José Cisnero ('24)1.44624.0%11.3%1.014.16
Fernando Rodriguez Jr. ('16)1.25824.6%11.1%0.934.35
Chaz Roe ('21)1.14326.4%11.1%0.793.89
Ray Searage ('81-'90, 4 WAR*)1.44121.0%*10.8%*0.84*3.70*
Dave Geisel ('78-'85, 2 WAR*)1.04223.5%*10.6%*0.84*4.12*
Ed Vosberg ('86-'02, 1 WAR*)1.24721.0%*9.6%*0.86*4.06*