Batter vs Pitch Arsenal
A batter's own numbers by pitch type and location — add a pitcher to see their actual arsenal overlaid on top, and how this batter has done against pitches shaped like it.
Iván Herrera RHB SLN vs Jacob Misiorowski RHP MIL
filtered for today’s matchupP = platoon edge (batter faces the opposite hand)
Batters grouped by swing shape — bat speed and swing length for power, attack angle and path tilt for loft — from Statcast bat tracking.
The number beside each metric is the gap to league average across the 610 batters with enough tracked swings to measure.
A description, not a prediction. The model does not use it.
Bat speed, barrel rate, exit velocity and chase rate over the last 30 games against this player's own last 100, so it reads as “is he himself right now” rather than “is he good”.
Flagged only when it has moved further than three quarters of hitters do. Movement in either direction counts.
Descriptive — the model does not use it.
whole-game, not filtered to this arsenal — see the per-pitch sections belowPitchers' arsenals are grouped by pitch shape — velocity, break and spin — and weighted by how often this pitcher throws each, so the number describes the arsenal he will face tonight.
Compared against this batter's own mark across every shape he has faced, so “done well” means well for him.
Descriptive — the model does not read it.
Overall vs RHP
One row per pitch this pitcher throws, ordered by usage. The bar is how this batter has performed against it; the dotted line is his own average from that hand.
Deeper red is better than his usual, deeper blue worse.
Faded rows have too little contact to trust — the count on the right is the sample behind the number.
vs RHP · ordered by usageNo tracked contact against this pitcher's pitches for this batter yet
Left: what the pitcher throws. Right: how this batter has done against that same pitch.
The right-hand columns count only pitches carrying the same label — a slider against a slider — thrown by pitchers with the same handedness.
That is precise but can leave a small sample. The table below groups by how a pitch actually moves instead.
| Pitch | Usage% | Velo | Vert Brk | Horz Brk | Spin | Allowed HR% | Allowed Hard-Hit% | Allowed xwOBA/con | Iván Herrera: BA | Iván Herrera: HR% | Iván Herrera: Hard-Hit% | Iván Herrera: Exit Velo | Iván Herrera: xwOBA/con |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| FF | 59% | 100.2 | 15.5" | -10.5" | 2617 | 2.6% | 42% | 0.376 | 0.231 | 4.1% | 45% | 91.4 | 0.345 |
| SL | 23% | 93.0 | 3.9" | 3.1" | 2517 | 2.8% | 28% | 0.315 | 0.292 | 3.8% | 54% | 93.8 | 0.444 |
| CU | 9% | 87.6 | -8.3" | 6.2" | 2317 | 0.0% | 23% | 0.268 | 0.229 | 2.1% | 34% | 85.0 | 0.382 |
| FC | 9% | 95.6 | 7.1" | 1.7" | 2573 | 4.9% | 31% | 0.339 | 0.304 | 2.2% | 43% | 91.0 | 0.334 |
| CH | 0% | 92.5 | 5.6" | -15.9" | 2052 | 0.120 | 2.0% | 39% | 87.8 | 0.294 | |||
| SI | 0% | 101.1 | 10.4" | -14.1" | 2666 | 0.269 | 2.6% | 40% | 87.3 | 0.332 |
The table above, grouped by how the pitch moves rather than what it is called.
Two pitchers can both say “slider” and throw very different pitches. Grouping by speed, break and spin pools everyone throwing something physically similar, so the sample is bigger and steadier.
| Shape (mostly) | Usage% | Velo | Vert Brk | Horz Brk | Allowed xwOBA/con | Iván Herrera: BA | Iván Herrera: HR% | Iván Herrera: Hard-Hit% | Iván Herrera: xwOBA/con |
|---|---|---|---|---|---|---|---|---|---|
| FF/SI/FC | 62% | 100.0 | 15.2" | -10.0" | 0.375 | 0.214 | 3.8% | 44% | 0.356 |
| FC/SL/FF | 28% | 93.5 | 4.7" | 2.9" | 0.316 | 0.273 | 2.3% | 47% | 0.363 |
| SL/ST/CU | 8% | 87.8 | -7.5" | 6.2" | 0.235 | 0.213 | 3.3% | 43% | 0.386 |
| CH/SI/FS | 2% | 86.8 | -10.9" | 6.6" | 0.100 | 2.5% | 38% | 0.257 | |
| EP/FA/SL | 2% | 86.9 | -10.8" | 6.6" | |||||
| CU/KC/ST | 1% | 86.9 | -10.8" | 6.6" | 0.286 | 2.4% | 34% | 0.362 | |
| ST/SL/CU | 1% | 88.6 | -4.7" | 8.7" | 0.262 | 2.9% | 39% | 0.391 | |
| FF/SI/FC | 0% | 92.5 | 5.6" | -15.9" | 0.316 | 5.1% | 47% | 0.347 | |
| CH/FS/FO | 0% | 92.5 | 5.6" | -15.9" | 0.161 | 3.2% | 52% | 0.345 | |
| SI/FF/CH | 0% | 92.5 | 5.6" | -15.9" | 0.282 | 2.1% | 38% | 0.335 |
One row per plate appearance, newest first. Strikeouts and walks included.
Expected stats say what a batted ball was worth given how hard and at what angle it was hit, whether or not it found a glove.
xBA is blank on strikeouts and walks — there is no batted ball to judge. xwOBA counts them.
88 PA · 30 games · 2026-08-25 to 2026-09-27| Date | Result | Count | Pitch | Velo | Exit Velo | Angle | Dist | Location | xBA | xSLG | xwOBA | Pitcher |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026-09-27 | Walk | 3-2 | CH | 93.4 | — | — | — | — | — | — | 0.698 | Chad Patrick |
| 2026-09-27 | Out line drive | 0-2 | CU | 88.0 | 76.6 | 24° | 256 | CF | 0.800 | 0.892 | 0.742 | Jacob Misiorowski |
| 2026-09-27 | Strikeout swinging | 2-2 | CU | 88.8 | — | — | — | — | — | — | 0.000 | Jacob Misiorowski |
| 2026-09-26 | Out fly ball | 1-1 | CH | 93.9 | 80.2 | 31° | 290 | CF | 0.066 | 0.094 | 0.064 | Aaron Ashby |
| 2026-09-26 | Out fly ball | 0-0 | FF | 95.8 | 103.3 | 38° | 362 | LF | 0.397 | 1.565 | 0.818 | Kyle Harrison |
| 2026-09-26 | Strikeout swinging | 1-2 | FF | 97.3 | — | — | — | — | — | — | 0.000 | Dustin May |
| 2026-09-26 | Out popup | 1-2 | FF | 98.6 | 67.5 | 50° | 186 | RF | 0.151 | 0.184 | 0.146 | Dustin May |
| 2026-09-25 | Strikeout swinging | 2-2 | CH | 89.3 | — | — | — | — | — | — | 0.000 | Robert Gasser |
| 2026-09-25 | Strikeout swinging | 1-2 | FF | 94.0 | — | — | — | — | — | — | 0.000 | Robert Gasser |
| 2026-09-24 | Strikeout looking | 1-2 | FF | 96.4 | — | — | — | — | — | — | 0.000 | Paul Skenes |
| 2026-09-24 | Strikeout swinging | 1-2 | CH | 88.1 | — | — | — | — | — | — | 0.000 | Paul Skenes |
| 2026-09-23 | Out fly ball | 0-0 | SL | 88.3 | 104.8 | 34° | 372 | LF | 0.726 | 2.825 | 1.440 | Khristian Curtis |
| 2026-09-23 | Walk | 3-0 | FF | 89.4 | — | — | — | — | — | — | 0.698 | Brandon Eisert |
| 2026-09-22 | Strikeout swinging | 3-2 | FF | 99.2 | — | — | — | — | — | — | 0.000 | Gregory Soto |
| 2026-09-22 | Strikeout swinging | 1-2 | FF | 97.0 | — | — | — | — | — | — | 0.000 | Jared Jones |
| 2026-09-22 | Strikeout swinging | 1-2 | CU | 86.2 | — | — | — | — | — | — | 0.000 | Jared Jones |
| 2026-09-22 | Strikeout swinging | 1-2 | FF | 98.5 | — | — | — | — | — | — | 0.000 | Jared Jones |
| 2026-09-20 | Home Run fly ball | 0-1 | FF | 97.8 | 111.1 | 25° | 439 | LF | 1.000 | 4.000 | 2.000 | Erik Tolman |
| 2026-09-20 | Strikeout swinging | 0-2 | FF | 93.8 | — | — | — | — | — | — | 0.000 | Jake Irvin |
| 2026-09-20 | Home Run fly ball | 3-1 | FF | 93.6 | 107.5 | 22° | 375 | LF | 0.866 | 2.819 | 1.517 | Jake Irvin |
| 2026-09-19 | Strikeout swinging | 0-2 | SL | 86.3 | — | — | — | — | — | — | 0.000 | Riley Cornelio |
| 2026-09-19 | Out ground ball | 2-1 | SL | 84.9 | 101.2 | -11° | 12 | Infield | 0.213 | 0.244 | 0.198 | Andrew Alvarez |
| 2026-09-19 | Double fly ball | 1-2 | CU | 84.6 | 94.7 | 25° | 302 | RF corner | 0.203 | 0.463 | 0.274 | Andrew Alvarez |
| 2026-09-18 | Force Out ground ball | 0-2 | FC | 90.5 | 79.3 | -27° | 3 | Infield | 0.043 | 0.043 | 0.039 | Cade Cavalli |
| 2026-09-18 | Strikeout swinging | 2-2 | FF | 96.6 | — | — | — | — | — | — | 0.000 | Cade Cavalli |
| 2026-09-16 | Walk | 3-2 | FF | 96.5 | — | — | — | — | — | — | 0.699 | Dylan Smith |
| 2026-09-15 | Sac Fly line drive | 2-2 | CU | 83.2 | 103.4 | 19° | 341 | LF gap | — | — | 0.557 | Blade Tidwell |
| 2026-09-15 | Out ground ball | 1-2 | CU | 83.0 | 58.1 | -15° | 8 | Infield | 0.052 | 0.052 | 0.047 | Blade Tidwell |
| 2026-09-14 | Out line drive | 2-1 | CU | 77.8 | 100.6 | 21° | 362 | CF | 0.380 | 0.801 | 0.492 | Trent Harris |
| 2026-09-13 | Out ground ball | 0-1 | FF | 92.0 | 99.0 | -20° | 4 | Infield | 0.133 | 0.146 | 0.121 | Trevor Richards |
| 2026-09-13 | Reached On Error ground ball | 1-1 | FC | 91.6 | 103.6 | 4° | 88 | Infield | 0.563 | 0.625 | 0.519 | David Sandlin |
| 2026-09-12 | Out line drive | 0-1 | FF | 100.5 | 92.2 | 21° | 290 | RF | 0.249 | 0.384 | 0.264 | Jordan Hicks |
| 2026-09-12 | Walk | 3-2 | FF | 100.0 | — | — | — | — | — | — | 0.698 | Grant Taylor |
| 2026-09-12 | Walk | 3-1 | CH | 86.5 | — | — | — | — | — | — | 0.698 | Luis Castillo |
| 2026-09-12 | Out fly ball | 3-2 | FF | 94.5 | 96.7 | 25° | 340 | RF gap | 0.274 | 0.647 | 0.387 | Luis Castillo |
| 2026-09-12 | Strikeout swinging | 1-2 | FF | 96.2 | — | — | — | — | — | — | 0.000 | Sean Newcomb |
| 2026-09-11 | Out fly ball | 1-2 | FF | 94.8 | 77.8 | 42° | 256 | CF | 0.077 | 0.145 | 0.100 | Tyler Schweitzer |
| 2026-09-11 | Strikeout looking | 1-2 | FF | 90.6 | — | — | — | — | — | — | 0.000 | Trevor Richards |
| 2026-09-11 | Strikeout looking | 3-2 | FF | 91.1 | — | — | — | — | — | — | 0.000 | Trevor Richards |
| 2026-09-11 | Hit By Pitch | 2-2 | SL | 85.4 | — | — | — | — | — | — | 0.730 | Anthony Kay |
| 2026-09-09 | Out ground ball | 3-2 | FF | 90.9 | 94.9 | -9° | 9 | Infield | 0.184 | 0.215 | 0.180 | Matt Wilkinson |
| 2026-09-09 | Single ground ball | 0-1 | FF | 96.1 | 88.3 | 2° | 70 | RF gap | 0.283 | 0.329 | 0.263 | Blade Tidwell |
| 2026-09-09 | Strikeout swinging | 3-2 | FF | 95.5 | — | — | — | — | — | — | 0.000 | Blade Tidwell |
| 2026-09-08 | Single line drive | 0-0 | CU | 76.8 | 95.4 | 14° | 200 | LF | 0.920 | 1.141 | 0.895 | Landen Roupp |
| 2026-09-07 | Force Out ground ball | 0-2 | CH | 86.4 | 91.4 | -16° | 6 | Infield | 0.101 | 0.117 | 0.099 | Logan Webb |
| 2026-09-07 | Walk | 3-1 | CH | 85.8 | — | — | — | — | — | — | 0.698 | Logan Webb |
| 2026-09-06 | Double line drive | 0-1 | FF | 96.2 | 95.7 | 17° | 279 | RF | 0.523 | 0.690 | 0.504 | Nick Frasso |
| 2026-09-06 | Single ground ball | 1-2 | FF | 96.2 | 94.7 | 0° | 44 | RF | 0.347 | 0.402 | 0.326 | Mark Manfredi |
| 2026-09-06 | Single ground ball | 0-2 | FF | 93.2 | 81.0 | 9° | 127 | RF gap | 0.403 | 0.459 | 0.390 | Tanner Gordon |
| 2026-09-06 | Strikeout swinging | 2-2 | CU | 81.6 | — | — | — | — | — | — | 0.000 | Tanner Gordon |
| 2026-09-06 | Out ground ball | 1-0 | FF | 93.0 | 46.3 | -27° | 6 | Infield | 0.201 | 0.201 | 0.181 | Tanner Gordon |
| 2026-09-05 | Single ground ball | 0-0 | FF | 97.2 | 105.5 | -18° | 8 | RF | 0.193 | 0.198 | 0.174 | Juan Mejia |
| 2026-09-05 | Strikeout looking | 2-2 | CH | 85.4 | — | — | — | — | — | — | 0.000 | Jaden Hill |
| 2026-09-05 | Home Run fly ball | 0-1 | CH | 88.1 | 107.2 | 27° | 443 | CF | 0.954 | 3.769 | 1.931 | Mason Adams |
| 2026-09-05 | Out line drive | 1-2 | FF | 92.9 | 99.2 | 18° | 327 | RF gap | 0.354 | 0.579 | 0.393 | Mason Adams |
| 2026-09-05 | Strikeout swinging | 1-2 | FF | 94.4 | — | — | — | — | — | — | 0.000 | Mason Adams |
| 2026-09-04 | Home Run fly ball | 1-2 | SL | 84.2 | 103.5 | 26° | 430 | CF | 0.846 | 3.090 | 1.605 | Jordan Romano |
| 2026-09-04 | Out ground ball | 2-2 | SL | 88.4 | 76.7 | -1° | 37 | Infield | 0.072 | 0.077 | 0.065 | Mark Manfredi |
| 2026-09-04 | Out ground ball | 0-2 | FF | 93.3 | 88.5 | -30° | 5 | Infield | 0.054 | 0.070 | 0.050 | Ryan Feltner |
| 2026-09-04 | Strikeout swinging | 1-2 | CH | 84.4 | — | — | — | — | — | — | 0.000 | Ryan Feltner |
| 2026-09-03 | Out fly ball | 0-0 | FF | 95.7 | 88.9 | 51° | 257 | LF | 0.017 | 0.033 | 0.024 | Tarik Skubal |
| 2026-09-03 | Single line drive | 1-1 | FF | 94.7 | 106.0 | 11° | 230 | LF gap | 0.946 | 1.228 | 0.939 | Tarik Skubal |
| 2026-09-03 | Single line drive | 2-2 | CH | 88.5 | 96.7 | 17° | 288 | CF | 0.523 | 0.790 | 0.557 | Tarik Skubal |
| 2026-09-02 | Out ground ball | 0-1 | FF | 96.8 | 101.8 | 1° | 74 | Infield | 0.494 | 0.548 | 0.456 | Tanner Scott |
| 2026-09-02 | Out ground ball | 0-1 | FF | 97.1 | 105.0 | -18° | 6 | Infield | 0.193 | 0.198 | 0.174 | Yoshinobu Yamamoto |
| 2026-09-02 | Out ground ball | 1-2 | SL | 86.7 | 91.4 | 2° | 52 | Infield | 0.332 | 0.387 | 0.315 | Yoshinobu Yamamoto |
| 2026-09-01 | Strikeout swinging | 1-2 | SL | 87.3 | — | — | — | — | — | — | 0.000 | Justin Wrobleski |
| 2026-09-01 | Strikeout swinging | 2-2 | CH | 89.9 | — | — | — | — | — | — | 0.000 | Kyle Hurt |
| 2026-09-01 | Walk | 3-2 | FF | 97.9 | — | — | — | — | — | — | 0.698 | Seth Halvorsen |
| 2026-09-01 | Single ground ball | 2-2 | CU | 76.5 | 94.2 | -15° | 6 | LF gap | 0.147 | 0.160 | 0.138 | Eric Lauer |
| 2026-09-01 | Single fly ball | 3-2 | FC | 88.4 | 67.1 | 26° | 216 | LF | 0.974 | 1.023 | 0.884 | Eric Lauer |
| 2026-08-30 | Single line drive | 0-0 | SL | 92.5 | 107.5 | 2° | 71 | CF | 0.571 | 0.654 | 0.543 | Braxton Ashcraft |
| 2026-08-30 | Out ground ball | 2-2 | CU | 86.1 | 72.7 | -38° | 1 | Infield | 0.095 | 0.097 | 0.088 | Braxton Ashcraft |
| 2026-08-30 | Out ground ball | 1-2 | SL | 92.9 | 76.5 | -74° | 1 | Infield | 0.277 | 0.277 | 0.249 | Braxton Ashcraft |
| 2026-08-29 | Out line drive | 1-1 | FF | 98.1 | 96.0 | 20° | 306 | CF | 0.297 | 0.568 | 0.360 | Gregory Soto |
| 2026-08-29 | Out line drive | 1-1 | FF | 95.4 | 96.1 | 23° | 343 | LF gap | 0.203 | 0.403 | 0.255 | Carmen Mlodzinski |
| 2026-08-29 | Walk | 3-0 | CU | 74.8 | — | — | — | — | — | — | 0.698 | Evan Sisk |
| 2026-08-29 | Out fly ball | 3-2 | FF | 93.5 | 81.2 | 35° | 289 | LF | 0.037 | 0.067 | 0.046 | Lake Bachar |
| 2026-08-28 | Out fly ball | 2-0 | SL | 83.9 | 90.8 | 48° | 277 | RF corner | 0.001 | 0.001 | 0.000 | Gregory Soto |
| 2026-08-28 | Out ground ball | 1-2 | CU | 84.0 | 59.3 | -59° | 1 | Infield | 0.224 | 0.224 | 0.202 | Jared Jones |
| 2026-08-28 | Reached On Error ground ball | 2-2 | SL | 90.4 | 105.0 | 5° | 100 | Infield | 0.637 | 0.727 | 0.600 | Jared Jones |
| 2026-08-28 | Out ground ball | 2-2 | FF | 99.0 | 97.1 | 4° | 103 | RF corner | 0.503 | 0.561 | 0.461 | Jared Jones |
| 2026-08-27 | Strikeout looking | 0-2 | FF | 96.7 | — | — | — | — | — | — | 0.000 | Cam Sanders |
| 2026-08-26 | Single line drive | 2-2 | SL | 86.7 | 80.5 | 18° | 225 | LF gap | 0.997 | 1.124 | 0.931 | Andrew Kittredge |
| 2026-08-26 | Strikeout swinging | 1-2 | CU | 88.0 | — | — | — | — | — | — | 0.000 | Rico Garcia |
| 2026-08-26 | Single ground ball | 2-2 | SL | 88.7 | 90.3 | -9° | 11 | CF | 0.150 | 0.173 | 0.141 | Kyle Bradish |
| 2026-08-26 | Single line drive | 3-2 | SL | 87.5 | 106.6 | 10° | 199 | LF | 0.863 | 1.099 | 0.855 | Kyle Bradish |
| 2026-08-25 | Single line drive | 2-2 | FC | 92.0 | 108.5 | 10° | 220 | LF gap | 0.911 | 1.221 | 0.936 | Chris Bassitt |