Here is a fact that reframes how you think about an arsenal: a hitter has to start his swing before the pitch has finished moving. Everything about tunneling follows from that.
The commit point
A pitch takes roughly four tenths of a second to reach the plate. A swing takes about a hundred and fifty milliseconds to execute, and the hitter needs time to process what he is seeing before that. The practical consequence is that a hitter must decide to swing when the ball is still roughly 20 to 25 feet away from home plate.
That location is the commit point, and it is the whole ballgame. Anything that happens to the pitch after the commit point cannot be reacted to — the swing is already in motion. The hitter is not tracking the ball to the plate; he is predicting where it will end up based on what he saw early.
What a tunnel is
A tunnel is a pair of pitches that occupy nearly the same space at the commit point but end up in very different places at the plate.
If a fastball and a slider are within a couple of inches of each other 22 feet out, the hitter has no information to distinguish them at the moment he must decide. He commits to one and gets the other. The slider that finishes a foot away from the fastball produced a swing decision made as if it were the fastball.
Tunneling is not about a pitch moving more. It is about two pitches looking the same for as long as possible, then separating late.
Why more movement is not always better
This is the counterintuitive part, and it is where a lot of pitch-design effort goes wrong.
A slider with enormous sweep that breaks out of the tunnel early is easy to identify. The hitter sees it diverging from the fastball at 30 feet, recognizes it well before he has to commit, and takes it for a ball or waits for a mistake. The pitch has plenty of movement and terrible outcomes.
Meanwhile a tighter slider that mirrors the fastball until 20 feet and then breaks a modest amount can be genuinely unhittable, because by the time it separates the swing is already committed. Late separation beats large separation. Movement only helps insofar as it happens after the hitter is locked in.
The three requirements
Tunneling depends on three things working together, and all three are trainable:
- A repeatable release point. If the fastball and slider leave the hand from different spots, the hitter has a tell before the ball is even in flight and no amount of late break matters.
- Similar early trajectory. The pitches must share a path through the first stretch of flight, which usually means similar initial direction and enough velocity separation to matter without changing the early shape.
- Late divergence. The pitches must actually end up somewhere different — a perfect tunnel between two pitches that finish in the same location is just two similar pitches.
Notice that the first requirement is mechanical consistency, not stuff. This is why tunneling is a development topic rather than a talent evaluation — it responds to work.
Applying it without a lab
You can start reasoning about tunnels with data you likely already have. Release point consistency across pitch types is directly measurable from any tracking file — if a pitcher’s release height and side differ noticeably between his fastball and breaking ball, that is the first thing to fix, and it is visible in a table.
From there, pitch pairs that share early trajectory and finish apart are the tunnels worth building around. Watching pitches animated in 3D from the hitter’s perspective makes this concrete in a way a movement chart cannot — you can see which pitches stay together out of the hand and where they split.
And the simplest application requires no analysis at all: tunneling only pays off when pitches are sequenced together. A perfectly tunneled slider thrown once an inning does not exploit anything. It works when it follows the fastball it mirrors.
PitchFilthy animates every pitch in 3D from real tracked data, including release point and flight path — the fastest way to see which of a pitcher’s offerings actually tunnel.
Explore the 3D visualizer →
