CALIBRATE BASEBALLBack to the recordgame prep, generated 2026-09-24 23:39 UTC
Chicago White Sox at Kansas City Royals
2026-09-24, 2:10 PM ET, Kauffman Stadium.
David Sandlin (R) against
Randy Dobnak (R).
Every number derives from the public Statcast store and the engine's published
boards. Charts are code-drawn. Probabilities, not picks. Statcast through 2026-09-23.
What decides tonight
Every number below is a probability this engine published before first pitch and grades that night, or a plain count. No scouting verdicts are ranked here — those live in the panels and carry their own sample sizes.
1Our bats highest board probability Miguel Vargas 71%, lowest Colson Montgomery 56% (15 points of spread across the nine). see the grid
2Their bats highest board probability Carter Jensen 18%. see the grid
Pen posture Us: no flags. Kansas City Royals: no flags. see bullpens
Run environment board total 9.16, P(over 8.5) 52%. Clears its pre-registered floor only; not distinguishable from climatology, and carries a documented −0.29-run level bias.
Air 76°F · 6 mph, across · air 3.8% thinner than a neutral sea-level night. Shown as conditions, not as an edge: this engine's weather layer measured a CRPS change of −0.003 on the runs backtest, which is not distinguishable from zero.
Randy Dobnak (RHP)
1222 pitches, K% 15% overall (311 BF; split withheld, short side only 117 BF)
14 apps · median 22 BF · reaches the order 3.0× (max 3) · exits at 91 pitches (IQR 82–94, 12 starts) · fastball +0.2 mph late (9 deep starts). Fade is measured inside each start on nights that reached 85 pitches, so it is not flattered by the short outings.
League percentiles, starter pool
K%715%
BB%588%
CSW%1825%
Whiff%1118%
Chase%4229%
xwOBA vs29.333
Hard-hit%3740%
GB%8952%
1st-pitch strike%2258%
published K forecast: E[K] 4.3
recent starts, K (n=5)
508/26 TOR
609/01 MIA
309/06 TOR
409/12 BOS
109/18 PIT
Arsenal, shape and results
Pitch
#
vL%
vR%
MPH
IVB
HB
RPM
Whiff
CSW
Chase
2K use
2K zone
xwOBA
RV/100
sinker
476
36%
44%
91.5
+1
-15
1954
6%
23%
19%
22%
56%
.389
-1.5
sweeper
304
18%
35%
82.4
-1
+9
2486
31%
34%
24%
23%
28%
.347
+1.0
changeup
265
28%
11%
84.7
-3
-8
1479
26%
22%
46%
31%
21%
.256
+0.4
4-seam
115
12%
5%
92.3
+9
-12
2036
9%
18%
20%
14%
31%
.255
-0.5
slider
62
6%
4%
83.8
-3
-2
2221
31%
23%
41%
9%
31%
.305
+0.0
RV/100 is run value per 100 pitches from the pitcher's
side, so negative is good (a curveball at −1.3 costs the
pitcher runs even if it misses bats — a real tension worth reading, not a
contradiction). Whiff, chase and xwOBA are computed on this pitcher's own
pitches this season; low-usage pitches carry small samples.
Locations, catcher view
sinkersweeperchangeup
Movement
How to attack
Hunt the sinker early: 48% of his first pitches, only 6% whiffs, 53% in-zone on 0-0.
Vs righties he leans sweeper (35% of pitches to that side).
Two strikes: expect the changeup (31% of 2-strike pitches vs 22% overall).
David Sandlin (RHP)
553 pitches, K% 23% overall (145 BF; split withheld, short side only 58 BF)
7 apps · median 20 BF · reaches the order 3.0× (max 3) · exits at 74 pitches (IQR 70–80, 5 starts) · fastball -2.4 mph late (2 deep starts). Fade is measured inside each start on nights that reached 85 pitches, so it is not flattered by the short outings.
League percentiles, starter pool
K%5423%
BB%459%
CSW%5527%
Whiff%3621%
Chase%4029%
xwOBA vs58.310
Hard-hit%8134%
GB%7547%
1st-pitch strike%3159%
published K forecast: E[K] 4.2
recent starts, K (n=5)
405/27 MIN
406/01 MIN
606/26 KC
509/13 STL
409/18 DET
Arsenal, shape and results
Pitch
#
vL%
vR%
MPH
IVB
HB
RPM
Whiff
CSW
Chase
2K use
2K zone
xwOBA
RV/100
4-seam
176
33%
31%
96.5
+16
-6
2290
14%
27%
24%
30%
40%
.368
+1.1
curveball
129
30%
14%
83.1
-8
+5
2567
22%
33%
39%
21%
48%
.226
-1.4
cutter
109
15%
27%
91.0
+7
+3
2365
29%
28%
19%
12%
·
.414
+0.2
sweeper
52
4%
17%
86.2
+0
+9
2653
35%
31%
37%
14%
·
.345
-0.1
sinker
51
7%
12%
95.0
+12
-14
2113
5%
18%
21%
11%
·
.207
-3.2
changeup
36
11%
0%
91.0
+7
-10
1299
24%
11%
37%
11%
·
.183
·
RV/100 is run value per 100 pitches from the pitcher's
side, so negative is good (a curveball at −1.3 costs the
pitcher runs even if it misses bats — a real tension worth reading, not a
contradiction). Whiff, chase and xwOBA are computed on this pitcher's own
pitches this season; low-usage pitches carry small samples.
Locations and movement (4 charts)
4-seamcurveballcutter
Movement
Attack plan vs Kansas City Royals
Curveball/sweeper: top breaking whiffs are Perez (32%), Witt Jr. (32%).
Changeup: top offspeed whiffs are Rave (35%), Collins (35%).
Careful with Pasquantino: 87% contact, 14% K rate vs RHP; pitch to contact at the edges.
White Sox bats vs Randy Dobnak
Season quality vs tonight's starter hand, percentile-colored vs league: red elite, paper average, blue poor. P columns are the engine's published board numbers for this game. Batting order as posted. 30d contact is the last-30-day contact rate minus the season rate; an arrow is drawn only when the move clears two standard errors of its own noise, and n is the recent swing count.
#
Batter
PA
xwOBA
K%
Chase%
Contact%
HH%
P(1+ hit)
P(1+ HR)
30d contact
1
Sam Antonacci (L)
432
.358
13%
21%
88%
36%
69%
8%
≈ n159
2
Kyle Teel (L)
93
.309
39%
31%
68%
51%
59%
12%
≈ n113
3
Miguel Vargas (R)
483
.369
18%
21%
82%
40%
71%
12%
≈ n212
4
Munetaka Murakami (L)
372
.347
35%
23%
60%
54%
61%
14%
≈ n216
5
Andrew Benintendi (L)
410
.318
22%
33%
75%
47%
58%
10%
≈ n138
6
Tristan Peters (L)
412
.319
18%
33%
80%
35%
63%
10%
≈ n166
7
Brenton Doyle (R)
122
.235
35%
33%
72%
30%
·
·
≈ n98
8
Luisangel Acuña (R)
114
.271
23%
33%
74%
32%
·
·
≈ n25
9
Braden Montgomery (S)
253
.349
16%
25%
75%
42%
57%
8%
≈ n196
Kansas City Royals bats, where our staff attacks
Whiff by pitch group vs our starter's hand. Blue cells are the attack zones. P columns are the published board numbers. Batting order as posted. 30d contact is the last-30-day contact rate minus the season rate; an arrow is drawn only when the move clears two standard errors of its own noise, and n is the recent swing count.
#
Batter
PA
FB whiff
BRK whiff
OFF whiff
xwOBA
Chase%
Contact%
1st-pitch swing
P(1+ hit)
P(1+ HR)
30d contact
1
Luke Maile (R)
15
·
·
·
.268
22%
75%
·
·
·
≈ n20
2
Bobby Witt Jr. (R)
447
17%
32%
14%
.373
32%
77%
32% n447
66%
13%
≈ n216
3
Vinnie Pasquantino (L)
335
8%
18%
21%
.362
29%
87%
25% n336
67%
17%
≈ n176
4
Salvador Perez (R)
441
18%
32%
29%
.300
44%
75%
37% n441
59%
12%
≈ n218
5
Michael Massey (L)
338
13%
24%
18%
.322
39%
84%
25% n338
64%
9%
≈ n148
6
Nick Loftin (R)
255
8%
28%
31%
.280
24%
84%
18% n256
58%
9%
≈ n147
7
John Rave (L)
111
15%
27%
35%
.349
24%
78%
17% n111
52%
9%
≈ n124
8
Kyle Isbel (L)
236
8%
27%
25%
.273
35%
84%
29% n237
55%
7%
≈ n129
9
Isaac Collins (S)
356
12%
31%
35%
.303
19%
81%
24% n356
56%
5%
≈ n134
Kansas City Royals hitters, one card each
One card per hitter: the published probabilities this engine grades tonight, his whiff shape by pitch group, and his season against this starter's hand with the sample stated. Times-through-order and leverage splits are deliberately absent — at a median 45 plate appearances the third-time-through number carries a standard error roughly three times the effect it would be claiming.
1
Luke Maile (R)
FB·
BRK·
OFF·
only 15 PA vs RHP — too few to split
2
Bobby Witt Jr. (R)
P(1+ hit) 66% · P(1+ HR) 13%
FB17%
BRK32%
OFF14%
vs RHP 0.373 xwOBA, K 18% (447 PA)
3
Vinnie Pasquantino (L)
P(1+ hit) 67% · P(1+ HR) 17%
FB8%
BRK18%
OFF21%
vs RHP 0.362 xwOBA, K 14% (335 PA)
4
Salvador Perez (R)
P(1+ hit) 59% · P(1+ HR) 12%
FB18%
BRK32%
OFF29%
vs RHP 0.300 xwOBA, K 20% (441 PA)
5
Michael Massey (L)
P(1+ hit) 64% · P(1+ HR) 9%
FB13%
BRK24%
OFF18%
vs RHP 0.322 xwOBA, K 15% (338 PA)
6
Nick Loftin (R)
P(1+ hit) 58% · P(1+ HR) 9%
FB8%
BRK28%
OFF31%
vs RHP 0.280 xwOBA, K 17% (255 PA)
7
John Rave (L)
P(1+ hit) 52% · P(1+ HR) 9%
FB15%
BRK27%
OFF35%
vs RHP 0.349 xwOBA, K 22% (111 PA)
8
Kyle Isbel (L)
P(1+ hit) 55% · P(1+ HR) 7%
FB8%
BRK27%
OFF25%
vs RHP 0.273 xwOBA, K 23% (236 PA)
9
Isaac Collins (S)
P(1+ hit) 56% · P(1+ HR) 5%
FB12%
BRK31%
OFF35%
vs RHP 0.303 xwOBA, K 24% (356 PA)
Matchups: CWS hitters vs Randy Dobnak
Where this starter's actual usage meets each hitter's
measured holes and damage, on the same map. An edge is only reported
where the pitcher genuinely goes — a hole against a pitch he does not
throw is not a matchup — and only where the rate is measurably worse than
league for a typical hitter in that same spot. Every line carries its
sample size. Batter-versus-pitcher history is shown as trivia and
is not used in any of it: the samples that actually occur are
far too small to support a conclusion, and most public matchup content is
built on them anyway.
1. Sam Antonacci
Edge: pitcherHe throws the sinker middle-middle on 4% of his pitches to this side. The batter swings and misses 13% of the time there, against 5% for a typical hitter — +7 points. (15 swings.)
Tonight's published, gradeable numbers for this batter: 69% to get a hit and 8% to homer. Those are what the record grades — the notes above only explain why.
2. Kyle Teel
Edge: pitcherHe throws the four-seam off the plate on 7% of his pitches to this side. The batter swings and misses 36% of the time there, against 31% for a typical hitter — +5 points. (19 swings.)
Tonight's published, gradeable numbers for this batter: 59% to get a hit and 12% to homer. Those are what the record grades — the notes above only explain why.
3. Miguel Vargas
Edge: batterWhen the ball goes middle and in — and he puts 6% of his pitches there — the batter does real damage: 0.497 expected value per ball in play, against a 0.334 league average in that spot. (36 balls in play.)
Tonight's published, gradeable numbers for this batter: 71% to get a hit and 12% to homer. Those are what the record grades — the notes above only explain why.
4. Munetaka Murakami
Edge: pitcherHe throws the sinker middle-middle on 4% of his pitches to this side. The batter swings and misses 38% of the time there, against 5% for a typical hitter — +32 points. (15 swings.)
Edge: batterWhen the ball goes down and away — and he puts 9% of his pitches there — the batter does real damage: 0.359 expected value per ball in play, against a 0.261 league average in that spot. (24 balls in play.)
Tonight's published, gradeable numbers for this batter: 61% to get a hit and 14% to homer. Those are what the record grades — the notes above only explain why.
5. Andrew Benintendi
Edge: pitcherHe throws the sinker middle-middle on 4% of his pitches to this side. The batter swings and misses 25% of the time there, against 5% for a typical hitter — +20 points. (15 swings.)
Tonight's published, gradeable numbers for this batter: 58% to get a hit and 10% to homer. Those are what the record grades — the notes above only explain why.
6. Tristan Peters
Edge: batterWhen the ball goes middle and away — and he puts 7% of his pitches there — the batter does real damage: 0.391 expected value per ball in play, against a 0.310 league average in that spot. (31 balls in play.)
Tonight's published, gradeable numbers for this batter: 63% to get a hit and 10% to homer. Those are what the record grades — the notes above only explain why.
7. Brenton Doyle
Not enough of a track record in the spots this pitcher uses to say anything useful. No verdict rather than a guess.
No published probability for this batter tonight, so the notes above are observations, not predictions.
8. Luisangel Acuña
Not enough of a track record in the spots this pitcher uses to say anything useful. No verdict rather than a guess.
No published probability for this batter tonight, so the notes above are observations, not predictions.
9. Braden Montgomery
Edge: pitcherHe throws the sinker off the plate on 14% of his pitches to this side. The batter swings and misses 30% of the time there, against 22% for a typical hitter — +7 points. (15 swings.)
Edge: batterWhen the ball goes down-middle — and he puts 8% of his pitches there — the batter does real damage: 0.399 expected value per ball in play, against a 0.355 league average in that spot. (27 balls in play.)
Tonight's published, gradeable numbers for this batter: 57% to get a hit and 8% to homer. Those are what the record grades — the notes above only explain why.
Kansas City Royals: the running game and the defense
Sprint speed says who can run; attempt rate says who
will. Rate is steals of second per time on first, shrunk toward the
league’s 5.3% at 22 opportunities, with the raw count beside
it. Verdict needs 15+ times on first. Sprint speed and Outs Above Average are
Baseball Savant leaderboard metrics — measured from tracking data we do
not have and did not compute.
Behind the plate: Kyle Teel — runners went 49-for-62 against him (21% caught). That is mostly the pitcher: measured split-half reliability for a catcher’s own caught-stealing rate is +0.59, and the spread between catchers is smaller than the sampling noise. Read it as what happened, not as a rating.
#
Batter
Sprint
Steal rate
Threat
OAA
1
Luke Maile (R)
·
4.1% (1/30)
holds
·
2
Bobby Witt Jr. (R)
30.3 ft/s
16.1% (77/463)
runner
+18 SS
3
Vinnie Pasquantino (L)
25.8 ft/s
1.3% (4/372)
holds
+0 1B
4
Salvador Perez (R)
24.0 ft/s
0.6% (1/327)
holds
·
5
Michael Massey (L)
27.0 ft/s
1.9% (3/199)
holds
+8 2B
6
Nick Loftin (R)
28.2 ft/s
3.6% (6/174)
holds
-6 3B
7
John Rave (L)
·
10.0% (12/110)
occasional
·
8
Kyle Isbel (L)
27.4 ft/s
4.2% (9/217)
holds
+4 CF
9
Isaac Collins (S)
27.5 ft/s
8.3% (30/352)
occasional
-3 LF
Chicago White Sox: the running game and the defense
Sprint speed says who can run; attempt rate says who
will. Rate is steals of second per time on first, shrunk toward the
league’s 5.3% at 22 opportunities, with the raw count beside
it. Verdict needs 15+ times on first. Sprint speed and Outs Above Average are
Baseball Savant leaderboard metrics — measured from tracking data we do
not have and did not compute.
#
Batter
Sprint
Steal rate
Threat
OAA
1
Sam Antonacci (L)
28.2 ft/s
7.9% (18/220)
occasional
-5 LF
2
Kyle Teel (L)
27.0 ft/s
1.6% (2/178)
holds
·
3
Miguel Vargas (R)
28.3 ft/s
5.0% (21/423)
holds
-2 3B
4
Munetaka Murakami (L)
27.1 ft/s
1.8% (3/203)
holds
+0 1B
5
Andrew Benintendi (L)
26.6 ft/s
0.7% (1/276)
holds
·
6
Tristan Peters (L)
28.7 ft/s
3.9% (6/163)
holds
+9 CF
7
Brenton Doyle (R)
28.7 ft/s
13.3% (33/236)
runner
·
8
Luisangel Acuña (R)
29.8 ft/s
15.8% (30/176)
runner
-3 SS
9
Braden Montgomery (S)
28.5 ft/s
1.5% (1/120)
holds
·
Bullpens
Sorted by 30-day workload. Day cells show pitches on the three
most recent league game dates; dark means heavy recent use. Season rates
percentile-colored vs all pitchers with 150+ pitches.