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.
Ryan McMahon LHB NYA
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.
vs RHP
vs LHP
Every pitch type this batter has faced from that hand, ordered by how often he sees it.
The bar is his performance against it; the dotted line is his own average from that hand. Past the line he handles it better than most (red), short of it the pitcher has the edge (blue).
Pitches with fewer than 10 balls in play are left out.
vs RHP · ordered by volume · 6 too thin to showNo tracked contact for this batter yet
| Hand | Pitch | Pitches | BA | HR% | Hard-Hit% | LD% | FB% | GB% | Exit Velo | xBA | xwOBA/con |
|---|---|---|---|---|---|---|---|---|---|---|---|
| LHP | FF | 255 | 0.217 | 4.3% | 48% | 18% | 39% | 36% | 86.8 | 0.321 | 0.423 |
| LHP | SI | 176 | 0.304 | 0.0% | 48% | 28% | 18% | 55% | 88.2 | 0.377 | 0.387 |
| LHP | SL | 155 | 0.132 | 0.0% | 50% | 25% | 10% | 60% | 86.6 | 0.421 | 0.420 |
| LHP | ST | 86 | 0.050 | 0.0% | 22% | 11% | 56% | 22% | 82.8 | 0.165 | 0.174 |
| LHP | CU | 41 | 0.111 | 0.0% | |||||||
| LHP | FC | 35 | |||||||||
| LHP | CH | 22 | |||||||||
| LHP | SV | 8 | |||||||||
| LHP | KC | 7 | |||||||||
| RHP | FF | 1191 | 0.276 | 5.1% | 52% | 29% | 35% | 30% | 93.8 | 0.381 | 0.475 |
| RHP | SL | 365 | 0.177 | 5.1% | 53% | 30% | 33% | 35% | 92.8 | 0.342 | 0.404 |
| RHP | CH | 354 | 0.207 | 4.6% | 36% | 21% | 28% | 51% | 88.9 | 0.339 | 0.403 |
| RHP | SI | 304 | 0.169 | 5.1% | 62% | 14% | 24% | 60% | 93.3 | 0.317 | 0.372 |
| RHP | FC | 297 | 0.279 | 1.6% | 41% | 24% | 27% | 41% | 86.6 | 0.329 | 0.356 |
| RHP | CU | 261 | 0.174 | 5.8% | 56% | 21% | 38% | 41% | 96.3 | 0.375 | 0.482 |
| RHP | ST | 162 | 0.133 | 0.0% | 60% | 13% | 27% | 60% | 91.1 | 0.376 | 0.412 |
| RHP | FS | 155 | 0.182 | 2.3% | 40% | 17% | 34% | 49% | 87.2 | 0.234 | 0.274 |
| RHP | KC | 69 | 0.214 | 7.1% | |||||||
| RHP | FO | 14 | |||||||||
| RHP | SV | 12 | |||||||||
| RHP | EP | 6 | |||||||||
| RHP | FA | 4 | |||||||||
| RHP | PO | 3 |
Showing every pitcher. Today’s probable opponent starter:
Nick MartinezOr add any other pitcher to overlay their actual arsenal on top of the above:
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.
92 PA · 30 games · 2026-08-08 to 2026-10-05| Date | Result | Count | Pitch | Velo | Exit Velo | Angle | Dist | Location | xBA | xSLG | xwOBA | Pitcher |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026-10-05 | Walk | 3-2 | FF | 98.0 | — | — | — | — | — | — | 0.698 | Freddy Peralta |
| 2026-10-05 | Out popup | 2-2 | FF | 98.2 | 72.8 | 73° | 112 | LF corner | 0.001 | 0.001 | 0.000 | Freddy Peralta |
| 2026-10-03 | Out ground ball | 0-1 | FC | 91.0 | 29.4 | -3° | 16 | Infield | 0.227 | 0.227 | 0.204 | Drew Rasmussen |
| 2026-10-03 | Out ground ball | 3-2 | SI | 94.0 | 88.6 | 6° | 109 | LF gap | 0.449 | 0.504 | 0.414 | Drew Rasmussen |
| 2026-09-30 | Out ground ball | 1-2 | CH | 85.4 | 43.8 | -62° | 1 | Infield | 0.213 | 0.213 | 0.192 | Garrett Whitlock |
| 2026-09-30 | Strikeout swinging | 1-2 | ST | 85.0 | — | — | — | — | — | — | 0.000 | Sonny Gray |
| 2026-09-30 | Single ground ball | 0-0 | CU | 79.6 | 70.1 | -2° | 29 | Infield | 0.086 | 0.097 | 0.087 | Sonny Gray |
| 2026-09-29 | Walk | 3-0 | FF | 96.6 | — | — | — | — | — | — | 0.698 | Wyatt Olds |
| 2026-09-29 | Out fly ball | 1-2 | FF | 95.5 | 94.2 | 59° | 207 | LF gap | 0.020 | 0.031 | 0.022 | Greg Weissert |
| 2026-09-25 | Strikeout swinging | 3-2 | FF | 97.4 | — | — | — | — | — | — | 0.000 | Cam Sanders |
| 2026-09-25 | Single line drive | 3-1 | FF | 97.3 | 108.7 | 14° | 232 | RF gap | 0.743 | 1.194 | 0.834 | Anthony Nunez |
| 2026-09-25 | Double line drive | 3-2 | FF | 96.3 | 106.6 | 14° | 317 | CF | 0.697 | 1.065 | 0.748 | Brandon Young |
| 2026-09-25 | Strikeout swinging | 2-2 | SL | 85.3 | — | — | — | — | — | — | 0.000 | Brandon Young |
| 2026-09-23 | Out line drive | 2-0 | SI | 95.4 | 66.5 | 19° | 168 | RF gap | 0.589 | 0.609 | 0.530 | Steven Matz |
| 2026-09-23 | Strikeout swinging | 3-2 | CH | 86.6 | — | — | — | — | — | — | 0.000 | Casey Legumina |
| 2026-09-23 | Home Run fly ball | 3-2 | FF | 92.1 | 109.1 | 40° | 332 | RF | 0.654 | 2.617 | 1.351 | Mason Englert |
| 2026-09-23 | Single ground ball | 0-2 | CH | 86.2 | 79.0 | 2° | 48 | CF | 0.171 | 0.196 | 0.154 | Mason Englert |
| 2026-09-22 | Strikeout looking | 2-2 | FF | 95.1 | — | — | — | — | — | — | 0.000 | Drew Rasmussen |
| 2026-09-22 | Out fly ball | 1-0 | FC | 89.5 | 69.0 | 51° | 191 | RF gap | 0.131 | 0.168 | 0.126 | Drew Rasmussen |
| 2026-09-19 | Force Out ground ball | 0-0 | SI | 92.6 | 35.2 | -69° | 1 | LF corner | 0.224 | 0.224 | 0.202 | Brandon Pfaadt |
| 2026-09-19 | Walk | 3-0 | FF | 93.7 | — | — | — | — | — | — | 0.698 | Brandon Pfaadt |
| 2026-09-18 | Strikeout swinging | 3-2 | KC | 81.5 | — | — | — | — | — | — | 0.000 | Zac Gallen |
| 2026-09-18 | Reached On Error ground ball | 1-2 | FF | 93.5 | 93.1 | -3° | 36 | RF corner | 0.240 | 0.280 | 0.228 | Zac Gallen |
| 2026-09-16 | Strikeout swinging | 1-2 | CU | 86.0 | — | — | — | — | — | — | 0.000 | Tommy Nance |
| 2026-09-16 | Out ground ball | 1-0 | SL | 87.6 | 97.9 | -2° | 38 | Infield | 0.349 | 0.405 | 0.318 | Travis Adams |
| 2026-09-16 | Strikeout swinging | 0-2 | ST | 85.0 | — | — | — | — | — | — | 0.000 | Yoendrys Gómez |
| 2026-09-16 | Strikeout swinging | 2-2 | SL | 85.3 | — | — | — | — | — | — | 0.000 | Jeff Hoffman |
| 2026-09-16 | Strikeout swinging | 2-2 | SL | 87.8 | — | — | — | — | — | — | 0.000 | Zebby Matthews |
| 2026-09-16 | Out popup | 1-1 | FC | 91.0 | 99.0 | 72° | 45 | RF corner | 0.006 | 0.007 | 0.005 | Zebby Matthews |
| 2026-09-14 | Single ground ball | 1-1 | FF | 97.2 | 46.2 | -41° | 2 | Infield | 0.224 | 0.224 | 0.207 | Andrew Morris |
| 2026-09-14 | Out ground ball | 2-2 | FF | 91.6 | 80.3 | 4° | 68 | Infield | 0.224 | 0.238 | 0.211 | Dean Kremer |
| 2026-09-14 | Out popup | 3-2 | FF | 91.7 | 81.9 | 70° | 125 | LF corner | 0.003 | 0.003 | 0.003 | Dean Kremer |
| 2026-09-13 | Out fly ball | 0-0 | FF | 91.8 | 87.3 | 31° | 317 | CF | 0.017 | 0.033 | 0.016 | Nate Lavender |
| 2026-09-13 | Out fly ball | 1-0 | FF | 95.6 | 89.0 | 50° | 258 | CF | 0.009 | 0.013 | 0.010 | Christian Scott |
| 2026-09-13 | Out line drive | 3-2 | FF | 97.6 | 85.3 | 27° | 302 | LF gap | 0.077 | 0.102 | 0.069 | Christian Scott |
| 2026-09-11 | Single fly ball | 1-2 | SI | 95.9 | 71.6 | 37° | 223 | LF | 0.460 | 0.516 | 0.429 | Jack Weisenburger |
| 2026-09-11 | Out ground ball | 1-2 | FC | 88.8 | 87.2 | 5° | 82 | Infield | 0.423 | 0.496 | 0.409 | Jack Weisenburger |
| 2026-09-11 | Out ground ball | 1-1 | CH | 87.6 | 81.9 | 8° | 98 | Infield | 0.420 | 0.486 | 0.407 | Nolan McLean |
| 2026-09-11 | Out line drive | 2-0 | SI | 95.4 | 85.2 | 24° | 306 | CF | 0.220 | 0.293 | 0.207 | Nolan McLean |
| 2026-09-10 | Walk | 3-2 | FF | 94.8 | — | — | — | — | — | — | 0.699 | Zach Agnos |
| 2026-09-10 | Out fly ball | 2-2 | SL | 85.0 | 99.9 | 40° | 336 | LF | 0.154 | 0.572 | 0.303 | Zach Agnos |
| 2026-09-10 | Out popup | 1-2 | FF | 93.4 | 80.4 | 68° | 157 | LF corner | 0.001 | 0.001 | 0.000 | Ryan Feltner |
| 2026-09-10 | Single line drive | 1-0 | FF | 94.0 | 106.9 | 17° | 284 | RF | 0.551 | 1.075 | 0.684 | Ryan Feltner |
| 2026-09-09 | Out ground ball | 3-2 | FF | 97.2 | 93.0 | -5° | 21 | Infield | 0.242 | 0.286 | 0.218 | Juan Mejia |
| 2026-09-09 | Strikeout swinging | 2-2 | FF | 93.1 | — | — | — | — | — | — | 0.000 | Tomoyuki Sugano |
| 2026-09-09 | Out ground ball | 1-1 | FS | 86.7 | 78.5 | -15° | 7 | Infield | 0.041 | 0.044 | 0.037 | Tomoyuki Sugano |
| 2026-09-09 | Out fly ball | 2-2 | FS | 88.7 | 86.9 | 45° | 276 | CF | 0.003 | 0.003 | 0.003 | Tomoyuki Sugano |
| 2026-09-08 | Strikeout looking | 0-2 | FF | 96.1 | — | — | — | — | — | — | 0.000 | Jaden Hill |
| 2026-09-08 | Double line drive | 2-2 | FF | 92.8 | 94.0 | 19° | 259 | RF corner | 0.386 | 0.519 | 0.369 | Gabriel Hughes |
| 2026-09-08 | Grounded Into DP ground ball | 1-0 | FF | 91.0 | 77.4 | -1° | 37 | Infield | 0.065 | 0.068 | 0.058 | Gabriel Hughes |
| 2026-09-06 | Strikeout looking | 1-2 | SL | 88.5 | — | — | — | — | — | — | 0.000 | Mason Miller |
| 2026-09-06 | Strikeout looking | 0-2 | CH | 89.1 | — | — | — | — | — | — | 0.000 | Bradgley Rodriguez |
| 2026-09-06 | Out ground ball | 3-1 | ST | 82.0 | 100.1 | 2° | 56 | Infield | 0.469 | 0.524 | 0.432 | Michael King |
| 2026-09-06 | Out ground ball | 1-0 | CH | 87.5 | 76.2 | 0° | 33 | Infield | 0.091 | 0.097 | 0.082 | Michael King |
| 2026-09-05 | Out ground ball | 0-2 | CH | 86.9 | 86.0 | -7° | 15 | Infield | 0.080 | 0.091 | 0.072 | Jhony Brito |
| 2026-09-05 | Single line drive | 0-2 | SI | 96.1 | 80.3 | 19° | 224 | LF gap | 0.983 | 1.078 | 0.901 | Wandy Peralta |
| 2026-09-04 | Out ground ball | 0-0 | FF | 93.9 | 101.9 | -4° | 20 | Infield | 0.358 | 0.387 | 0.322 | Walker Buehler |
| 2026-09-04 | Out ground ball | 1-2 | ST | 81.1 | 78.2 | 10° | 105 | RF gap | 0.386 | 0.438 | 0.368 | Walker Buehler |
| 2026-09-04 | Incomplete PA | 0-0 | SI | 95.8 | — | — | — | — | — | — | — | Walker Buehler |
| 2026-09-01 | Walk | 3-1 | FF | 88.9 | — | — | — | — | — | — | 0.698 | Sammy Peralta |
| 2026-09-01 | Single ground ball | 0-1 | FF | 93.6 | 31.8 | -14° | 7 | LF corner | 0.303 | 0.303 | 0.273 | Samy Natera Jr. |
| 2026-09-01 | Walk | 3-2 | CH | 82.5 | — | — | — | — | — | — | 0.698 | Grayson Rodriguez |
| 2026-09-01 | Out fly ball | 0-0 | CH | 83.4 | 94.2 | 62° | 206 | LF gap | 0.006 | 0.007 | 0.005 | Grayson Rodriguez |
| 2026-09-01 | Out fly ball | 0-2 | FF | 96.1 | 100.4 | 39° | 359 | LF gap | 0.183 | 0.722 | 0.373 | Grayson Rodriguez |
| 2026-08-19 | Out ground ball | 2-2 | CU | 86.6 | 47.9 | -74° | 0 | LF corner | 0.166 | 0.166 | 0.149 | Grant Wolfram |
| 2026-08-19 | Strikeout looking | 3-2 | SI | 92.0 | — | — | — | — | — | — | 0.000 | Chris Bassitt |
| 2026-08-19 | Single line drive | 1-1 | CU | 71.5 | 92.8 | 17° | 223 | RF | 0.714 | 0.884 | 0.683 | Chris Bassitt |
| 2026-08-18 | Walk | 3-2 | FF | 96.3 | — | — | — | — | — | — | 0.698 | Shane Baz |
| 2026-08-18 | Strikeout swinging | 1-2 | KC | 87.2 | — | — | — | — | — | — | 0.000 | Shane Baz |
| 2026-08-16 | Strikeout swinging | 0-2 | FF | 95.5 | — | — | — | — | — | — | 0.000 | Dylan Cease |
| 2026-08-16 | Strikeout swinging | 2-2 | CH | 81.1 | — | — | — | — | — | — | 0.000 | Dylan Cease |
| 2026-08-15 | Strikeout swinging | 1-2 | SI | 84.2 | — | — | — | — | — | — | 0.000 | Tyler Rogers |
| 2026-08-15 | Out fly ball | 1-2 | FS | 88.3 | 99.4 | 36° | 352 | LF gap | 0.220 | 0.828 | 0.421 | Simeon Woods Richardson |
| 2026-08-15 | Out line drive | 1-1 | ST | 81.4 | 107.2 | 15° | 292 | RF | 0.623 | 1.025 | 0.688 | Ricky Tiedemann |
| 2026-08-14 | Single ground ball | 0-1 | SI | 82.6 | 106.8 | 4° | 139 | LF gap | 0.623 | 0.727 | 0.606 | Tyler Rogers |
| 2026-08-14 | Strikeout looking | 2-2 | FF | 92.0 | — | — | — | — | — | — | 0.000 | Shane Bieber |
| 2026-08-14 | Out fly ball | 3-1 | FF | 92.3 | 99.5 | 60° | 216 | CF | 0.026 | 0.044 | 0.031 | Shane Bieber |
| 2026-08-13 | Walk | 3-2 | ST | 84.6 | — | — | — | — | — | — | 0.698 | Eduard Bazardo |
| 2026-08-13 | Out fly ball | 2-0 | FF | 96.8 | 88.9 | 42° | 293 | CF | 0.001 | 0.001 | 0.000 | Logan Gilbert |
| 2026-08-13 | Out line drive | 2-2 | SL | 87.1 | 80.8 | 29° | 275 | LF | 0.123 | 0.204 | 0.139 | Logan Gilbert |
| 2026-08-12 | Out ground ball | 0-1 | FF | 97.0 | 62.8 | -8° | 14 | Infield | 0.060 | 0.069 | 0.058 | Seranthony Domínguez |
| 2026-08-12 | Single fly ball | 1-2 | FS | 84.5 | 95.2 | 25° | 335 | RF | 0.203 | 0.463 | 0.274 | Bryce Miller |
| 2026-08-12 | Out fly ball | 0-2 | FS | 84.2 | 72.5 | 52° | 197 | RF gap | 0.151 | 0.197 | 0.153 | Bryce Miller |
| 2026-08-12 | Double line drive | 0-1 | FF | 96.1 | 102.8 | 11° | 175 | RF | 0.940 | 1.160 | 0.911 | Bryce Miller |
| 2026-08-11 | Single ground ball | 2-1 | CU | 83.9 | 92.6 | 6° | 125 | LF gap | 0.503 | 0.577 | 0.477 | Michael Rucker |
| 2026-08-11 | Strikeout swinging | 0-2 | SL | 88.0 | — | — | — | — | — | — | 0.000 | Bryan Woo |
| 2026-08-11 | Out fly ball | 1-2 | ST | 83.8 | 90.5 | 31° | 344 | RF | 0.071 | 0.195 | 0.114 | Bryan Woo |
| 2026-08-09 | Strikeout swinging | 1-2 | FF | 96.7 | — | — | — | — | — | — | 0.000 | Tyler Kinley |
| 2026-08-09 | Strikeout swinging | 2-2 | SL | 84.2 | — | — | — | — | — | — | 0.000 | Didier Fuentes |
| 2026-08-09 | Out ground ball | 3-2 | FC | 92.6 | 94.3 | -27° | 4 | Infield | 0.075 | 0.081 | 0.068 | Grant Holmes |
| 2026-08-09 | Walk | 3-2 | SL | 86.9 | — | — | — | — | — | — | 0.698 | Grant Holmes |
| 2026-08-08 | Strikeout swinging | 2-2 | ST | 82.5 | — | — | — | — | — | — | 0.000 | Danny Young |