← ARI at SD, Sep 25, 2026
8:40 PM CT · Petco Park · lineup confirmed
Hitter · SD · batting 2Dustin Harris
Bats leftTalent grade FBalancedNormal
.344wOBA vs RHP.288xwOBA vs his mix3.9expected PA
Starter · ARIBrandon Pfaadt
Throws rightBTB Stuff 95Stable
3.4projected K16%K%2.7trips vs this hitter
Brandon Pfaadt's pitches, by how they moveHitter's edgeEvenPitcher's edge
-20-100+10+20-20-100+10+20Arm side →← Glove side↑ Rise (in)Fastball: 30% usage, 93.1 mph, +6.4″ arm side, +14.8″ rise. Dustin Harris: wOBA .362 vs league .359 (about even).Fastball 30%Changeup: 19% usage, 87.1 mph, +15.8″ arm side, +3.2″ rise. Dustin Harris: wOBA .312 vs league .309 (about even).Changeup 19%Sinker: 14% usage, 92.9 mph, +16.0″ arm side, +6.7″ rise. Dustin Harris: wOBA .355 vs league .352 (about even).Sinker 14%Sweeper: 13% usage, 84.3 mph, -10.8″ arm side, +5.3″ rise. Dustin Harris: wOBA .325 vs league .321 (about even).Sweeper 13%Curveball: 12% usage, 82.8 mph, -8.9″ arm side, -11.0″ rise. Dustin Harris: wOBA .309 vs league .306 (about even).Curveball 12%Cutter: 11% usage, 90.5 mph, +0.7″ arm side, +8.9″ rise. Dustin Harris: wOBA .369 vs league .366 (about even).Cutter 11%

Bubble size is how often he throws it. Color is Dustin Harris's wOBA against pitches shaped like it, compared with league. Hover a pitch for the numbers; the table below has all of them.

Dustin Harris's last 40 balls in playHit (14)Out (26)Barrel zone
sweet spot 8–32°-40°-20°0°20°40°60°80°6070809010011012095 mph hard hitExit velocity (mph)Out: 79.7 mph at 6°Out: 91.3 mph at 4°Single: 68.0 mph at 24°Out: 85.6 mph at 36°Out: 94.5 mph at -20°Out: 32.6 mph at -49°Out: 68.8 mph at 5°Out: 85.9 mph at -8°Out: 79.2 mph at -12°Out: 98.9 mph at -10°Out: 94.1 mph at 66°Single: 100.9 mph at 19°Out: 92.0 mph at 46°Out: 93.2 mph at 77°Out: 66.1 mph at 11°Double: 84.0 mph at 21°Out: 92.7 mph at 53°Out: 86.2 mph at -10°Single: 88.8 mph at 0°Single: 53.9 mph at -60°Out: 92.4 mph at 48°Out: 80.3 mph at 46°Single: 80.7 mph at 22°Single: 90.8 mph at 5°Single: 84.3 mph at 21°Triple: 98.5 mph at 29°Out: 99.2 mph at 20°Out: 89.1 mph at 1°Single: 94.9 mph at 12°Single: 62.6 mph at -15°Out: 77.4 mph at -3°Out: 96.1 mph at 11°Out: 68.9 mph at 60°Double: 105.6 mph at 17°Out: 50.6 mph at -19°Out: 66.1 mph at 1°Out: 45.6 mph at -71°Single: 97.5 mph at 17°Out: 99.0 mph at 18°Single: 93.9 mph at 2°
20% hit 95+ mph33% in the sweet spot35% fell for hits
MarketBTBWithout the matchupMatchup
1+ hit68.2%64.2%+4.0
2+ total bases38.8%35.5%+3.4
Home run8.7%7.9%+0.8
Matchup: points this starter, his pitch mix, the bullpen and the park add or take away, against the same hitter over the same trips facing league-average opposition. "Without the matchup" takes them back out.
What moves the number
1+ hit
Starter
+3.5
Pitch mix
+0.7
Bullpen
-0.1
Park
-0.1
2+ total bases
Starter
+2.7
Pitch mix
+0.8
Bullpen
-0.1
Park
+0.0
Home run
Starter
-0.1
Pitch mix
+0.3
Bullpen
-0.0
Park
+0.6

Points each piece adds or takes away. The pitch-mix piece is folded into the fitted model when it scores the pair, so it often reads zero.

Zone battle

where he pitches, where Dustin Harris hits
Dustin Harris · hot and cold vs RHP
xwOBA .253 shrunk (raw .188 on 4 PA) · league .274 · 9 pitches seen.253xwOBA .301 shrunk (raw .292 on 8 PA) · league .307 · 17 pitches seen.301xwOBA .260 shrunk (raw .229 on 1 PA) · league .263 · 3 pitches seen.260xwOBA .386 shrunk (raw .473 on 6 PA) · league .342 · 21 pitches seen.386xwOBA .375 shrunk (raw .358 on 8 PA) · league .386 · 21 pitches seen.375xwOBA .310 shrunk (raw .296 on 9 PA) · league .321 · 15 pitches seen.310xwOBA .291 shrunk (raw .258 on 6 PA) · league .308 · 15 pitches seen.291xwOBA .327 shrunk (raw .290 on 8 PA) · league .351 · 14 pitches seen.327xwOBA .292 shrunk (raw .290 on 2 PA) · league .292 · 10 pitches seen.292xwOBA .350 shrunk (raw .309 on 8 PA) · league .377 · 38 pitches seen.350xwOBA .315 shrunk (raw .412 on 5 PA) · league .274 · 14 pitches seen.315xwOBA .290 shrunk (raw .343 on 6 PA) · league .263 · 46 pitches seen.290xwOBA .213 shrunk (raw .122 on 8 PA) · league .274 · 49 pitches seen.213
vs RHP · 272 pitches · catcher's view
Whiff 0% of 6 swings · league 22%0%Whiff 0% of 15 swings · league 20%0%Whiff 0% of 2 swings · league 19%0%Whiff 9% of 11 swings · league 10%9%Whiff 19% of 16 swings · league 9%19%Whiff 0% of 13 swings · league 11%0%Whiff 30% of 10 swings · league 14%30%Whiff 13% of 8 swings · league 13%13%Whiff 67% of 6 swings · league 17%67%Whiff 0% of 11 swings · league 28%0%Whiff 20% of 5 swings · league 24%20%Whiff 25% of 16 swings · league 32%25%Whiff 48% of 23 swings · league 49%48%
vs RHP · 272 pitches · catcher's view
Swings at 67% of 9 pitches · league 62%67%Swings at 88% of 17 pitches · league 72%88%Swings at 67% of 3 pitches · league 66%67%Swings at 52% of 21 pitches · league 70%52%Swings at 76% of 21 pitches · league 76%76%Swings at 87% of 15 pitches · league 70%87%Swings at 67% of 15 pitches · league 65%67%Swings at 57% of 14 pitches · league 68%57%Swings at 60% of 10 pitches · league 60%60%Swings at 29% of 38 pitches · league 24%29%Swings at 36% of 14 pitches · league 34%36%Swings at 35% of 46 pitches · league 40%35%Swings at 47% of 49 pitches · league 32%47%
vs RHP · 272 pitches · catcher's view

better for him than the league in that spot worse. Faded cells have little sample. Last 90 days; zone drawn at a fixed 1.5–3.5 ft.

Pitch by pitch

Dustin Harris against each of Brandon Pfaadt's pitches
His pitchUsageVeloMovementHis wOBALeagueHis whiff%LeagueSampleRead
Fastball30%93.1+6″ / +15″.362.35911.6%15.8%25About league average vs these; rarely misses them
Changeup19%87.1+16″ / +3″.312.30923.8%24.6%10About league average vs these
Sinker14%92.9+16″ / +7″.355.3529.0%12.3%17About league average vs these
Sweeper13%84.3-11″ / +5″.325.32127.0%25.0%6Little history vs this shape
Curveball12%82.8-9″ / -11″.309.30631.2%29.1%4Little history vs this shape
Cutter11%90.5+1″ / +9″.369.36613.9%18.5%10About league average vs these; rarely misses them
Matched by shape: every pitch in our history that moved like each of the starter's pitches, not just ones with the same name. Movement is horizontal / induced vertical break in inches. Display only; the fitted model reads the matchup its own way.

Statcast

opens on right-handers, the hand he faces tonight
Dustin Harris · by window and pitcher handthrough Sep 25, 2026 · windows are his last games
WindowGPAAVGOBPSLGwOBAxwOBAK%BB%Whiff%Avg EVMax EVBarrel%Hard-hit%Sweet-spot%
Last 5 G518.133.222.133.228.24616.7%5.6%7.7%82.3100.90.0%15.4%15.4%
Last 15 G1554.306.352.429.357.31611.1%5.6%17.0%82.6105.64.5%20.5%36.4%
Last 30 G2480.315.354.411.351.30012.5%5.0%19.7%82.7105.63.1%20.0%36.9%
90 days2480.315.354.411.351.30012.5%5.0%19.7%82.7105.63.1%20.0%36.9%
Batted-ball mix, 90 days · 65 balls in play
Ground 43%Line drive 28%Fly ball 20%Pop-up 9%
WindowGPAAVGOBPSLGwOBAxwOBAK%BB%Whiff%Avg EVMax EVBarrel%Hard-hit%Sweet-spot%
Last 5 G22.000.500.000.350.4290.0%0.0%16.7%94.594.50.0%0.0%0.0%
Last 15 G79.167.333.167.256.26533.3%11.1%23.5%93.799.00.0%25.0%25.0%
Last 30 G810.286.400.286.320.32030.0%10.0%21.1%87.999.00.0%20.0%40.0%
90 days810.286.400.286.320.32030.0%10.0%21.1%87.999.00.0%20.0%40.0%
Batted-ball mix, 90 days · 5 balls in play
Ground 40%Line drive 20%Fly ball 20%Pop-up 20%
WindowGPAAVGOBPSLGwOBAxwOBAK%BB%Whiff%Avg EVMax EVBarrel%Hard-hit%Sweet-spot%
Last 5 G520.125.250.125.240.26415.0%5.0%9.4%83.2100.90.0%14.3%14.3%
Last 15 G1563.291.349.400.343.30914.3%6.3%18.0%83.5105.64.2%20.8%35.4%
Last 30 G2490.312.360.400.348.30214.4%5.6%19.9%83.0105.62.9%20.0%37.1%
90 days2490.312.360.400.348.30214.4%5.6%19.9%83.0105.62.9%20.0%37.1%
Batted-ball mix, 90 days · 70 balls in play
Ground 43%Line drive 27%Fly ball 20%Pop-up 10%
Dustin Harris · percentile ranksvs 210 hitters on the slate with 60+ PA · last 90 days

Right is always better for the hitter: K% and whiff are ranked low-to-high. Context only; a percentile isn't a projection.

FormNormal
Contact rating23Poor
Last 100 pitches0trending down
wOBA / xwOBA.331 / .288running 43 points ahead of his contact
Last 12 games, oldest to newest
Hit9/12
2+ total bases5/12
Home run0/12

Context only. Streaks and hot or cold labels don't move a projection: in our tests recent results didn't predict the next two weeks better than the season.

Recent contact

Last 12 balls in play. Hard hit is 95+ mph; the sweet spot is a launch angle of 8 to 32 degrees.
DatePitcherPitchVeloEVLAxwOBAResult
Sep 25RHPChangeup85.179.76.314Out
Sep 25RHPCutter92.091.34.391Out
Sep 25RHPChangeup86.168.024.870Single
Sep 24RHPSlider89.685.636.015Sac fly
Sep 24LHPSlider87.894.5-20.129Out
Sep 23RHPCurveball76.432.6-49.287Fielder's choice
Sep 23RHPSweeper83.968.85.195Fielder's choice
Sep 23RHPSplitter90.885.9-8.100Force out
Sep 22RHPSinker97.079.2-12.076Out
Sep 22RHPChangeup87.698.9-10.251Force out
Sep 20RHPSinker96.794.166.008Out
Sep 20RHPSinker96.2100.919.468Single
Last 10 games.
DatePAHTBHRBBK
Sep 25411010
Sep 24400002
Sep 23500000
Sep 22300001
Sep 20411000
Sep 19512001
Sep 18522002
Sep 17533001
Sep 16524010
Sep 15211000

Two strikes

Brandon Pfaadt ARI · RHPwith two strikes
Brandon Pfaadt with two strikes. Put-away: share of two-strike pitches that end the at-bat with a strikeout.
PitchOverall2 strikesWhiff%Put-awayLeague put-away
Fastball30%34%11.9%11.2%18.0%
Changeup19%21%21.3%14.1%18.6%
Sweeper13%20%25.6%20.5%19.3%
Curveball12%14%26.7%17.3%20.0%
Sinker14%9%7.7%15.2%17.0%
Cutter11%3%25.0%20.0%17.9%
Dustin Harris bats Lwith two strikes, vs this hand
Dustin Harris with two strikes against this hand, shrunk toward league. About league average vs his two-strike stuff
With two strikesHimLeague
K%38.0%41.0%
Whiff%18.2%21.3%
Contact%81.8%78.7%
Chase%43.6%39.6%
wOBA.253.245
Whiff vs his put-away shapes16.9%19.8%

The hitter

season-level talent read
Talent gradeFBalanced type
wOBA.311
K%21.8%
BB%6.8%
Whiff%10.6%
Barrel%3.6%
Hard-hit%20.8%
Avg EV86.4

Against right-handers, last 90 days

76 PA
wOBA.344
xwOBA vs this mix.288against pitches like his
RV/1000.29
Hard-hit%18.2%
K%14.7%
BB%5.9%

Talent blends this season with last season, shrunk toward league average where the sample is thin. Recent hot or cold streaks are not weighted: in our tests they didn't predict the next two weeks better than the season does.

The starter he faces
Brandon PfaadtRHP · ARI vs SD
3.4projected strikeouts · likely 1 to 6 · 23.4 batters over 5.4 innings
≤3 strikeouts: 55.0%55%≤34 strikeouts: 18.6%19%45 strikeouts: 12.9%13%56 strikeouts: 7.3%7%67 strikeouts: 3.7%4%78 strikeouts: 1.6%2%89+ strikeouts: 0.9%1%9+book 3.5
Over 3.5: 45% (red bars) · under: 55%. Chance of each exact strikeout total, from the served distribution.
K%15.6%
BB%3.6%
Whiff%9.4%
Velo89.2
BTB Stuff95
Location109
PitchUsageBTB Stuff 60 · 100 · 140VeloWhiff
Fastball30%9893.15.0%
Changeup19%8287.011.3%
Sinker14%8892.96.4%
Sweeper13%9884.218.7%
Curveball12%10082.710.6%
Cutter11%10990.410.6%
Other0%––0.0%
Last 3 startsStable
DatePitchesK%Whiff%Hard-hit%wOBA
Sep 196417%11%17%.239
Sep 129923%17%45%.402
Sep 59715%13%30%.325

Season numbers from the last 90 days of Statcast. BTB Stuff and Location read on a scale where 100 is league average. Recent starts are context; the projection doesn't weight them.

Brandon Pfaadt ARI · RHPvsSD lineupstrikeout rate vs his hand

0 of 9 strike out more than the average hitter tonight

Strikeout rate against right-handers over the last 90 days (season rate where the split is missing). Line: tonight's average hitter, 22.5%. Red strikes out more, blue less.

The rest of the gameARI @ SD →Both lineups, bullpens, the pitch-mix battles and park air.Dustin Harris: every projection we've made →