Mithrandir Metrics
Hitter projection 2026 Refreshed Oct 15 06:00 AM ET
Hitter projection / CLE · 2026

Halpin, Petey

Everyday offensive profile with usable floor

Primary
0.279 xwOBA
Range
0.105 to 0.347
Live Δ
yes
Team CLE Archetype Ground-ball contact Age 24 Status Healthy / active roster
At a glance

Season percentile report

The headline weighs outcome stats (xwOBA, barrels); each bar averages its full strip group below. 100 = best in MLB.

2026-10-15
31
Offense
percentile
Offense9 metrics
33
Defense4 metrics
61
Speed3 metrics
53
Plate skills10 metrics
67
Rolling projection

Preseason / current pace / Bayesian update

Rolling bands shrink current-season signal toward the preseason prior until the sample earns more weight.

2026-10-15
xwOBA preseason0.267
xwOBA current pace0.296
xwOBA rolling p500.281
Observed weight49%
xwOBA
0.217 0.247 0.281 0.315 0.346
wOBA
0.248 0.267 0.288 0.309 0.328
ISO
0.047 0.070 0.095 0.121 0.143
K%
14.6% 18.2% 22.2% 26.2% 29.8%
Current percentile strip

Actual percentile with projection tick

100th = best in MLB.

2026-10-15
Hitting · percentile strip
Barrel%3.8%
33
Exit velocity82.5
6
Hard-hit%25.5%
8 -22 vs proj
xBA0.319
52
xSLG0.477
43
xwOBA0.296
44
BB%5.2%
16 -25 vs proj
Bat speed66.8
20
K%19.4%
71 +51 vs proj
Defense · percentile strip
Arm Runs3.1 · CF
92
Arm Strength99.7 · CF
90
Outs Above Avg-1.0 · CF
26
Range Runs-1.1 · CF
37
Baserunning · percentile strip
Bolts1.0 · CF
11
SB Success Rate85.7% · CF
67
Sprint Speed28.6 · CF
82
Mithrandir+

SEAGER+ and decision components

SEAGER+ is the promoted plate-discipline index; component rows marked rebadged research are visible diagnostic context, not standalone promoted metrics.

2026-10-15
Avoids Bad ChasesST 62.1% · rebadged research
32
Avoids Bad TakesHPT 19.0% · rebadged research
93
Correct Decisions69.6% · rebadged research
83
Resists Breaking - horizontalwOBA 0.277 · borderline
77
Resists Breaking - verticalwOBA 0.285 · insufficient sample
32
Resists ChangeupwOBA 0.276 · validated thin sample
65
Resists Cutters + splitterswOBA 0.320 · insufficient sample
65
Resists FastballwOBA 0.332 · validated
61
Resists SinkerwOBA 0.325 · validated
95
SEAGER+ Plate Discipline104
65
Rolling form chart

xwOBA snapshot line

Live snapshot series; true 50/100 PA windows require PA-level logs

12 snapshots
Mithrandir Metrics ROLLING XWOBA LINE Parameterized Mithrandir chart rendered as SVG for templates and exports. season=2026 Rolling xwOBA Halpin, Petey · Live snapshot series; true 50/100 PA windows require PA-level logs LG AVG 0.301 0.296 2026-10-04: 0.2952026-10-05: 0.2952026-10-06: 0.2952026-10-07: 0.2952026-10-08: 0.2972026-10-09: 0.2952026-10-10: 0.2952026-10-11: 0.2992026-10-12: 0.2992026-10-13: 0.2972026-10-14: 0.2962026-10-15: 0.296 2026-10-04 2026-10-15 xwOBA MITHRANDIR · CHARTS
Hitter optimization

Swing path and decision map

Petey Halpin's tools (68) outpace production (54) by 14 points. Primary finding: elite raw contact quality undermined by swing decisions — the bat is dangerous when it connects. Also flagged: Launch Angle Too High.

See full optimization →

See the swing in 3D →

Launch Angle Too High
-12.5° Current 32° → Target 20°

Flatten swing plane to bring average LA into the 15-22° window

Solid = current angle. Dotted = recommended window.
Contact-Discipline Mismatch
Hold Hold Hold Hold Attack Hold Hold Hold Hold

Shorten swing against breaking balls while maintaining bat speed on fastballs

Protected takes / Chase risk
Spray profile

Field-coordinate spray profile

79 Statcast batted-ball coordinates from the pitch-event feed (2026). Direction profile remains as the v1 context layer when coordinate density is limited.

All BIP Singles Doubles Triples HR vs LHP vs RHP Home / Away
Mithrandir Metrics SPRAY CHART Parameterized Mithrandir chart rendered as SVG for templates and exports. season=2026 Spray Chart Halpin, Petey · Statcast batted-ball landing coordinates Left field third: 10% of plotted batted ballsPull 10%Center field third: 75% of plotted batted ballsCenter 75%Right field third: 15% of plotted batted ballsOppo 15% LF 325 CF 400 RF 325 2026-03-16 · field out · FF · fly_ball · EV 86.2 / LA 42.02026-03-17 · field out · SL · fly_ball · EV 94.8 / LA 31.02026-03-19 · field out · FF · line_drive · EV 86.5 / LA 25.02026-05-02 · field out · CH · fly_ball · EV 75.3 / LA 43.02026-05-03 · field out · FS · fly_ball · EV 84.9 / LA 28.02026-05-03 · field out · CH · ground_ball · EV 74.0 / LA 12.02026-05-03 · field out · CU · fly_ball · EV 90.1 / LA 35.02026-05-06 · field out · FF · fly_ball · EV 84.9 / LA 37.02026-05-06 · field out · FF · ground_ball · EV 91.7 / LA -16.02026-05-06 · single · FF · line_drive · EV 107.3 / LA 12.02026-05-07 · field out · SI · fly_ball · EV 94.0 / LA 31.02026-05-07 · field out · FC · fly_ball · EV 98.4 / LA 27.02026-05-07 · single · CU · ground_ball · EV 107.1 / LA 4.02026-05-08 · fielders choice out · FF · ground_ball · EV 29.1 / LA 13.02026-05-08 · field out · SI · ground_ball · EV 89.5 / LA -7.02026-05-08 · field out · SL · ground_ball · EV 69.1 / LA 3.02026-05-11 · field out · FF · fly_ball · EV 81.1 / LA 51.02026-05-13 · field out · ST · fly_ball · EV 88.7 / LA 35.02026-05-22 · field out · SI · fly_ball · EV 65.9 / LA 42.02026-05-22 · field out · SL · popup · EV 64.9 / LA 81.02026-05-22 · field out · SI · line_drive · EV 100.1 / LA 8.02026-05-25 · single · FF · line_drive · EV 99.4 / LA 10.02026-05-31 · field out · FF · fly_ball · EV 89.5 / LA 37.02026-06-20 · sac bunt · FF · ground_ball · EV 27.7 / LA 22.02026-06-20 · field out · FC · fly_ball · EV 69.7 / LA 49.02026-06-20 · single · SL · line_drive · EV 105.9 / LA 15.02026-06-22 · field out · ST · line_drive · EV 59.8 / LA 20.02026-06-24 · field out · SL · fly_ball · EV 79.5 / LA 46.02026-06-24 · single · SL · popup · EV 38.4 / LA 29.02026-06-26 · field out · FF · line_drive · EV 93.2 / LA 22.02026-06-26 · field out · SL · fly_ball · EV 94.7 / LA 46.02026-07-31 · field out · ST · line_drive · EV 72.6 / LA 13.02026-07-31 · field out · SI · popup · EV 66.8 / LA 49.02026-08-02 · field out · SI · fly_ball · EV 81.7 / LA 30.02026-08-02 · field out · SI · ground_ball · EV 77.5 / LA 5.02026-08-02 · single · CH · fly_ball · EV 71.0 / LA 29.02026-08-05 · field out · FF · popup · EV 65.5 / LA 43.02026-08-14 · field out · CH · fly_ball · EV 88.3 / LA 34.02026-08-14 · double · CH · fly_ball · EV 100.0 / LA 27.02026-08-15 · single · FC · popup · EV 36.4 / LA 39.02026-08-15 · field out · SL · line_drive · EV 103.4 / LA 20.02026-08-15 · force out · SL · ground_ball · EV 95.2 / LA 2.02026-08-19 · field out · CH · ground_ball · EV 56.4 / LA -28.02026-08-19 · field out · FC · popup · EV 86.0 / LA 82.02026-08-21 · field out · EP · line_drive · EV 101.6 / LA 15.02026-08-21 · field out · FF · fly_ball · EV 95.6 / LA 35.02026-08-21 · field out · CH · ground_ball · EV 88.0 / LA -1.02026-08-21 · home run · FF · fly_ball · EV 100.5 / LA 35.02026-08-22 · field out · CH · line_drive · EV 72.3 / LA 14.02026-08-22 · field out · SI · ground_ball · EV 91.1 / LA -17.02026-08-22 · field out · CH · line_drive · EV 91.1 / LA 24.02026-08-24 · field out · ST · fly_ball · EV 92.0 / LA 33.02026-08-24 · single · CH · fly_ball · EV 69.3 / LA 34.02026-09-02 · field out · FF · popup · EV 83.7 / LA 68.02026-09-05 · field out · SL · popup · EV 59.8 / LA 73.02026-09-05 · field out · SI · popup · EV 34.8 / LA 68.02026-09-05 · sac bunt · SI · ground_ball · EV 40.7 / LA -39.02026-09-06 · field out · CU · popup · EV 93.3 / LA 59.02026-09-07 · field out · FF · ground_ball · EV 98.0 / LA -1.02026-09-07 · field out · CH · ground_ball · EV 72.6 / LA 7.02026-09-08 · field out · FF · fly_ball · EV 90.2 / LA 45.02026-09-08 · field out · SL · popup · EV 78.7 / LA 68.02026-09-08 · single · FF · ground_ball · EV 98.3 / LA 7.02026-09-08 · single · CU · line_drive · EV 93.8 / LA 19.02026-09-18 · field out · CU · ground_ball · EV 75.6 / LA -36.02026-09-18 · field out · FS · fly_ball · EV 79.7 / LA 38.02026-09-18 · single · FF · line_drive · EV 94.0 / LA 12.02026-09-22 · single · SL · fly_ball · EV 71.9 / LA 43.02026-09-23 · field out · CU · fly_ball · EV 87.7 / LA 29.02026-09-23 · single · CU · line_drive · EV 99.8 / LA 12.02026-09-27 · field out · FF · popup · EV 86.4 / LA 67.02026-09-27 · field out · SI · ground_ball · EV 84.1 / LA -9.02026-09-27 · field error · SI · ground_ball · EV 58.0 / LA -38.02026-09-27 · single · SL · line_drive · EV 80.1 / LA 18.02026-10-10 · double · SV · fly_ball · EV 97.3 / LA 26.02026-10-10 · double · FC · line_drive · EV 93.5 / LA 11.02026-10-10 · field out · SI · ground_ball · EV 100.2 / LA 0.02026-10-12 · field out · FF · line_drive · EV 93.8 / LA 23.02026-10-13 · single · FF · line_drive · EV 93.0 / LA 12.0 1B2B3BHROut Zone shading = batted-ball density by field third · hover dots for date, pitch, EV, and LA. MITHRANDIR · CHARTS
Bat tracking

Swing path, attack angle, bat speed

No bat-tracking aggregate is available for this hitter. The full swing, with the recommended path overlaid, lives in the 3D Swing Simulator.

Watch the swing in 3D →

No bat tracking

No Savant bat-tracking aggregate is available for this hitter.

Zone profile

Aggregate zone heatmap

Aggregate zone metrics from seasonal Statcast leaderboards.

Mithrandir Metrics ZONE HEATMAP Parameterized Mithrandir chart rendered as SVG for templates and exports. season=2026 Swing Zone Profile Halpin, Petey · Aggregate zone metrics; not pitch-by-pitch locations Zone: 47%47%Chase: 39%39%Whiff: 23%23%Zone contact: 84%84%Contact: 77%77%Hard hit: 25%25% Dashed border = aggregate mixed-batter zone proxy MITHRANDIR · CHARTS
Model read

Projection notes

1
templated note
Projection leans more on broad offensive balance than one extreme carrying trait.
Live context

Current-season signal

xwOBA Δ+0.012
wOBA Δ+0.004
Sample211 PA

positive regression

Projection table

Point projection and range

MetricPointRangeHalf-width
Plate Appearances204----
Home Runs7----
Stolen Bases0----
xwOBA0.2790.105 to 0.347+/- 0.121
ISO0.1210.014 to 0.195+/- 0.090
Barrel%3.8%0.2% to 5.3%+/- 2.6%
Hard-Hit%33.9%6.7% to 39.4%+/- 16.3%
K%29.6%9.5% to 38.4%+/- 14.4%
BB%7.7%0.7% to 10.7%+/- 5.0%
BABIP0.3140.159 to 0.373+/- 0.107
Platoon / Shape
vs LHP

3 career PA

xwOBA0.009
K%1.5%
BB%0.8%
Barrel0.0%
vs RHP

11 career PA

xwOBA0.010
K%1.4%
BB%0.9%
Barrel0.0%