Mithrandir Metrics
Hitter projection 2026 Refreshed Sep 3 06:00 AM ET
Hitter projection / DET · 2026

McKinstry, Zach

Veteran bat leaning on contact and approach

Primary
0.309 xwOBA
Range
0.282 to 0.346
Live Δ
yes
Team DET Archetype Ground-ball contact Age 31 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-09-03
13
Offense
percentile
Offense9 metrics
26
Defense4 metrics
88
Speed2 metrics
41
Plate skills12 metrics
51
Rolling projection

Preseason / current pace / Bayesian update

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

2026-09-03
xwOBA preseason0.307
xwOBA current pace0.283
xwOBA rolling p500.291
Observed weight65%
xwOBA
0.270 0.280 0.291 0.303 0.313
wOBA
0.284 0.299 0.314 0.330 0.344
ISO
0.095 0.107 0.120 0.133 0.145
K%
16.1% 17.1% 18.1% 19.2% 20.1%
Current percentile strip

Actual percentile with projection tick

100th = best in MLB.

2026-09-03
Hitting · percentile strip
Barrel%1.5%
7 -29 vs proj
Exit velocity84.8
17
Hard-hit%21.5%
4 -22 vs proj
xBA0.283
15
xSLG0.383
9
xwOBA0.283
28 -27 vs proj
BB%9.2%
59
Bat speed66.1
13
K%16.0%
85 +25 vs proj
Defense · percentile strip
Arm Runs2.9 · RF
95
Arm Strength96.6 · RF
74
Outs Above Avg4.0 · RF
95
Range Runs5.1 · RF
88
Baserunning · percentile strip
Base Running Runs-1.4 · RF
20
Sprint Speed27.9 · RF
62
SB Success Rate25.0% · RF
Small sample
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-09-03
Avoids Bad ChasesST 66.2% · rebadged research
55
Avoids Bad TakesHPT 26.0% · rebadged research
41
Correct Decisions67.9% · rebadged research
69
SEAGER+ Plate Discipline101
50
Fastball Stuff+30
0
Mithrandir Stuff+21
0
Resists Breaking - horizontalwOBA 0.287 · borderline
55
Resists Breaking - verticalwOBA 0.291 · insufficient sample
18
Resists ChangeupwOBA 0.257 · validated thin sample
92
Resists Cutters + splitterswOBA 0.308 · insufficient sample
91
Resists FastballwOBA 0.329 · validated
69
Resists SinkerwOBA 0.346 · validated
77
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 McKinstry, Zach · Live snapshot series; true 50/100 PA windows require PA-level logs LG AVG 0.303 0.283 2026-08-23: 0.2942026-08-24: 0.2942026-08-25: 0.2882026-08-26: 0.2882026-08-27: 0.2862026-08-28: 0.2862026-08-29: 0.2862026-08-30: 0.2872026-08-31: 0.2852026-09-01: 0.2842026-09-02: 0.2842026-09-03: 0.283 2026-08-23 2026-09-03 xwOBA MITHRANDIR · CHARTS
Spray profile

Field-coordinate spray profile

181 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 McKinstry, Zach · Statcast batted-ball landing coordinates Left field third: 15% of plotted batted ballsPull 15%Center field third: 75% of plotted batted ballsCenter 75%Right field third: 10% of plotted batted ballsOppo 10% LF 345 CF 420 RF 330 2026-03-15 · field out · SL · fly_ball · EV 94.9 / LA 45.02026-03-15 · single · SI · line_drive · EV 69.2 / LA 21.02026-03-17 · field out · FC · line_drive · EV 64.3 / LA 23.02026-03-17 · field out · CU · popup · EV 82.3 / LA 57.02026-03-17 · field out · FC · line_drive · EV 97.6 / LA 24.02026-03-18 · field out · SL · ground_ball · EV 97.2 / LA 5.02026-03-18 · field error · FF · ground_ball · EV 88.1 / LA 6.02026-03-20 · field out · FF · fly_ball · EV 88.3 / LA 28.02026-03-21 · single · SI · fly_ball · EV 69.0 / LA 30.02026-03-21 · field out · FC · ground_ball · EV 39.7 / LA -65.02026-03-23 · field out · FF · ground_ball · EV 76.5 / LA -29.02026-03-23 · single · SI · ground_ball · EV 88.8 / LA 10.02026-03-24 · field out · FF · line_drive · EV 58.3 / LA 23.02026-03-24 · field out · ST · popup · EV 85.7 / LA 87.02026-03-27 · field out · SL · fly_ball · EV 85.1 / LA 52.02026-03-27 · single · FF · line_drive · EV 89.3 / LA 18.02026-03-28 · field out · FF · ground_ball · EV 100.7 / LA 5.02026-03-31 · field out · CU · fly_ball · EV 91.6 / LA 35.02026-03-31 · field out · SI · ground_ball · EV 68.3 / LA -36.02026-04-03 · field out · FF · ground_ball · EV 61.2 / LA 7.02026-04-03 · field out · ST · line_drive · EV 98.2 / LA 15.02026-04-03 · field out · FF · ground_ball · EV 78.6 / LA -4.02026-04-03 · single · CH · ground_ball · EV 96.5 / LA -4.02026-04-04 · home run · ST · fly_ball · EV 102.2 / LA 29.02026-04-04 · single · SI · ground_ball · EV 99.0 / LA 2.02026-04-04 · field out · FC · ground_ball · EV 88.1 / LA -1.02026-04-06 · field out · SI · ground_ball · EV 75.0 / LA -26.02026-04-06 · single · FF · ground_ball · EV 101.2 / LA -2.02026-04-07 · field out · FF · fly_ball · EV 91.5 / LA 49.02026-04-07 · double · FF · fly_ball · EV 93.9 / LA 27.02026-04-08 · field out · SI · line_drive · EV 81.1 / LA 14.02026-04-08 · field out · FC · line_drive · EV 96.8 / LA 23.02026-04-08 · field out · FF · fly_ball · EV 90.3 / LA 56.02026-04-08 · field out · SL · popup · EV 81.1 / LA 73.02026-04-09 · field out · CU · ground_ball · EV 61.6 / LA -29.02026-04-09 · field out · CH · ground_ball · EV 63.6 / LA -21.02026-04-11 · field out · CU · popup · EV 64.9 / LA 51.02026-04-11 · field out · ST · ground_ball · EV 86.8 / LA -15.02026-04-11 · grounded into double play · CH · ground_ball · EV 85.8 / LA -28.02026-04-12 · field out · CH · fly_ball · EV 91.4 / LA 28.02026-04-12 · field out · CH · fly_ball · EV 88.6 / LA 40.02026-04-12 · single · CH · line_drive · EV 95.6 / LA 12.02026-04-12 · field out · FF · line_drive · EV 86.7 / LA 24.02026-04-14 · field out · FF · ground_ball · EV 80.1 / LA 0.02026-04-14 · grounded into double play · SL · ground_ball · EV 89.9 / LA 4.02026-04-14 · double · SL · line_drive · EV 84.6 / LA 21.02026-04-15 · single · FC · ground_ball · EV 81.1 / LA 10.02026-05-05 · field out · SI · fly_ball · EV 93.5 / LA 43.02026-05-05 · field out · CU · ground_ball · EV 78.4 / LA -3.02026-05-06 · field out · CU · line_drive · EV 95.4 / LA 23.02026-05-06 · field out · FF · popup · EV 64.2 / LA 59.02026-05-08 · field out · FF · ground_ball · EV 45.2 / LA 17.02026-05-08 · double · FF · line_drive · EV 103.3 / LA 16.02026-05-09 · field out · FF · ground_ball · EV 66.1 / LA -2.02026-05-09 · field error · SI · ground_ball · EV 85.2 / LA -9.02026-05-10 · field out · SL · line_drive · EV 90.2 / LA 26.02026-05-10 · field out · FF · ground_ball · EV 59.8 / LA -37.02026-05-12 · field out · FF · line_drive · EV 103.6 / LA 17.02026-05-12 · field out · FF · popup · EV 55.1 / LA 64.02026-05-13 · single · FF · ground_ball · EV 104.2 / LA -3.02026-05-13 · field error · SI · ground_ball · EV 77.0 / LA -57.02026-05-14 · field out · FF · line_drive · EV 101.9 / LA 21.02026-05-14 · single · FC · fly_ball · EV 67.9 / LA 38.02026-05-14 · field out · FC · ground_ball · EV 74.0 / LA -8.02026-05-14 · field out · FF · ground_ball · EV 92.9 / LA 3.02026-05-15 · field out · FF · fly_ball · EV 90.9 / LA 48.02026-05-15 · field out · SL · ground_ball · EV 91.8 / LA -13.02026-05-16 · force out · CH · ground_ball · EV 68.5 / LA -17.02026-05-16 · single · CU · line_drive · EV 78.2 / LA 20.02026-05-16 · field out · SI · popup · EV 63.4 / LA 52.02026-05-16 · field error · CU · ground_ball · EV 82.3 / LA -4.02026-05-17 · single · FF · ground_ball · EV 93.5 / LA 8.02026-05-17 · field out · FS · fly_ball · EV 88.4 / LA 32.02026-05-17 · field out · SL · ground_ball · EV 92.6 / LA 5.02026-05-17 · field out · SI · fly_ball · EV 74.0 / LA 49.02026-05-18 · field out · SI · fly_ball · EV 78.5 / LA 30.02026-05-18 · field out · FC · fly_ball · EV 93.0 / LA 27.02026-05-18 · field out · CU · fly_ball · EV 83.5 / LA 33.02026-05-18 · field out · FF · ground_ball · EV 73.9 / LA -29.02026-05-19 · field out · SL · ground_ball · EV 73.6 / LA -34.02026-05-20 · field out · FF · ground_ball · EV 71.7 / LA -17.02026-05-20 · single · CH · line_drive · EV 70.5 / LA 21.02026-05-20 · single · FS · ground_ball · EV 101.9 / LA 5.02026-05-21 · single · SL · line_drive · EV 91.7 / LA 14.02026-05-22 · fielders choice · SL · ground_ball · EV 75.6 / LA -18.02026-05-22 · field out · CH · fly_ball · EV 95.6 / LA 34.02026-05-22 · field out · CH · popup · EV 68.2 / LA 59.02026-05-22 · field out · SI · ground_ball · EV 96.9 / LA -3.02026-05-24 · field out · FF · line_drive · EV 60.3 / LA 21.02026-05-24 · field out · FF · fly_ball · EV 89.7 / LA 46.02026-05-24 · field out · FF · ground_ball · EV 80.8 / LA -19.02026-05-24 · field out · FS · ground_ball · EV 85.7 / LA -26.02026-05-26 · sac fly · FF · fly_ball · EV 95.6 / LA 26.02026-05-26 · sac fly · FF · fly_ball · EV 85.8 / LA 42.02026-05-26 · field out · SL · fly_ball · EV 85.9 / LA 32.02026-05-27 · field out · SI · fly_ball · EV 87.9 / LA 40.02026-05-27 · field out · SL · ground_ball · EV 101.6 / LA -2.02026-05-31 · field out · SI · ground_ball · LA -41.02026-05-31 · field out · KC · fly_ball · EV 79.0 / LA 39.02026-06-01 · sac bunt · FF · ground_ball · EV 32.2 / LA -9.02026-06-01 · field out · FS · line_drive · EV 81.7 / LA 10.02026-06-01 · field out · SI · fly_ball · EV 99.8 / LA 30.02026-06-01 · single · CH · line_drive · EV 81.1 / LA 16.02026-06-05 · field out · FF · fly_ball · EV 82.3 / LA 53.02026-06-05 · single · FF · ground_ball · EV 91.8 / LA 6.02026-06-07 · single · ST · ground_ball · EV 98.8 / LA 3.02026-06-07 · field error · FF · ground_ball · EV 94.4 / LA -16.02026-06-15 · field out · FF · ground_ball · EV 91.5 / LA -22.02026-06-15 · field out · FF · line_drive · EV 96.4 / LA 22.02026-06-15 · field out · FF · fly_ball · EV 75.5 / LA 42.02026-06-20 · field out · CU · fly_ball · EV 89.7 / LA 50.02026-06-22 · field out · FC · ground_ball · EV 91.9 / LA 0.02026-06-22 · field out · CU · ground_ball · EV 90.9 / LA -11.02026-06-22 · field out · FF · fly_ball · EV 83.4 / LA 50.02026-06-22 · triple · FF · line_drive · EV 101.7 / LA 12.02026-06-24 · field out · FF · line_drive · EV 91.0 / LA 20.02026-06-24 · single · SI · line_drive · EV 84.4 / LA 14.02026-06-26 · field out · CU · fly_ball · EV 90.7 / LA 31.02026-06-26 · field out · SL · ground_ball · EV 97.8 / LA 6.02026-06-30 · field out · SL · fly_ball · EV 72.8 / LA 42.02026-06-30 · fielders choice · SI · ground_ball · EV 87.5 / LA -17.02026-06-30 · field out · FC · fly_ball · EV 81.6 / LA 31.02026-06-30 · field out · FF · fly_ball · EV 85.7 / LA 52.02026-07-01 · single · FC · ground_ball · EV 94.4 / LA 0.02026-07-01 · field out · FS · ground_ball · EV 47.9 / LA -14.02026-07-01 · field out · CH · ground_ball · EV 67.8 / LA -5.02026-07-01 · field out · SI · popup · EV 66.9 / LA 35.02026-07-27 · field out · SL · fly_ball · EV 95.8 / LA 25.02026-07-27 · single · SI · line_drive · EV 97.3 / LA 16.02026-07-27 · triple · FF · line_drive · EV 82.9 / LA 23.02026-07-31 · field out · FF · ground_ball · EV 84.5 / LA -39.02026-08-02 · field out · FF · fly_ball · EV 89.5 / LA 50.02026-08-02 · single · FC · ground_ball · EV 103.7 / LA 6.02026-08-02 · single · SI · line_drive · EV 103.0 / LA 10.02026-08-02 · field out · SL · ground_ball · EV 74.6 / LA -13.02026-08-02 · field out · FF · fly_ball · EV 79.0 / LA 48.02026-08-04 · single · FF · ground_ball · EV 93.3 / LA 1.02026-08-04 · single · FF · line_drive · EV 95.0 / LA 15.02026-08-04 · double · CU · line_drive · EV 96.9 / LA 22.02026-08-05 · field out · SI · ground_ball · EV 87.2 / LA 1.02026-08-07 · field out · SI · fly_ball · EV 87.3 / LA 42.02026-08-07 · single · SI · line_drive · EV 85.7 / LA 14.02026-08-07 · single · FF · line_drive · EV 82.8 / LA 16.02026-08-08 · field out · SI · ground_ball · EV 83.7 / LA -11.02026-08-08 · double · CU · line_drive · EV 98.8 / LA 22.02026-08-08 · field out · FC · ground_ball · EV 80.0 / LA -33.02026-08-08 · field out · FC · fly_ball · EV 88.7 / LA 44.02026-08-11 · field out · FF · ground_ball · EV 84.2 / LA -27.02026-08-11 · field out · CH · line_drive · EV 88.7 / LA 24.02026-08-13 · field out · FC · fly_ball · EV 88.5 / LA 49.02026-08-13 · field out · SI · line_drive · EV 80.8 / LA 13.02026-08-14 · field out · CU · ground_ball · EV 90.1 / LA -8.02026-08-14 · field out · SI · line_drive · EV 98.9 / LA 19.02026-08-14 · field out · CH · fly_ball · EV 81.1 / LA 46.02026-08-16 · field out · SL · ground_ball · EV 72.5 / LA 5.02026-08-16 · field out · FF · fly_ball · EV 89.7 / LA 34.02026-08-17 · single · SI · line_drive · EV 86.3 / LA 10.02026-08-17 · double · FF · ground_ball · EV 92.9 / LA -8.02026-08-17 · field out · FS · ground_ball · EV 95.8 / LA 7.02026-08-17 · single · FF · line_drive · EV 89.5 / LA 18.02026-08-19 · single · CU · ground_ball · EV 73.8 / LA 3.02026-08-21 · field out · FF · ground_ball · EV 69.5 / LA -41.02026-08-21 · double · FF · line_drive · EV 97.6 / LA 19.02026-08-22 · field out · CH · ground_ball · EV 79.0 / LA -35.02026-08-22 · field out · CH · fly_ball · EV 92.4 / LA 25.02026-08-23 · single · FF · line_drive · EV 86.4 / LA 24.02026-08-24 · field out · SI · ground_ball · EV 88.1 / LA -7.02026-08-24 · field out · CH · line_drive · EV 83.2 / LA 21.02026-08-24 · field out · FC · fly_ball · EV 84.1 / LA 34.02026-08-26 · field out · SI · ground_ball · EV 75.5 / LA -6.02026-08-26 · field out · CU · fly_ball · EV 91.2 / LA 44.02026-08-26 · field out · FF · fly_ball · EV 83.0 / LA 38.02026-08-29 · field out · FC · fly_ball · EV 90.8 / LA 64.02026-08-30 · field out · CH · ground_ball · EV 77.5 / LA 5.02026-08-30 · field out · FF · fly_ball · EV 90.8 / LA 43.02026-08-31 · field out · FF · fly_ball · EV 84.1 / LA 45.02026-08-31 · single · FC · line_drive · EV 92.6 / LA 13.02026-09-02 · field out · FF · fly_ball · EV 91.2 / LA 32.02026-09-02 · field out · SI · line_drive · EV 63.5 / LA 13.02026-09-02 · field out · FF · ground_ball · EV 86.7 / LA -4.02026-09-02 · field out · FS · ground_ball · EV 68.9 / LA 0.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 McKinstry, Zach · Aggregate zone metrics; not pitch-by-pitch locations Zone: 52%52%Chase: 29%29%Whiff: 14%14%Zone contact: 94%94%Contact: 86%86%Hard hit: 22%22% Dashed border = aggregate mixed-batter zone proxy MITHRANDIR · CHARTS
Model read

Projection notes

1
templated note
Home park trims some of the raw HR output despite the underlying power.
2
templated note
Age-31 season adds a little downside to the power band.
Live context

Current-season signal

xwOBA Δ-0.026
wOBA Δ+0.005
Sample400 PA

negative regression

Projection table

Point projection and range

MetricPointRangeHalf-width
Plate Appearances519----
Home Runs11----
Stolen Bases0----
xwOBA0.3090.282 to 0.346+/- 0.032
ISO0.1450.113 to 0.235+/- 0.061
Barrel%4.0%2.6% to 6.5%+/- 2.0%
Hard-Hit%32.9%29.6% to 38.5%+/- 4.4%
K%21.0%19.3% to 26.8%+/- 3.7%
BB%8.2%6.5% to 11.2%+/- 2.3%
BABIP0.2870.250 to 0.329+/- 0.040
Platoon / Shape
vs LHP

289 career PA

xwOBA0.237
K%18.0%
BB%6.3%
Barrel2.7%
vs RHP

1583 career PA

xwOBA0.255
K%18.2%
BB%7.3%
Barrel3.8%