Connor O'Halloran
P Vancouver Canadians| Year | Age | Lvl / Team | G | GS | IP | ERA | FIP | K% | BB% | WAR | MLE rates |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 2024 | 21 | MIX2 levels | 21 | 21 | 104 | 5.64 | 4.12 | 22.7% | 10.6% | — | K 17.2% · BB 12.3% · FIP 5.09 |
| 2025 | 22 | A+TOR | 2 | 2 | 7 | 2.70 | 1.90 | 25.9% | 7.4% | — | K 25.9% · BB 7.4% · FIP 1.85 |
| 2026 | 23 | MIX3 levels | 13 | 8 | 34 | 5.50 | 5.05 | 20.5% | 16.8% | — | K 14.3% · BB 20.3% · FIP 6.36 |
| 2027PROJ | 24 | MLBTOR | — | — | 0 | 5.73 | 5.73 | 17.1% | 16.1% | — | |
| 2028PROJ43% MLB | 25 | MLBTOR | 2 | 2 | 11 | 5.43 | 5.32 | 18.7% | 14.1% | 0.0 |
Grades · 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) | |||||||||||||||||||
| 2023 | 20 | A MLE | Dunedin Blue Jays | 6 | 1 | 10 | 48 | 9 | 8 | 1 | 17% | 1.7 | 18.8% | 16.7% | 2.1% | 2.1% | 6.30 | 4.77 | — |
| 2023 | 20 | A RAW | Dunedin Blue Jays | 6 | 1 | 10 | 48 | 9 | 8 | 1 | 17% | 1.7 | 18.8% | 16.7% | 2.1% | 2.1% | 6.30 | 5.00 | — |
| 2024 | 21 | MIX MLE | 2 levels | 21 | 21 | 104 | 463 | 105 | 49 | 13 | 100% | 4.9 | 17.2% | 12.3% | 4.9% | 3.4% | 5.64 | 5.09 | — |
| 2024 | 21 | MIX MLE | 2 levels | 21 | 21 | 104 | 463 | 105 | 49 | 13 | 100% | 4.9 | 17.2% | 12.3% | 4.9% | 3.4% | 5.64 | 5.09 | — |
| 2024 | 21 | MIX RAW | 2 levels | 21 | 21 | 104 | 463 | 105 | 49 | 13 | 100% | 4.9 | 22.7% | 10.6% | 12.1% | 2.8% | 5.64 | 4.12 | — |
| 2025 | 22 | A+ MLE | Vancouver Canadians | 2 | 2 | 7 | 27 | 7 | 2 | 0 | 100% | 3.3 | 25.9% | 7.4% | 18.5% | 0.0% | 2.70 | 1.85 | — |
| 2025 | 22 | A+ MLE | Vancouver Canadians | 2 | 2 | 7 | 27 | 7 | 2 | 0 | 100% | 3.3 | 25.9% | 7.4% | 18.5% | 0.0% | 2.70 | 1.85 | — |
| 2025 | 22 | A+ RAW | Vancouver Canadians | 2 | 2 | 7 | 27 | 7 | 2 | 0 | 100% | 3.3 | 25.9% | 7.4% | 18.5% | 0.0% | 2.70 | 1.90 | — |
| 2026 | 23 | MIX MLE | 3 levels | 13 | 8 | 34 | 161 | 33 | 27 | 4 | 62% | 2.6 | 14.3% | 20.3% | -6.0% | 3.5% | 5.50 | 6.36 | — |
| 2026 | 23 | MIX MLE | 3 levels | 13 | 8 | 34 | 161 | 33 | 27 | 4 | 62% | 2.6 | 14.3% | 20.3% | -6.0% | 3.5% | 5.50 | 6.36 | — |
| 2026 | 23 | MIX RAW | 3 levels | 13 | 8 | 34 | 161 | 33 | 27 | 4 | 62% | 2.6 | 20.5% | 16.8% | 3.7% | 2.5% | 5.50 | 5.05 | — |
| ▸ 2027 season — projected remainder (no 2027 stats recorded) | |||||||||||||||||||
| 2027 | 24 | MLB | TOR | — | — | 0 | — | — | — | — | — | — | 17.1% | 16.1% | 1.0% | 3.0% | 5.73 | 5.73 | — |
| ▸ Career projection (2028+) — MLB context, MLB playing time (IP × MLB%) | |||||||||||||||||||
| 2028 | 25 | MLB MLE | TOR | 4 | 4 | 25 | 105 | 20 | 15 | 3 | 100% | 6.2 | 18.7% | 14.1% | 4.7% | 3.0% | 5.43 | 5.32 | +0.0 |
| 2028 | 25 | MLB CTX | TOR | 2 | 2 | 11 | 46 | 9 | 7 | 1 | 100% | 5.5 | 18.7% | 14.1% | 4.7% | 3.0% | 5.43 | 5.32 | +0.0 |
| ▸ Career totals — MLB only (actual + projected) | |||||||||||||||||||
| Career | — | RAW | 2 | 2 | 11 | 45 | 8 | 6 | 1 | 100% | 5.3 | 18.7% | 14.1% | 4.7% | 3.0% | 5.43 | 4.94 | +0.1 | |
| / 200 IP | — | RAW | 34 | 34 | 200 | 844 | 150 | 112 | 19 | 100% | 5.8 | 18.7% | 14.1% | 4.7% | 3.0% | 5.43 | 4.94 | +1.0 | |
| Career | — | MLE | 42 | 32 | 155 | 699 | 118 | 99 | 22 | 76% | 3.7 | 17.0% | 14.2% | 2.7% | 3.2% | 5.53 | 5.23 | +0.0 | |
| / 200 IP | — | MLE | 54 | 41 | 200 | 904 | 153 | 128 | 29 | 76% | 3.7 | 17.0% | 14.2% | 2.7% | 3.2% | 5.53 | 5.23 | +0.2 | |
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 A+Vancouver Canadians · 22 IPFIP 4.71 → 5.57 (+0.85)K% 15.7% → 12.1%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 15.69% | — | ×0.770 | 12.08% |
| BB% (unintentional) /BF | 14.71% | — | ×1.150 | 16.91% |
| HR / BF /BF | 1.96% | ÷1.000 | ×1.250 | 2.45% |
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 100).
Result: FIP 4.71 → 5.57, 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 ROKFCL Blue Jays · 10 IPFIP 5.67 → 7.95 (+2.29)K% 27.5% → 18.7%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 27.45% | — | ×0.680 | 18.67% |
| BB% (unintentional) /BF | 21.57% | — | ×1.250 | 26.96% |
| HR / BF /BF | 3.92% | ÷1.000 | ×1.400 | 5.49% |
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 5.67 → 7.95, 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+Vancouver Canadians · 7 IPFIP 1.85 → 2.49 (+0.64)K% 25.9% → 20.0%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 25.93% | — | ×0.770 | 19.96% |
| BB% (unintentional) /BF | 7.41% | — | ×1.150 | 8.52% |
| HR / BF /BF | 0.00% | ÷0.855 | ×1.250 | 0.00% |
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 71).
Result: FIP 1.85 → 2.49, 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+Vancouver Canadians · 66 IPFIP 4.37 → 5.23 (+0.86)K% 19.6% → 15.1%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 19.61% | — | ×0.770 | 15.10% |
| BB% (unintentional) /BF | 11.76% | — | ×1.150 | 13.53% |
| HR / BF /BF | 2.61% | ÷1.062 | ×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 112).
Result: FIP 4.37 → 5.23, 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 ADunedin Blue Jays · 37 IPFIP 3.48 → 4.81 (+1.34)K% 28.7% → 21.2%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 28.66% | — | ×0.740 | 21.21% |
| BB% (unintentional) /BF | 8.28% | — | ×1.180 | 9.77% |
| HR / BF /BF | 3.18% | ÷1.003 | ×1.300 | 4.13% |
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 101).
Result: FIP 3.48 → 4.81, 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 ADunedin Blue Jays · 10 IPFIP 4.77 → 5.58 (+0.81)K% 18.8% → 13.9%
| Component | Raw | Park ÷ | Level factor × | = MLE |
|---|---|---|---|---|
| K% /BF | 18.75% | — | ×0.740 | 13.87% |
| BB% (unintentional) /BF | 16.67% | — | ×1.180 | 19.67% |
| HR / BF /BF | 2.08% | ÷1.279 | ×1.300 | 2.12% |
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 156).
Result: FIP 4.77 → 5.58, 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 | 0.3 | 25 | 17.9% | 15.1% | 1.16 | 5.58 |
| Richie Lewis ('98) | 1.5 | 59 | 18.1% | 14.1% | 1.38 | 4.88 |
| Brian Bruney ('12) | 1.3 | 43 | 21.2% | 15.8% | 0.94 | 4.68 |
| Gene Harris ('89-'95, -1 WAR*) | 1.2 | 40 | 20.0%* | 12.5%* | 0.98* | 4.96* |
| Doug Bochtler ('00) | 1.3 | 65 | 18.6% | 14.4% | 1.25 | 4.57 |
| Dwayne Henry ('84-'95, -1 WAR*) | 1.7 | 67 | 23.8%* | 14.2%* | 0.90* | 5.02* |
| Fred Lasher ('63-'71, -1 WAR*) | 1.0 | 50 | 21.5%* | 11.9%* | 1.05* | 4.68* |