Ryan O'Hearn
LHB4
HRs ?Total home runs hit while this batter appeared in the model's scored pool this season.
12.9%
HR Rate ?Percentage of scored appearances where this batter hit a home run. Higher = more reliable power output.
18.1%
Avg HR/FB ?Average HR-per-fly-ball rate across appearances. Measures how often fly balls leave the yard — above 16% is elite, above 12% is strong.
90.4
Avg EV ?Average exit velocity (mph) on batted balls. Hard contact is the best predictor of HR power — 92+ is elite, 89+ is strong.
0.179
ISO ?Isolated Power — measures raw extra-base-hit ability (SLG minus AVG). .220+ is elite power, .180+ is above average.
#37
Best Rank ?Highest model ranking this batter has achieved on a single slate. #1 means the model rated them the top HR candidate that day.
Today's Matchup ?Live matchup data for today's game. Pitcher stats, report flags, park factor, and weather all feed into the model score.
MIN @ PIT · 1:35p
Zebby Matthews
(RHP)
HR/FB 22.2% ?Pitcher's HR-per-fly-ball rate. Higher = more HR-prone. League avg is ~12%.
HR/9 1.42 ?Home runs allowed per 9 innings. Higher = pitcher gives up more longballs.
FIP 3.89 ?Fielding Independent Pitching — isolates pitcher skill from defense. Higher FIP = more HR-vulnerable.
#128
⚪ D
PNC Park
Park × 0.824 ?Park factor for this stadium. Values above 1.0 boost HR probability; below 1.0 suppress it. Based on multi-year park HR data.
HR Profile
?Statcast-style HR metrics for this batter — same fields the model scores on. Red = elite, orange = above average, blue = below average, grey = no data.
Season-to-date · live-tape thresholds
0.161
ISO ?Isolated Power (SLG − AVG). >.220 elite, .180–.220 above avg, <.140 below avg.
52th pctile
90.3
Avg EV (mph) ?Average exit velocity (mph) on all batted balls. >92 elite, 89–92 above avg.
67th pctile
7.3%
Barrel% ?Percentage of contact classified as barrels (perfect EV+LA combo). >12% elite.
34th pctile
19.4%
HR/FB ?Home runs per fly ball. >18% elite, league avg ~12%.
83th pctile
392
Avg HR Dist (ft) ?Average distance of this batter's HRs in feet. >400 elite raw power.
41th pctile
12.9%
Season HR% ?HRs ÷ plate appearances this season. v3.5 model feature — strongest single backtest contributor.
0.0%
14d Pace ?HRs per game over last 14 days. v3.5 model feature — captures current hot/cold streak.
16.0%
Match% ?Combined batter × pitcher HR/FB rate — the headline "how favorable is this matchup" number.
82th pctile
24
BBE ?Batted-ball events — sample size. Treat stats with caution below 30.
HR Cadence ?Tracks how often this batter typically hits HRs and whether they're overdue. Based on the median gap (in games) between each HR this season. Display only — does not affect model score.
Typically goes yard every 7 games
· 4 HRs in 31 games
0×
Due (1×)
2×
0.9×
Dueness ?Games since last HR ÷ typical cadence. 1.0× = right on schedule. Above 1.0× = overdue relative to their own baseline. 1.5×+ = significantly overdue.
6
Games Since HR ?How many games (appearances in the scored pool) since this batter's last home run.
7
Typical Cadence ?Median number of games between home runs this season. Uses median (not average) for robustness against streaky outliers. Requires 3+ HRs to establish a baseline.
Games between HRs ?Each bar = the number of games between consecutive HRs. The final highlighted bar is the current gap (still open). Bars above the typical cadence are colored differently.
31
Appearances ?Total times this batter has appeared in the model's daily scored pool this season.
1
Top-50 Days ?Number of days this batter ranked in the top 50 on the slate. Top-50 is the model's primary recommendation zone.
0
HRs in Top 50 ?Home runs hit on days when the model ranked this batter in the top 50. Measures how often the model correctly surfaced this batter before they went deep.
0%
Catch Rate ?Percentage of this batter's HRs that occurred when the model had them ranked in the top 50. Higher = model does a good job timing this batter. 60%+ is excellent.
#141.2
Avg Rank ?This batter's average model rank across all appearances. Lower = the model consistently rates them highly.
Rank Trend ?Daily model rank over time. The Y-axis is inverted — lower on the chart = better rank. Green dots mark days this batter hit a home run.
All Appearances ?Complete log of every time this batter appeared on the scored slate. Includes model rank, tier, form trend, and whether they went yard. Rows highlighted in green = HR days.
| Date | Rank | Pitcher | B/P | HR/FB | Tier | Form | WT | BP | HR? |
|---|---|---|---|---|---|---|---|---|---|
| 2026-05-29 | #169 | Taj Bradley | L/R * | 10.2% | ⚪ D | ❄ COLD | ✅ | · | |
| 2026-05-28 | #37 | Colin Rea | L/R * | 14.1% | ⚪ D | 📈 WARM | 🔥 | · | |
| 2026-05-22 | #125 | Kevin Gausman | L/R * | 17.2% | ⚪ D | ➖ NTRL | ✅ | · | |
| 2026-05-20 | #125 | Michael McGreevy | L/R * | 15.4% | ⚪ D | ➖ NTRL | — | · | |
| 2026-05-16 | #161 | Cristopher Sánchez | L/L * | 9.2% | ⚪ D | ➖ NTRL | ✅ | · | |
| 2026-05-15 | #146 | Aaron Nola | L/R * | 10.5% | ⚪ D | ➖ NTRL | ✅ | · | |
| 2026-05-14 | #121 | Chase Dollander | L/R * | 8.7% | ⚪ D | 📉 COOL | ⚠️ | ||
| 2026-05-13 | #148 | Jose Quintana | L/L * | 11.5% | ⚪ D | ❄ COLD | 🔥 | ||
| 2026-05-12 | #167 | Michael Lorenzen | L/R * | 12.1% | ⚪ D | 📉 COOL | 🔥 | · | |
| 2026-05-10 | #186 | Tyler Mahle | L/R * | 8.4% | ⚪ D | 📉 COOL | ✅ | · | |
| 2026-05-09 | #221 | Landen Roupp | L/R * | 10.3% | ⚪ D | 📉 COOL | ✅ | · | |
| 2026-05-07 | #163 | Zac Gallen | L/R * | 8.0% | ⚪ D | 📉 COOL | 🔥 | · | |
| 2026-05-06 | #245 | Michael Soroka | L/R * | 10.4% | ⚪ D | 📉 COOL | 🔥 | · | |
| 2026-05-05 | #113 | Eduardo Rodriguez | L/L * | 12.2% | ⚪ D | 📉 COOL | 🔥 | · | |
| 2026-05-03 | #201 | Chase Burns | L/R * | 13.6% | ⚪ D | 📉 COOL | ✅ | · | |
| 2026-05-02 | #208 | Rhett Lowder | L/R * | 8.5% | ⚪ D | ➖ NTRL | ✅ | · | |
| 2026-05-01 | #187 | Brady Singer | L/R * | 12.5% | ⚪ D | ➖ NTRL | ✅ | · | |
| 2026-04-30 | #84 | Hunter Dobbins | L/R * | 11.6% | ⚪ D | 📈 WARM | ⚠️ | · | |
| 2026-04-29 | #178 | Andre Pallante | L/R * | 14.0% | ⚪ D | 📈 WARM | ⚠️ | · | |
| 2026-04-28 | #143 | Kyle Leahy | L/R * | 9.4% | ⚪ D | 📈 WARM | ⚠️ | ||
| 2026-04-27 | #86 | Dustin May | L/R * | 9.4% | ⚪ D | ➖ NTRL | ⚠️ | · | |
| 2026-04-26 | #57 | Kyle Harrison | L/L | 13.4% | ⚪ D | ➖ NTRL | ⚠️ | · | |
| 2026-04-25 | #127 | Jacob Misiorowski | L/R | 14.8% | ⚪ D | ➖ NTRL | ⚠️ | · | |
| 2026-04-24 | #116 | Brandon Woodruff | L/R | 12.8% | ⚪ D | ➖ NTRL | ⚠️ | · | |
| 2026-04-23 | #97 | Jacob deGrom | L/R | 10.8% | ⚪ D | ➖ NTRL | ✅ | · | |
| 2026-04-22 | #121 | Jack Leiter | L/R | 10.6% | ⚪ D | 📈 WARM | ✅ | · | |
| 2026-04-18 | #180 | Drew Rasmussen | L/R | 8.1% | ⚪ D | 📈 WARM | — | ||
| 2026-04-17 | #154 | Nick Martinez | L/R | 9.0% | ⚪ D | ➖ NTRL | — | · | |
| 2026-04-10 | #88 | Shota Imanaga | L/L | 13.0% | ⚪ D | 📉 COOL | ✅ | · | |
| 2026-03-29 | #87 | Nolan McLean | L/R | 13.5% | ⚪ D | 📈 WARM | ✅ | · | |
| 2026-03-28 | #135 | David Peterson | · | 10.8% | ⚪ D | 📈 WARM | — | · |