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.
José Caballero RHB NYA vs Freddy Peralta RHP TBA
P = 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 | José Caballero: BA | José Caballero: HR% | José Caballero: Hard-Hit% | José Caballero: Exit Velo | José Caballero: xwOBA/con |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| FF | 53% | 94.9 | 16.8" | -5.4" | 2444 | 4.7% | 40% | 0.375 | 0.225 | 2.3% | 35% | 83.8 | 0.373 |
| CH | 17% | 88.6 | 3.4" | -17.3" | 1989 | 1.1% | 42% | 0.362 | 0.167 | 4.2% | 19% | 71.3 | 0.236 |
| SL | 12% | 83.8 | 5.3" | 4.7" | 2440 | 0.0% | 23% | 0.264 | 0.210 | 1.0% | 26% | 79.7 | 0.315 |
| CU | 10% | 79.7 | -5.1" | 5.0" | 2349 | 5.5% | 45% | 0.332 | 0.333 | 4.2% | 19% | 84.9 | 0.274 |
| ST | 6% | 82.3 | 5.3" | 9.7" | 2503 | 2.6% | 15% | 0.202 | 0.189 | 0.0% | 11% | 79.5 | 0.304 |
| CS | 2% | 74.9 | -8.8" | 7.9" | 2311 | 0.0% |
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 | José Caballero: BA | José Caballero: HR% | José Caballero: Hard-Hit% | José Caballero: xwOBA/con |
|---|---|---|---|---|---|---|---|---|---|
| FF/SI/FC | 46% | 95.2 | 17.0" | -5.4" | 0.365 | 0.262 | 3.6% | 40% | 0.394 |
| CH/SI/FS | 16% | 88.5 | 3.3" | -17.2" | 0.339 | 0.214 | 3.6% | 31% | 0.263 |
| SL/ST/CU | 14% | 81.0 | -0.7" | 5.1" | 0.324 | 0.241 | 0.0% | 21% | 0.267 |
| EP/FA/SL | 7% | 92.9 | 16.0" | -4.8" | 0.445 | ||||
| FF/SI/FC | 7% | 92.9 | 16.0" | -4.8" | 0.445 | 0.208 | 0.0% | 33% | 0.373 |
| FC/SL/FF | 7% | 84.6 | 7.9" | 2.7" | 0.322 | 0.254 | 1.4% | 29% | 0.318 |
| ST/SL/CU | 5% | 82.5 | 4.3" | 11.5" | 0.150 | 0.150 | 0.0% | 10% | 0.272 |
| CU/KC/ST | 4% | 77.5 | -8.7" | 7.3" | 0.138 | 0.227 | 4.5% | 22% | 0.254 |
| SI/FF/CH | 1% | 90.1 | 5.1" | -18.7" | 0.244 | 3.7% | 24% | 0.302 | |
| CH/FS/FO | 0% | 90.4 | 10.5" | -12.5" | 0.217 | 0.0% | 28% | 0.291 |
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.
74 PA · 30 games · 2026-08-13 to 2026-10-07| Date | Result | Count | Pitch | Velo | Exit Velo | Angle | Dist | Location | xBA | xSLG | xwOBA | Pitcher |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026-10-07 | Strikeout swinging | 2-2 | FF | 93.1 | — | — | — | — | — | — | 0.000 | Ian Seymour |
| 2026-09-25 | Out fly ball | 1-1 | CU | 75.8 | 82.5 | 49° | 238 | RF gap | 0.014 | 0.022 | 0.015 | Albert Suárez |
| 2026-09-25 | Strikeout swinging | 2-2 | FF | 94.4 | — | — | — | — | — | — | 0.000 | Trevor Rogers |
| 2026-09-24 | Fielder's Choice ground ball | 1-2 | CU | 88.5 | 80.6 | -16° | 8 | Infield | 0.082 | 0.083 | 0.077 | Brody Hopkins |
| 2026-09-24 | Strikeout swinging | 0-2 | FF | 92.7 | — | — | — | — | — | — | 0.000 | Jake Woodford |
| 2026-09-24 | Strikeout swinging | 1-2 | FF | 92.0 | — | — | — | — | — | — | 0.000 | Ian Seymour |
| 2026-09-23 | Force Out ground ball | 2-2 | CU | 78.0 | 76.3 | -35° | 4 | Infield | 0.055 | 0.056 | 0.050 | Steven Matz |
| 2026-09-23 | Out popup | 2-2 | FF | 92.7 | 65.4 | 44° | 190 | RF gap | 0.346 | 0.399 | 0.336 | Casey Legumina |
| 2026-09-23 | Walk | 3-2 | FF | 93.5 | — | — | — | — | — | — | 0.698 | Mason Englert |
| 2026-09-22 | Strikeout looking | 2-2 | FF | 94.6 | — | — | — | — | — | — | 0.000 | Ty Johnson |
| 2026-09-22 | Single ground ball | 0-1 | CH | 76.4 | 16.6 | 32° | 19 | Infield | 0.270 | 0.271 | 0.243 | Nick Martinez |
| 2026-09-22 | Strikeout swinging | 2-2 | FF | 93.3 | — | — | — | — | — | — | 0.000 | Nick Martinez |
| 2026-09-20 | Out fly ball | 3-2 | SL | 89.0 | 74.0 | 51° | 218 | RF | 0.126 | 0.157 | 0.126 | Taylor Clarke |
| 2026-09-20 | Strikeout swinging | 2-2 | SL | 88.8 | — | — | — | — | — | — | 0.000 | Ryne Nelson |
| 2026-09-20 | Out line drive | 0-1 | SL | 85.7 | 97.0 | 23° | 360 | LF gap | 0.266 | 0.565 | 0.349 | Corbin Burnes |
| 2026-09-19 | Walk | 3-2 | ST | 89.4 | — | — | — | — | — | — | 0.698 | Brandyn Garcia |
| 2026-09-19 | Single ground ball | 1-0 | CU | 83.3 | 98.2 | 6° | 114 | LF | 0.600 | 0.714 | 0.578 | Brandon Pfaadt |
| 2026-09-15 | Strikeout looking | 2-2 | ST | 74.9 | — | — | — | — | — | — | 0.000 | Bailey Ober |
| 2026-09-15 | Out popup | 0-2 | ST | 76.3 | 76.8 | 57° | 177 | LF gap | 0.051 | 0.080 | 0.058 | Bailey Ober |
| 2026-09-15 | Out fly ball | 2-2 | ST | 75.8 | 79.3 | 47° | 239 | RF gap | 0.043 | 0.060 | 0.045 | Bailey Ober |
| 2026-09-14 | Out popup | 1-0 | SL | 88.6 | 84.1 | 65° | 158 | LF corner | 0.003 | 0.003 | 0.003 | Tommy Nance |
| 2026-09-14 | Home Run line drive | 0-1 | CU | 77.6 | 103.7 | 21° | 372 | LF | 0.657 | 1.624 | 0.954 | Dean Kremer |
| 2026-09-13 | Strikeout swinging | 1-2 | FF | 94.7 | — | — | — | — | — | — | 0.000 | Austin Warren |
| 2026-09-13 | Strikeout looking | 3-2 | FF | 98.0 | — | — | — | — | — | — | 0.000 | Christian Scott |
| 2026-09-13 | Walk | 3-2 | FF | 95.9 | — | — | — | — | — | — | 0.699 | Christian Scott |
| 2026-09-09 | Out fly ball | 2-2 | ST | 85.5 | 77.0 | 48° | 220 | RF gap | 0.071 | 0.106 | 0.076 | Juan Mejia |
| 2026-09-09 | Out line drive | 1-1 | FF | 94.2 | 105.7 | 14° | 323 | CF | 0.709 | 1.043 | 0.740 | Tomoyuki Sugano |
| 2026-09-05 | Force Out ground ball | 0-0 | CH | 91.2 | 86.5 | -23° | 7 | Infield | 0.085 | 0.089 | 0.082 | Griffin Canning |
| 2026-09-02 | Strikeout swinging | 2-2 | FF | 94.8 | — | — | — | — | — | — | 0.000 | Reid Detmers |
| 2026-09-02 | Strikeout swinging | 0-2 | SL | 85.8 | — | — | — | — | — | — | 0.000 | Reid Detmers |
| 2026-09-02 | Out ground ball | 3-2 | FF | 94.2 | 85.7 | -2° | 34 | Infield | 0.198 | 0.216 | 0.178 | Reid Detmers |
| 2026-09-01 | Strikeout looking | 0-2 | SL | 82.1 | — | — | — | — | — | — | 0.000 | Sammy Peralta |
| 2026-09-01 | Strikeout swinging | 2-2 | FF | 96.9 | — | — | — | — | — | — | 0.000 | Samy Natera Jr. |
| 2026-09-01 | Out ground ball | 0-0 | CH | 82.8 | 68.2 | 9° | 84 | Infield | 0.201 | 0.226 | 0.181 | Grayson Rodriguez |
| 2026-09-01 | Strikeout looking | 1-2 | FF | 96.3 | — | — | — | — | — | — | 0.000 | Grayson Rodriguez |
| 2026-09-01 | Out fly ball | 3-2 | SL | 87.6 | 85.0 | 41° | 289 | LF gap | 0.017 | 0.040 | 0.025 | Grayson Rodriguez |
| 2026-08-31 | Out popup | 1-1 | SL | 87.6 | 77.8 | 64° | 143 | Infield | 0.006 | 0.006 | 0.005 | Tayler Saucedo |
| 2026-08-31 | Strikeout swinging | 1-2 | ST | 89.8 | — | — | — | — | — | — | 0.000 | Walbert Ureña |
| 2026-08-31 | Strikeout swinging | 1-2 | ST | 91.8 | — | — | — | — | — | — | 0.000 | Walbert Ureña |
| 2026-08-30 | Home Run fly ball | 2-1 | SL | 49.0 | 104.8 | 31° | 402 | LF | 0.814 | 3.237 | 1.660 | — |
| 2026-08-30 | Out fly ball | 3-2 | CH | 84.1 | 72.5 | 39° | 238 | LF | 0.283 | 0.321 | 0.258 | Jovani Morán |
| 2026-08-30 | Single line drive | 3-2 | FF | 90.6 | 75.7 | 16° | 131 | CF | 0.777 | 0.842 | 0.717 | Ranger Suarez |
| 2026-08-30 | Single ground ball | 1-1 | CU | 75.1 | 99.3 | 8° | 138 | Infield | 0.623 | 0.706 | 0.580 | Ranger Suarez |
| 2026-08-30 | Out fly ball | 3-2 | CU | 76.9 | 77.7 | 45° | 225 | RF | 0.077 | 0.107 | 0.083 | Ranger Suarez |
| 2026-08-29 | Strikeout swinging | 0-2 | ST | 80.0 | — | — | — | — | — | — | 0.000 | Raymond Burgos |
| 2026-08-29 | Out popup | 0-0 | CH | 83.1 | 66.3 | 64° | 117 | Infield | 0.003 | 0.003 | 0.003 | Jake Bennett |
| 2026-08-29 | Out ground ball | 0-2 | ST | 86.3 | 84.7 | -13° | 6 | Infield | 0.088 | 0.098 | 0.079 | Brayan Bello |
| 2026-08-29 | Single ground ball | 0-2 | ST | 87.0 | 76.1 | 5° | 77 | RF gap | 0.255 | 0.270 | 0.237 | Brayan Bello |
| 2026-08-29 | Single line drive | 2-2 | CH | 84.2 | 75.5 | 20° | 192 | LF | 0.994 | 1.038 | 0.896 | Jake Bennett |
| 2026-08-28 | Out ground ball | 0-2 | FF | 95.0 | 81.7 | -42° | 3 | RF corner | 0.092 | 0.093 | 0.083 | Patrick Sandoval |
| 2026-08-28 | Out popup | 0-1 | CH | 82.2 | 63.4 | 48° | 177 | RF | 0.137 | 0.161 | 0.125 | Patrick Sandoval |
| 2026-08-27 | Single line drive | 1-0 | FF | 96.5 | 103.4 | 11° | 188 | CF | 0.940 | 1.160 | 0.911 | AJ Blubaugh |
| 2026-08-26 | Strikeout swinging | 2-2 | SL | 86.9 | — | — | — | — | — | — | 0.000 | Enyel De Los Santos |
| 2026-08-26 | Out popup | 1-2 | ST | 83.7 | 57.2 | 43° | 166 | RF gap | 0.140 | 0.155 | 0.127 | Kai-Wei Teng |
| 2026-08-26 | Single line drive | 1-1 | FF | 94.6 | 80.5 | 21° | 231 | RF | 0.803 | 0.872 | 0.723 | Peter Lambert |
| 2026-08-26 | Out popup | 1-1 | ST | 83.1 | 29.0 | 30° | 52 | Infield | 0.264 | 0.265 | 0.238 | Peter Lambert |
| 2026-08-25 | Single ground ball | 0-2 | SL | 87.9 | 84.4 | -8° | 9 | Infield | 0.121 | 0.150 | 0.109 | Bryan Abreu |
| 2026-08-25 | Strikeout swinging | 0-2 | SL | 79.0 | — | — | — | — | — | — | 0.000 | Steven Okert |
| 2026-08-23 | Out fly ball | 0-0 | SL | 88.6 | 75.2 | 43° | 253 | LF gap | 0.166 | 0.216 | 0.165 | Braydon Fisher |
| 2026-08-23 | Strikeout looking | 3-2 | FF | 97.9 | — | — | — | — | — | — | 0.000 | José Soriano |
| 2026-08-22 | Out ground ball | 3-1 | SL | 94.0 | 79.5 | -10° | 9 | Infield | 0.085 | 0.103 | 0.084 | Louis Varland |
| 2026-08-22 | Double Play line drive | 0-2 | SL | 88.0 | 97.7 | 9° | 179 | Infield | 0.640 | 0.703 | 0.590 | Dylan Cease |
| 2026-08-22 | Strikeout swinging | 2-2 | SL | 87.2 | — | — | — | — | — | — | 0.000 | Dylan Cease |
| 2026-08-21 | Strikeout looking | 3-2 | SL | 86.8 | — | — | — | — | — | — | 0.000 | Braydon Fisher |
| 2026-08-20 | Out ground ball | 3-2 | FF | 95.2 | 93.7 | -14° | 9 | Infield | 0.143 | 0.158 | 0.129 | Albert Suárez |
| 2026-08-20 | Strikeout swinging | 1-2 | FF | 95.7 | — | — | — | — | — | — | 0.000 | Grant Wolfram |
| 2026-08-20 | Out fly ball | 0-1 | CU | 82.1 | 76.9 | 34° | 287 | LF gap | 0.123 | 0.169 | 0.123 | Kyle Bradish |
| 2026-08-19 | Hit By Pitch | 0-0 | FF | 96.3 | — | — | — | — | — | — | 0.729 | Cam Sanders |
| 2026-08-18 | Strikeout looking | 1-2 | FF | 94.9 | — | — | — | — | — | — | 0.000 | Albert Suárez |
| 2026-08-16 | Sac Bunt ground ball | 1-0 | SL | 86.0 | 18.5 | 8° | 13 | Infield | — | — | — | Braydon Fisher |
| 2026-08-16 | Single line drive | 2-1 | SL | 88.9 | 99.7 | 9° | 148 | LF | 0.714 | 0.822 | 0.676 | Brendon Little |
| 2026-08-16 | Strikeout swinging | 3-2 | FF | 97.3 | — | — | — | — | — | — | 0.000 | Dylan Cease |
| 2026-08-16 | Walk | 3-0 | FF | 95.4 | — | — | — | — | — | — | 0.698 | Dylan Cease |
| 2026-08-13 | Out popup | 2-0 | FF | 98.1 | 56.5 | 32° | 173 | LF gap | 0.303 | 0.337 | 0.273 | Logan Gilbert |