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.
Miguel Rojas RHB LAN vs Robert Gasser LHP MIL P
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 LHP
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 LHP · 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 | Miguel Rojas: BA | Miguel Rojas: HR% | Miguel Rojas: Hard-Hit% | Miguel Rojas: Exit Velo | Miguel Rojas: xwOBA/con |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| FF | 26% | 92.9 | 14.4" | 7.5" | 2232 | 2.3% | 29% | 0.402 | 0.319 | 3.2% | 33% | 90.9 | 0.287 |
| ST | 24% | 80.4 | 4.5" | -14.9" | 2457 | 6.4% | 26% | 0.332 | 0.273 | 0.0% | 11% | 80.6 | 0.200 |
| SI | 19% | 92.6 | 6.9" | 15.3" | 2105 | 3.8% | 58% | 0.436 | 0.288 | 5.8% | 46% | 92.7 | 0.335 |
| FC | 16% | 88.6 | 6.6" | -2.2" | 2413 | 6.8% | 27% | 0.362 | 0.450 | 0.0% | 35% | 86.8 | 0.323 |
| CH | 14% | 88.3 | 0.6" | 17.0" | 1971 | 4.3% | 38% | 0.431 | 0.214 | 0.0% | 26% | 80.5 | 0.310 |
| SL | 0% | 84.6 | 0.8" | -6.5" | 2576 | 0.240 | 12.0% | 33% | 85.2 | 0.465 |
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 | Miguel Rojas: BA | Miguel Rojas: HR% | Miguel Rojas: Hard-Hit% | Miguel Rojas: xwOBA/con |
|---|---|---|---|---|---|---|---|---|---|
| FF/SI/FC | 25% | 92.9 | 14.3" | 7.6" | 0.402 | 0.333 | 5.3% | 24% | 0.278 |
| EP/FA/SL | 25% | 92.9 | 14.3" | 7.6" | 0.402 | 0.333 | 5.3% | 24% | 0.278 |
| ST/SL/CU | 20% | 80.3 | 4.4" | -15.9" | 0.299 | 0.182 | 0.0% | ||
| CU/KC/ST | 20% | 80.3 | 4.4" | -15.9" | 0.299 | 0.385 | 7.7% | 62% | 0.442 |
| SI/FF/CH | 18% | 92.6 | 6.9" | 15.3" | 0.447 | 0.286 | 4.1% | 47% | 0.347 |
| CH/FS/FO | 18% | 92.6 | 6.9" | 15.3" | 0.447 | 0.227 | 0.0% | 39% | 0.341 |
| FC/SL/FF | 17% | 88.6 | 6.8" | -2.2" | 0.371 | 0.484 | 6.5% | 44% | 0.467 |
| CH/SI/FS | 15% | 88.4 | 0.8" | 16.9" | 0.432 | 0.152 | 0.0% | 28% | 0.273 |
| SL/ST/CU | 5% | 80.9 | 4.5" | -10.9" | 0.392 | 0.174 | 4.3% | 29% | 0.339 |
| FF/SI/FC | 1% | 94.1 | 15.3" | 7.2" | 0.333 | 3.3% | 38% | 0.282 |
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.
64 PA · 30 games · 2026-08-16 to 2026-10-14| Date | Result | Count | Pitch | Velo | Exit Velo | Angle | Dist | Location | xBA | xSLG | xwOBA | Pitcher |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026-10-14 | Walk | 3-1 | SI | 92.7 | — | — | — | — | — | — | 0.698 | Robert Gasser |
| 2026-10-14 | Single ground ball | 0-1 | FF | 92.1 | 105.6 | -2° | 36 | LF gap | 0.460 | 0.503 | 0.431 | Robert Gasser |
| 2026-10-12 | Strikeout swinging | 2-2 | CH | 93.0 | — | — | — | — | — | — | 0.000 | Aaron Ashby |
| 2026-10-06 | Out ground ball | 2-2 | FF | 97.1 | 97.7 | -3° | 27 | Infield | 0.292 | 0.332 | 0.271 | Chris Sale |
| 2026-10-06 | Out line drive | 0-0 | FF | 97.5 | 91.4 | 20° | 293 | RF | 0.337 | 0.421 | 0.306 | Chris Sale |
| 2026-10-06 | Strikeout swinging | 2-2 | SL | 80.3 | — | — | — | — | — | — | 0.000 | Chris Sale |
| 2026-09-27 | Strikeout swinging | 1-2 | SL | 89.2 | — | — | — | — | — | — | 0.000 | Camilo Doval |
| 2026-09-27 | Out ground ball | 1-2 | SL | 87.8 | 97.7 | -14° | 10 | Infield | 0.179 | 0.190 | 0.161 | Jason Foley |
| 2026-09-27 | Walk | 3-2 | ST | 81.3 | — | — | — | — | — | — | 0.698 | Braxton Roxby |
| 2026-09-26 | Out line drive | 2-0 | SI | 95.8 | 100.3 | 19° | 342 | LF gap | 0.351 | 0.673 | 0.428 | Jason Foley |
| 2026-09-26 | Out fly ball | 0-0 | ST | 85.1 | 86.8 | 42° | 288 | RF | 0.003 | 0.005 | 0.003 | Tristan Beck |
| 2026-09-26 | Single ground ball | 1-1 | SI | 92.2 | 96.6 | 6° | 132 | CF | 0.649 | 0.734 | 0.614 | Duncan Davitt |
| 2026-09-26 | Walk | 3-0 | CH | 90.7 | — | — | — | — | — | — | 0.698 | Matt Wilkinson |
| 2026-09-24 | Out fly ball | 0-0 | SI | 100.0 | 95.1 | 38° | 320 | LF gap | 0.066 | 0.234 | 0.118 | Adrian Morejon |
| 2026-09-23 | Out line drive | 0-0 | SI | 100.7 | 84.2 | 24° | 279 | RF | 0.263 | 0.328 | 0.246 | Adrian Morejon |
| 2026-09-20 | Out ground ball | 0-0 | FF | 94.7 | 92.9 | -24° | 7 | LF gap | 0.075 | 0.084 | 0.068 | Sam Hentges |
| 2026-09-20 | Strikeout swinging | 3-2 | CH | 82.9 | — | — | — | — | — | — | 0.000 | Matt Wilkinson |
| 2026-09-20 | Double ground ball | 3-2 | FF | 91.4 | 105.6 | 3° | 87 | LF | 0.549 | 0.605 | 0.508 | Matt Wilkinson |
| 2026-09-19 | Out line drive | 1-0 | FF | 93.6 | 72.0 | 14° | 166 | Infield | 0.409 | 0.422 | 0.368 | Duncan Davitt |
| 2026-09-19 | Single ground ball | 0-0 | FF | 90.6 | 104.3 | 5° | 114 | LF | 0.583 | 0.664 | 0.543 | Philip Abner |
| 2026-09-18 | Out ground ball | 1-1 | CH | 87.1 | 101.3 | -10° | 12 | Infield | 0.219 | 0.246 | 0.205 | Cesar Perdomo |
| 2026-09-18 | Out fly ball | 0-0 | FF | 93.5 | 90.8 | 55° | 227 | LF | 0.009 | 0.010 | 0.008 | Cesar Perdomo |
| 2026-09-17 | Home Run fly ball | 1-0 | SI | 94.5 | 102.9 | 29° | 401 | LF gap | 0.774 | 2.943 | 1.531 | Brandon Williamson |
| 2026-09-17 | Out ground ball | 0-1 | SI | 96.7 | 105.7 | -28° | 5 | Infield | 0.105 | 0.114 | 0.094 | Luis Mey |
| 2026-09-17 | Out ground ball | 1-2 | SI | 90.1 | 98.2 | 0° | 50 | Infield | 0.391 | 0.425 | 0.353 | Brady Singer |
| 2026-09-17 | Single line drive | 1-2 | SL | 82.5 | 76.2 | 17° | 204 | RF | 0.934 | 0.984 | 0.847 | Brady Singer |
| 2026-09-16 | Walk | 3-2 | FF | 92.3 | — | — | — | — | — | — | 0.699 | Andrew Abbott |
| 2026-09-16 | Out line drive | 2-2 | FF | 93.3 | 94.3 | 22° | 343 | RF gap | 0.180 | 0.334 | 0.215 | Andrew Abbott |
| 2026-09-14 | Out fly ball | 2-1 | SI | 93.5 | 88.4 | 28° | 303 | RF corner | 0.063 | 0.128 | 0.076 | Nick Lodolo |
| 2026-09-14 | Out ground ball | 0-0 | CH | 88.0 | 66.9 | -10° | 12 | Infield | 0.062 | 0.062 | 0.059 | Nick Lodolo |
| 2026-09-14 | Out ground ball | 0-0 | SI | 93.5 | 105.3 | 5° | 108 | Infield | 0.637 | 0.727 | 0.600 | Nick Lodolo |
| 2026-09-13 | Out fly ball | 1-1 | FF | 98.4 | 79.4 | 32° | 268 | RF | 0.049 | 0.075 | 0.044 | Josh Ekness |
| 2026-09-13 | Strikeout swinging | 0-2 | ST | 82.3 | — | — | — | — | — | — | 0.000 | Eury Pérez |
| 2026-09-13 | Single line drive | 3-2 | SI | 97.7 | 73.8 | 14° | 166 | CF | 0.451 | 0.461 | 0.406 | Eury Pérez |
| 2026-09-11 | Out ground ball | 1-2 | SL | 88.7 | 65.9 | 9° | 98 | Infield | 0.171 | 0.200 | 0.154 | Dax Fulton |
| 2026-09-09 | Single ground ball | 1-0 | SL | 85.0 | 90.6 | 0° | 45 | Infield | 0.250 | 0.287 | 0.230 | Tony Santillan |
| 2026-09-08 | Double line drive | 2-2 | FF | 93.5 | 98.9 | 23° | 362 | LF | 0.357 | 0.813 | 0.487 | Nick Lodolo |
| 2026-09-08 | Out fly ball | 0-1 | FF | 94.8 | 86.6 | 58° | 199 | CF | 0.011 | 0.012 | 0.010 | Nick Lodolo |
| 2026-09-07 | Grounded Into DP ground ball | 0-1 | FC | 86.9 | 83.3 | -35° | 4 | Infield | 0.034 | 0.037 | 0.031 | Brandon Williamson |
| 2026-09-07 | Reached On Error ground ball | 0-0 | FC | 91.5 | 85.4 | -57° | 1 | Infield | 0.245 | 0.245 | 0.220 | Brandon Williamson |
| 2026-09-06 | Out fly ball | 0-1 | SL | 84.6 | 83.0 | 53° | 214 | LF gap | 0.014 | 0.018 | 0.013 | Andrew Alvarez |
| 2026-09-06 | Strikeout looking | 0-2 | CH | 87.4 | — | — | — | — | — | — | 0.000 | Andrew Alvarez |
| 2026-09-04 | Out line drive | 1-1 | SI | 92.5 | 93.7 | 18° | 329 | LF gap | 0.509 | 0.642 | 0.482 | Jackson Kent |
| 2026-09-04 | Out ground ball | 0-1 | FF | 94.5 | 88.6 | -7° | 24 | Infield | 0.129 | 0.146 | 0.116 | Jackson Kent |
| 2026-09-03 | Out line drive | 1-2 | SL | 85.1 | 73.1 | 11° | 122 | Infield | 0.300 | 0.308 | 0.270 | Quinn Mathews |
| 2026-09-03 | Out popup | 3-1 | FF | 92.8 | 85.1 | 73° | 93 | Infield | 0.006 | 0.007 | 0.006 | Quinn Mathews |
| 2026-09-02 | Out ground ball | 0-0 | SL | 87.1 | 59.1 | -52° | 1 | Infield | 0.216 | 0.216 | 0.194 | Gordon Graceffo |
| 2026-09-02 | Strikeout swinging | 2-2 | SL | 90.3 | — | — | — | — | — | — | 0.000 | Ryan Fernandez |
| 2026-09-02 | Double fly ball | 0-1 | FF | 95.3 | 78.1 | 57° | 198 | RF corner | 0.046 | 0.074 | 0.053 | Brycen Mautz |
| 2026-08-30 | Out ground ball | 2-2 | SI | 95.1 | 98.0 | -20° | 5 | Infield | 0.110 | 0.124 | 0.099 | Framber Valdez |
| 2026-08-30 | Sac Fly fly ball | 0-1 | SI | 94.7 | 93.1 | 41° | 329 | RF | — | — | 0.022 | Framber Valdez |
| 2026-08-29 | Out fly ball | 3-2 | SI | 91.5 | 86.8 | 52° | 242 | RF corner | 0.003 | 0.003 | 0.003 | Andrew Sears |
| 2026-08-28 | Single line drive | 0-0 | SI | 95.7 | 100.6 | 5° | 108 | CF | 0.637 | 0.713 | 0.593 | Drew Sommers |
| 2026-08-27 | Force Out ground ball | 1-2 | SL | 81.8 | 67.3 | -23° | 6 | Infield | 0.043 | 0.043 | 0.039 | Chris Sale |
| 2026-08-27 | Single fly ball | 2-1 | CH | 87.8 | 69.1 | 27° | 223 | RF | 0.983 | 1.014 | 0.885 | Chris Sale |
| 2026-08-27 | Out line drive | 1-0 | FF | 98.0 | 90.7 | 25° | 336 | CF | 0.134 | 0.257 | 0.165 | Chris Sale |
| 2026-08-27 | Out popup | 0-1 | FF | 96.5 | 67.2 | 58° | 138 | Infield | 0.014 | 0.019 | 0.016 | Chris Sale |
| 2026-08-25 | Out fly ball | 0-1 | FC | 86.4 | 78.1 | 31° | 270 | RF gap | 0.120 | 0.175 | 0.125 | Dylan Dodd |
| 2026-08-19 | Out line drive | 0-1 | SL | 84.4 | 74.0 | 26° | 255 | LF gap | 0.860 | 0.985 | 0.825 | Jimmy Herget |
| 2026-08-19 | Out fly ball | 1-1 | FF | 98.0 | 85.5 | 41° | 290 | RF gap | 0.009 | 0.011 | 0.008 | Jaden Hill |
| 2026-08-19 | Strikeout swinging | 1-2 | SL | 85.5 | — | — | — | — | — | — | 0.000 | Mark Manfredi |
| 2026-08-19 | Out ground ball | 0-1 | FC | 87.0 | 100.2 | 1° | 58 | Infield | 0.483 | 0.524 | 0.446 | Kyle Freeland |
| 2026-08-19 | Strikeout swinging | 3-2 | FC | 88.2 | — | — | — | — | — | — | 0.000 | Kyle Freeland |
| 2026-08-16 | Out fly ball | 0-0 | SI | 96.8 | 91.4 | 38° | 311 | RF | 0.026 | 0.056 | 0.036 | DL Hall |