The angle he throws from is unusual, and hitters notice
Heaney releases the ball from a sidearm slot, about 10 degrees above horizontal and 2.7 feet to the first-base side of the rubber.
2086 tracked release points, averaging 4.8 feet off the ground.
One pitch of his runs sideways more than almost anyone's
Heaney's sinker moves 138.4 inches toward the third-base side, the biggest horizontal move in his arsenal.
234 thrown, averaging 89.2 mph.
There is one pitch of his that keeps getting hit
Contact off Heaney's 4-seam fastball leaves the bat at 93.1 mph, against 84.7 off his curveball.
910 and 120 of them thrown.
He gets by without much velocity, and it costs him
Heaney averages 85.4 mph across his arsenal, 8th percentile in the league.
2086 pitches in 2025. 8th percentile among qualified pitchers in 2025, 715th in MLB.
His fastball is the pitch everything else is built on
Heaney's 4-seam fastball averages 90.1 mph, and has touched 93.5.
910 thrown, 43.6% of his pitches.
He throws strikes to one type of hitter and not the other
Heaney lands 56.5% of his fastballs in the zone and only 34.9% of his offspeed pitches.
1144 of his fastballs, 361 of his offspeed pitches.
The gap between his pitches is what makes them work
16.6 mph separates Heaney's 4-seam fastball from his slow curve, 90.1 against 73.5.
910 and 112 of them respectively.
When he falls behind, hitters know exactly what is coming
Behind in the count Heaney throws a fastball 64.7% of the time, against 50.3% when he is ahead.
600 pitches behind in the count, 577 ahead.
One pitch of his moves in a way hitters rarely see
Heaney's 4-seam fastball carries 12.7 inches of ride against a spinless ball, the biggest vertical move in his arsenal.
910 thrown, averaging 90.1 mph.
How much of the zone he uses depends on the count
Heaney puts 59.2% of his pitches in the zone when he is behind and 40.6% when he is ahead.
600 located pitches behind, 577 ahead.
He pitches around the zone once runners are on
Heaney throws 45.5% of his pitches in the zone with a runner in scoring position and 49.4% with the bases empty.
429 pitches with a runner in scoring position, 1657 with the bases empty.
He fills the strike zone and makes hitters beat him
Heaney lives in the strike zone: 48.6% of his pitches are in it, 69th percentile.
2086 pitches in 2025. 69th percentile among qualified pitchers in 2025, 244th in MLB.
One type of hitter does all the damage against him
Hitters do their damage on his fastballs: a .364 expected average against them, against .315 on his offspeed pitches.
1144 of his fastballs thrown.
He saves one pitch for one side of the plate
Heaney throws the sinker 24.4% of the time against left-handers and 6.3% against right-handers.
1520 pitches to right-handers, 566 to left-handers.
The contact he allows is the kind that finds grass
The quality of contact against Heaney projects a .353 average, 27th percentile.
2086 pitches in 2025. 27th percentile among qualified pitchers in 2025, 569th in MLB.
His velocity drains away as the outing goes on
Heaney's fastball averages 90.1 mph in his first 25 pitches of a start and 89.5 past his 75th.
404 early fastballs, 144 late ones.
This is the pitch he goes to when he needs the out
With two strikes Heaney goes to the slider: 20.9% of his two-strike pitches, against 15% the rest of the time.
612 two-strike pitches in 2025.
His pitches move in ways that fit together
Heaney works with 6 pitches: 4-Seam Fastball, Changeup, Slider and Sinker, and a little else. The 4-seam fastball is 43.6% of everything he throws.
2086 classified pitches in 2025.
He lives on the edges rather than over the middle
18.6% of Heaney's pitches land in the middle third of the zone, well below what most pitchers give away.
387 of 2086 located pitches.
His ball moves more than the hitter expects it to
Heaney's stuff spins at 2,363 rpm, 66th percentile in the league.
2086 pitches in 2025. 66th percentile among qualified pitchers in 2025, 263rd in MLB.
One pitch of his spins more than almost anyone's
Heaney's curveball spins at 2,606 rpm, the highest in his arsenal.
120 thrown in 2025.
Too much of the contact against him is loud
43.8% of the contact Heaney gives up is hit hard, 33rd percentile.
2086 pitches in 2025. 33rd percentile among qualified pitchers in 2025, 523rd in MLB.
He releases the ball about where everyone else does
Heaney releases the ball 6.3 feet down the mound, a shorter stride than most.
2086 tracked pitches in 2025.
When hitters connect off him, they hit it hard
Hitters average 89.4 mph off the bat against Heaney, 39th percentile.
2086 pitches in 2025. 39th percentile among qualified pitchers in 2025, 474th in MLB.
Show more
The numbers behind these live in Pitch Data.
Take me there
The angle he throws from is unusual, and hitters notice
Heaney releases the ball from a sidearm slot, about 10 degrees above horizontal and 2.7 feet to the first-base side of the rubber.
2086 tracked release points, averaging 4.8 feet off the ground.
His velocity drains away as the outing goes on
Heaney's fastball averages 90.1 mph in his first 25 pitches of a start and 89.5 past his 75th.
404 early fastballs, 144 late ones.
He releases the ball about where everyone else does
Heaney releases the ball 6.3 feet down the mound, a shorter stride than most.
2086 tracked pitches in 2025.
The numbers behind these live in Pitch Data.
Take me there
One pitch of his runs sideways more than almost anyone's
Heaney's sinker moves 138.4 inches toward the third-base side, the biggest horizontal move in his arsenal.
234 thrown, averaging 89.2 mph.
One pitch of his moves in a way hitters rarely see
Heaney's 4-seam fastball carries 12.7 inches of ride against a spinless ball, the biggest vertical move in his arsenal.
910 thrown, averaging 90.1 mph.
The numbers behind these live in Pitch Data.
Take me there
There is one pitch of his that keeps getting hit
Contact off Heaney's 4-seam fastball leaves the bat at 93.1 mph, against 84.7 off his curveball.
910 and 120 of them thrown.
His fastball is the pitch everything else is built on
Heaney's 4-seam fastball averages 90.1 mph, and has touched 93.5.
910 thrown, 43.6% of his pitches.
The gap between his pitches is what makes them work
16.6 mph separates Heaney's 4-seam fastball from his slow curve, 90.1 against 73.5.
910 and 112 of them respectively.
He saves one pitch for one side of the plate
Heaney throws the sinker 24.4% of the time against left-handers and 6.3% against right-handers.
1520 pitches to right-handers, 566 to left-handers.
His pitches move in ways that fit together
Heaney works with 6 pitches: 4-Seam Fastball, Changeup, Slider and Sinker, and a little else. The 4-seam fastball is 43.6% of everything he throws.
2086 classified pitches in 2025.
One pitch of his spins more than almost anyone's
Heaney's curveball spins at 2,606 rpm, the highest in his arsenal.
120 thrown in 2025.
The numbers behind these live in Pitch Data.
Take me there
He gets by without much velocity, and it costs him
Heaney averages 85.4 mph across his arsenal, 8th percentile in the league.
2086 pitches in 2025. 8th percentile among qualified pitchers in 2025, 715th in MLB.
The numbers behind these live in Pitch Data.
Take me there
He throws strikes to one type of hitter and not the other
Heaney lands 56.5% of his fastballs in the zone and only 34.9% of his offspeed pitches.
1144 of his fastballs, 361 of his offspeed pitches.
One type of hitter does all the damage against him
Hitters do their damage on his fastballs: a .364 expected average against them, against .315 on his offspeed pitches.
1144 of his fastballs thrown.
The numbers behind these live in Pitch Data.
Take me there
When he falls behind, hitters know exactly what is coming
Behind in the count Heaney throws a fastball 64.7% of the time, against 50.3% when he is ahead.
600 pitches behind in the count, 577 ahead.
How much of the zone he uses depends on the count
Heaney puts 59.2% of his pitches in the zone when he is behind and 40.6% when he is ahead.
600 located pitches behind, 577 ahead.
This is the pitch he goes to when he needs the out
With two strikes Heaney goes to the slider: 20.9% of his two-strike pitches, against 15% the rest of the time.
612 two-strike pitches in 2025.
The numbers behind these live in Matchups.
Take me there
He pitches around the zone once runners are on
Heaney throws 45.5% of his pitches in the zone with a runner in scoring position and 49.4% with the bases empty.
429 pitches with a runner in scoring position, 1657 with the bases empty.
The numbers behind these live in Pitch Data.
Take me there
He fills the strike zone and makes hitters beat him
Heaney lives in the strike zone: 48.6% of his pitches are in it, 69th percentile.
2086 pitches in 2025. 69th percentile among qualified pitchers in 2025, 244th in MLB.
The numbers behind these live in Spray Chart.
Take me there
The contact he allows is the kind that finds grass
The quality of contact against Heaney projects a .353 average, 27th percentile.
2086 pitches in 2025. 27th percentile among qualified pitchers in 2025, 569th in MLB.
Too much of the contact against him is loud
43.8% of the contact Heaney gives up is hit hard, 33rd percentile.
2086 pitches in 2025. 33rd percentile among qualified pitchers in 2025, 523rd in MLB.
When hitters connect off him, they hit it hard
Hitters average 89.4 mph off the bat against Heaney, 39th percentile.
2086 pitches in 2025. 39th percentile among qualified pitchers in 2025, 474th in MLB.
The numbers behind these live in Pitch Data.
Take me there
He lives on the edges rather than over the middle
18.6% of Heaney's pitches land in the middle third of the zone, well below what most pitchers give away.
387 of 2086 located pitches.
The numbers behind these live in Pitch Data.
Take me there
His ball moves more than the hitter expects it to
Heaney's stuff spins at 2,363 rpm, 66th percentile in the league.
2086 pitches in 2025. 66th percentile among qualified pitchers in 2025, 263rd in MLB.