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.
Jonathan Aranda LHB TBA vs Shawn Armstrong RHP CLE P
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 | Jonathan Aranda: BA | Jonathan Aranda: HR% | Jonathan Aranda: Hard-Hit% | Jonathan Aranda: Exit Velo | Jonathan Aranda: xwOBA/con |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| FF | 38% | 93.6 | 15.1" | -5.8" | 2287 | 5.8% | 53% | 0.492 | 0.299 | 5.1% | 54% | 93.9 | 0.454 |
| FC | 29% | 90.5 | 8.6" | 4.1" | 2445 | 1.9% | 32% | 0.320 | 0.319 | 4.2% | 51% | 94.5 | 0.499 |
| ST | 22% | 84.6 | 9.9" | 12.3" | 2587 | 0.0% | 28% | 0.282 | 0.458 | 12.5% | 50% | 93.2 | 0.598 |
| SI | 11% | 94.0 | 10.2" | -15.2" | 2103 | 5.0% | 40% | 0.493 | 0.313 | 3.6% | 60% | 96.3 | 0.500 |
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 | Jonathan Aranda: BA | Jonathan Aranda: HR% | Jonathan Aranda: Hard-Hit% | Jonathan Aranda: xwOBA/con |
|---|---|---|---|---|---|---|---|---|---|
| FC/SL/FF | 37% | 89.4 | 9.2" | 5.3" | 0.295 | 0.303 | 5.1% | 55% | 0.527 |
| EP/FA/SL | 29% | 93.5 | 14.8" | -5.7" | 0.486 | ||||
| FF/SI/FC | 29% | 93.5 | 14.8" | -5.8" | 0.486 | 0.365 | 5.8% | 52% | 0.488 |
| CU/KC/ST | 14% | 84.2 | 9.0" | 13.8" | 0.395 | 0.208 | 0.0% | 68% | 0.390 |
| ST/SL/CU | 14% | 84.2 | 9.0" | 13.8" | 0.439 | 0.439 | 12.2% | 44% | 0.606 |
| SI/FF/CH | 10% | 94.1 | 10.1" | -15.4" | 0.464 | 0.273 | 2.3% | 55% | 0.434 |
| CH/FS/FO | 10% | 94.1 | 10.1" | -15.4" | 0.464 | 0.317 | 4.8% | 42% | 0.479 |
| SL/ST/CU | 10% | 93.9 | 16.0" | -6.1" | 0.533 | 0.324 | 8.1% | 63% | 0.623 |
| FF/SI/FC | 10% | 94.0 | 16.0" | -6.1" | 0.515 | 0.242 | 4.7% | 56% | 0.443 |
| CH/SI/FS | 0% | 90.6 | 9.0" | -14.9" | 0.303 | 1.3% | 27% | 0.326 |
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.
84 PA · 30 games · 2026-08-28 to 2026-10-15| Date | Result | Count | Pitch | Velo | Exit Velo | Angle | Dist | Location | xBA | xSLG | xwOBA | Pitcher |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026-10-15 | Out fly ball | 1-0 | FF | 98.3 | 85.2 | 31° | 319 | CF | 0.037 | 0.076 | 0.047 | Cade Smith |
| 2026-10-15 | Out popup | 0-2 | FF | 100.5 | 69.9 | 55° | 168 | LF corner | 0.051 | 0.069 | 0.052 | Daniel Espino |
| 2026-10-15 | Strikeout swinging | 2-2 | ST | 89.1 | — | — | — | — | — | — | 0.000 | Gavin Williams |
| 2026-10-15 | Strikeout swinging | 2-2 | ST | 88.0 | — | — | — | — | — | — | 0.000 | Gavin Williams |
| 2026-10-13 | Out line drive | 2-2 | SI | 94.9 | 101.2 | 16° | 282 | LF gap | 0.594 | 0.881 | 0.632 | Tim Herrin |
| 2026-10-13 | Hit By Pitch | 0-0 | SI | 93.1 | — | — | — | — | — | — | 0.729 | Parker Messick |
| 2026-10-13 | Out ground ball | 1-0 | SI | 94.9 | 96.2 | -25° | 4 | Infield | 0.097 | 0.114 | 0.087 | Parker Messick |
| 2026-10-13 | Out ground ball | 2-1 | FF | 96.1 | 98.6 | 5° | 85 | Infield | 0.574 | 0.641 | 0.540 | Parker Messick |
| 2026-10-12 | Out fly ball | 1-1 | FF | 94.7 | 100.7 | 44° | 331 | RF gap | 0.054 | 0.187 | 0.099 | Hunter Gaddis |
| 2026-10-12 | Out fly ball | 1-1 | ST | 81.2 | 106.7 | 37° | 402 | CF | 0.711 | 2.817 | 1.457 | Foster Griffin |
| 2026-10-12 | Sac Bunt ground ball | 1-0 | SI | 91.5 | 30.7 | -16° | 7 | LF corner | — | — | — | Foster Griffin |
| 2026-10-07 | Hit By Pitch | 0-0 | FF | 96.6 | — | — | — | — | — | — | 0.729 | David Bednar |
| 2026-10-07 | Out line drive | 0-1 | FC | 91.8 | 91.5 | 23° | 316 | CF | 0.160 | 0.301 | 0.192 | Max Fried |
| 2026-10-07 | Grounded Into DP ground ball | 0-2 | FF | 95.9 | 99.1 | -6° | 25 | Infield | 0.261 | 0.286 | 0.235 | Max Fried |
| 2026-10-05 | Out fly ball | 0-0 | FF | 95.1 | 104.3 | 41° | 378 | CF | 0.269 | 0.988 | 0.507 | David Bednar |
| 2026-10-05 | Out line drive | 2-1 | FC | 90.9 | 100.6 | 11° | 168 | RF gap | 0.911 | 1.132 | 0.886 | John Schreiber |
| 2026-10-05 | Single line drive | 2-2 | FF | 98.0 | 109.4 | 17° | 277 | RF gap | 0.649 | 1.219 | 0.791 | Cam Schlittler |
| 2026-10-05 | Out ground ball | 1-2 | SI | 99.4 | 97.6 | -4° | 24 | Infield | 0.248 | 0.275 | 0.223 | Cam Schlittler |
| 2026-10-05 | Single ground ball | 0-0 | FF | 97.8 | 103.1 | 0° | 44 | Infield | 0.454 | 0.482 | 0.410 | Cam Schlittler |
| 2026-10-03 | Out line drive | 1-2 | FF | 93.8 | 84.0 | 22° | 253 | LF | 0.514 | 0.608 | 0.469 | Paul Blackburn |
| 2026-10-03 | Out fly ball | 0-0 | FF | 97.4 | 96.0 | 51° | 283 | LF corner | 0.009 | 0.020 | 0.014 | Gerrit Cole |
| 2026-09-27 | Double ground ball | 2-2 | FF | 95.2 | 107.5 | 6° | 125 | RF corner | 0.629 | 0.718 | 0.586 | Zack Wheeler |
| 2026-09-26 | Strikeout swinging | 1-2 | FF | 94.5 | — | — | — | — | — | — | 0.000 | Max Lazar |
| 2026-09-26 | Out fly ball | 3-1 | SI | 91.9 | 97.6 | 55° | 236 | LF gap | 0.009 | 0.013 | 0.008 | José Urquidy |
| 2026-09-26 | Walk | 3-2 | SI | 96.1 | — | — | — | — | — | — | 0.698 | José Alvarado |
| 2026-09-26 | Walk | 3-2 | SI | 91.7 | — | — | — | — | — | — | 0.698 | Tanner Banks |
| 2026-09-25 | Strikeout swinging | 2-2 | FF | 100.3 | — | — | — | — | — | — | 0.000 | Jhoan Duran |
| 2026-09-25 | Walk | 3-2 | SI | 95.4 | — | — | — | — | — | — | 0.698 | Cristopher Sánchez |
| 2026-09-23 | Out ground ball | 0-1 | SI | 88.5 | 51.0 | 2° | 32 | Infield | 0.108 | 0.117 | 0.099 | Tim Hill |
| 2026-09-22 | Strikeout swinging | 3-2 | FC | 88.8 | — | — | — | — | — | — | 0.000 | Michael Fulmer |
| 2026-09-19 | Strikeout swinging | 1-2 | FF | 96.3 | — | — | — | — | — | — | 0.000 | Brayan Bello |
| 2026-09-19 | Home Run fly ball | 0-0 | FF | 96.9 | 98.7 | 31° | 361 | LF | 0.371 | 1.364 | 0.717 | Brayan Bello |
| 2026-09-19 | Strikeout looking | 1-2 | SI | 97.2 | — | — | — | — | — | — | 0.000 | Brayan Bello |
| 2026-09-18 | Double line drive | 1-0 | SI | 88.5 | 98.1 | 25° | 350 | RF | 0.397 | 0.992 | 0.578 | Ranger Suarez |
| 2026-09-17 | Reached On Error line drive | 1-1 | FF | 94.5 | 102.9 | 19° | 315 | LF | 0.437 | 0.898 | 0.557 | Yunior Tur |
| 2026-09-17 | Walk | 3-2 | FF | 97.0 | — | — | — | — | — | — | 0.699 | Chris Roycroft |
| 2026-09-17 | Double line drive | 2-1 | FF | 92.1 | 97.1 | 21° | 295 | LF | 0.243 | 0.482 | 0.303 | Jeffrey Springs |
| 2026-09-17 | Strikeout looking | 3-2 | FF | 91.7 | — | — | — | — | — | — | 0.000 | Jeffrey Springs |
| 2026-09-15 | Strikeout swinging | 3-2 | FF | 96.4 | — | — | — | — | — | — | 0.000 | Hogan Harris |
| 2026-09-15 | Single line drive | 1-0 | FC | 93.5 | 83.7 | 21° | 236 | RF gap | 0.637 | 0.761 | 0.594 | Jack Perkins |
| 2026-09-13 | Home Run fly ball | 3-2 | FF | 95.6 | 99.8 | 37° | 349 | LF | 0.209 | 0.781 | 0.390 | Enyel De Los Santos |
| 2026-09-13 | Walk | 3-2 | FF | 91.8 | — | — | — | — | — | — | 0.699 | Hayden Wesneski |
| 2026-09-13 | Strikeout swinging | 3-2 | FC | 91.0 | — | — | — | — | — | — | 0.000 | Hayden Wesneski |
| 2026-09-12 | Walk | 3-1 | FF | 95.1 | — | — | — | — | — | — | 0.698 | AJ Blubaugh |
| 2026-09-12 | Single line drive | 0-2 | FF | 93.2 | 102.6 | 15° | 212 | RF gap | 0.637 | 0.953 | 0.675 | Peter Lambert |
| 2026-09-12 | Out ground ball | 2-2 | FF | 94.9 | 99.6 | -1° | 40 | Infield | 0.343 | 0.387 | 0.314 | Peter Lambert |
| 2026-09-11 | Double fly ball | 1-1 | FC | 93.7 | 95.7 | 35° | 385 | RF gap | 0.160 | 0.592 | 0.313 | Bryan Abreu |
| 2026-09-11 | Strikeout swinging | 2-2 | FC | 90.0 | — | — | — | — | — | — | 0.000 | Ethan Pecko |
| 2026-09-11 | Out popup | 1-0 | FF | 93.9 | 84.0 | 68° | 162 | LF corner | 0.011 | 0.021 | 0.015 | Ethan Pecko |
| 2026-09-11 | Out ground ball | 3-2 | FF | 95.3 | 96.7 | -9° | 12 | RF corner | 0.221 | 0.242 | 0.199 | Miguel Ullola |
| 2026-09-09 | Hit By Pitch | 2-2 | FF | 97.8 | — | — | — | — | — | — | 0.730 | Victor Mederos |
| 2026-09-09 | Out ground ball | 0-0 | FF | 92.5 | 90.6 | -16° | 6 | Infield | 0.091 | 0.105 | 0.089 | Reynaldo López |
| 2026-09-09 | Strikeout swinging | 1-2 | FF | 93.9 | — | — | — | — | — | — | 0.000 | Reynaldo López |
| 2026-09-08 | Single ground ball | 0-0 | FF | 93.1 | 70.9 | 7° | 79 | RF | 0.242 | 0.256 | 0.218 | Elieser Hernández |
| 2026-09-08 | Strikeout looking | 1-2 | SI | 90.6 | — | — | — | — | — | — | 0.000 | Brent Suter |
| 2026-09-08 | Out ground ball | 0-0 | SI | 87.4 | 72.1 | -40° | 3 | Infield | 0.102 | 0.105 | 0.097 | Brent Suter |
| 2026-09-06 | Single line drive | 2-1 | FF | 94.3 | 91.9 | 16° | 234 | RF | 0.854 | 1.000 | 0.796 | Jacob Latz |
| 2026-09-06 | Out fly ball | 0-0 | FF | 96.1 | 89.1 | 51° | 277 | LF corner | 0.017 | 0.033 | 0.024 | Chase Silseth |
| 2026-09-06 | Double line drive | 2-0 | SI | 93.2 | 98.3 | 13° | 188 | RF | 0.940 | 1.126 | 0.897 | MacKenzie Gore |
| 2026-09-06 | Sac Fly fly ball | 1-2 | FF | 95.2 | 91.2 | 47° | 300 | LF gap | — | — | 0.009 | MacKenzie Gore |
| 2026-09-06 | Out popup | 2-1 | FF | 94.9 | 77.8 | 75° | 83 | LF corner | 0.001 | 0.001 | 0.000 | MacKenzie Gore |
| 2026-09-05 | Single line drive | 1-2 | FF | 91.7 | 94.9 | 17° | 244 | LF | 0.574 | 0.712 | 0.539 | Jakob Junis |
| 2026-09-05 | Out ground ball | 3-2 | FF | 98.3 | 103.7 | -1° | 41 | Infield | 0.463 | 0.515 | 0.428 | Jacob deGrom |
| 2026-09-05 | Strikeout swinging | 0-2 | FF | 98.4 | — | — | — | — | — | — | 0.000 | Jacob deGrom |
| 2026-09-04 | Hit By Pitch | 1-2 | FF | 96.3 | — | — | — | — | — | — | 0.729 | Chase Silseth |
| 2026-09-04 | Double line drive | 0-2 | FF | 94.7 | 88.9 | 24° | 302 | LF | 0.131 | 0.211 | 0.138 | Kumar Rocker |
| 2026-09-04 | Home Run fly ball | 1-0 | FC | 89.2 | 103.6 | 33° | 412 | RF gap | 0.683 | 2.648 | 1.352 | Kumar Rocker |
| 2026-09-04 | Strikeout swinging | 2-2 | FF | 92.1 | — | — | — | — | — | — | 0.000 | Trevor Williams |
| 2026-09-03 | Strikeout swinging | 1-2 | FF | 96.3 | — | — | — | — | — | — | 0.000 | Chase Silseth |
| 2026-09-03 | Walk | 3-2 | SI | 93.9 | — | — | — | — | — | — | 0.698 | Cal Quantrill |
| 2026-09-03 | Strikeout swinging | 3-2 | FF | 94.1 | — | — | — | — | — | — | 0.000 | Cal Quantrill |
| 2026-09-03 | Strikeout swinging | 1-2 | FF | 94.2 | — | — | — | — | — | — | 0.000 | Cal Quantrill |
| 2026-09-02 | Strikeout looking | 2-2 | FF | 92.0 | — | — | — | — | — | — | 0.000 | Nate Lavender |
| 2026-09-02 | Out line drive | 0-0 | FF | 96.8 | 101.1 | 22° | 351 | LF | 0.477 | 1.142 | 0.675 | Dedniel Núñez |
| 2026-09-02 | Out fly ball | 2-2 | FF | 92.5 | 97.2 | 27° | 362 | CF | 0.323 | 0.871 | 0.494 | Justin Hagenman |
| 2026-08-31 | Out line drive | 1-2 | FF | 95.9 | 99.4 | 19° | 329 | LF gap | 0.309 | 0.588 | 0.374 | Robert Stock |
| 2026-08-30 | Out fly ball | 3-1 | FF | 92.1 | 98.0 | 27° | 376 | CF | 0.374 | 1.108 | 0.610 | Yuki Matsui |
| 2026-08-30 | Strikeout swinging | 2-2 | FF | 98.7 | — | — | — | — | — | — | 0.000 | Adrian Morejon |
| 2026-08-30 | Out fly ball | 3-1 | FF | 93.6 | 98.0 | 53° | 258 | LF | 0.006 | 0.010 | 0.005 | Robbie Ray |
| 2026-08-30 | Out fly ball | 0-1 | FF | 93.1 | 96.5 | 43° | 319 | LF | 0.029 | 0.094 | 0.050 | Robbie Ray |
| 2026-08-29 | Out ground ball | 3-2 | SI | 93.9 | 88.3 | -2° | 33 | Infield | 0.208 | 0.241 | 0.187 | Walker Buehler |
| 2026-08-29 | Out popup | 2-2 | SI | 93.8 | 86.8 | 70° | 145 | LF corner | 0.003 | 0.003 | 0.003 | Walker Buehler |
| 2026-08-28 | Walk | 3-2 | FF | 98.2 | — | — | — | — | — | — | 0.698 | David Morgan |
| 2026-08-28 | Out line drive | 3-2 | FF | 93.8 | 100.3 | 18° | 324 | CF | 0.380 | 0.666 | 0.442 | Casey Mize |