Launch Angle Derived Batted Ball Types
Fans instinctively know there are many types of batted balls. We’ve even given them names over the years: bloops, worm killers, Baltimore Chops, fly balls, rockets, frozen ropes, etc. Some of these names have been adapted to standardized stats, fly balls, ground balls, line drives, and pop ups, while the others have been been relegated to flowery language used broadcasters and personalities.
We have stats for fly balls, pop ups, ground balls, and line drives here on fangraphs, and occasionally users break these down a little more into infield fly balls, fliners, and outfield fly balls to narrow in on specific traits that may be interesting at the moment. But, personally, and you may feel the same way, I’ve never been quite happy with this system. It is too narrow, the categories are too broad and generic.
I created my versions of xOBA, xBABIP, and xStats on the premise of eliminating ‘types’ of batted ball from the analysis. Instead, it focuses entirely on balls with similar launch angles and exit velocities. It works pretty well, I think, but sometimes you want to sort and filter batters by specific traits. Batted ball types are one way to do this.
There are two ways to measure batted ball type with Statcast. First, you can go strictly by launch angle. Second, you can combine launch angle and exit velocity. In a sense, I already do the latter, which I call Value Hits and Poor Hits. These balls characterize the most and least valuable batted balls, combining launch angle and exit velocity. So you can sort and filter players this way.
The former option, launch angles alone, is what I will be focusing on here. I have three goals for this exercise:
- First, each category to have a unique set of features. If they are too similar, you may as well lump them together.
- Second, each category should have a relatively large number of results. I don’t want one batted ball type to represent, for example, merely 1% of batted balls.
- Third, the categories should have good year to year correlations, and hopefully quickly stabilize during the course of a season.
Method
I created a number of charts and tables depicting Out%, 1B%, 2B%, 3B%, and HR% with respect to launch angle. I already knew that peak value for batted balls lays somewhere around 20-30 degrees, and value steeply falls off after 36 degrees. Using these charts I identified peak angles for singles, doubles, and home runs. Triples do not have their own peak angle, and share the same space as doubles and home runs, which I feel is instinctive knowledge for any baseball fan.

(click image to see larger version)
The peak angle for doubles is the most obvious to pick out. It overlaps singles quite a bit, but it is a bit off from the home run peak. Once you have a spot for doubles you can work your way down. The lowest launch angles have the highest Out%, but there is a roughly linear relationship between Out% and launch angle for these very low angles. However, between the peak 2B% range and this high Out% range there is another range, which has very few doubles but a very high singles rate.
So, at this point I have three batted ball categories. Low ground balls, high ground balls, and line drives. Now to look at the upper ranges.
I know the highest launch angles have the lowest values of all batted balls, and value drops off very rapidly after 36 degrees. So, it is a matter of figuring out where to draw a line of distinction at this highest end. I turned to angles a bit lower to see if they could help guide me.
In the low 20 degrees launch angles you have high 2B% and HR%, but around 25 degrees the 2B% tanks and the HR% reaches it’s peak. These seem like two fundamentally different groups of batted balls. These are what might be called Fliners by some, or true fly balls by others. There really isn’t much consensus on any of this. But either way, I decided to plop a line at 26 degrees to separate these two groups.
Now we’re left with one group of batted balls that we know are near automatic outs, and another group which we know have lots and lots of home runs. Where to draw the line? Well, the lower launch angles have much higher batting average, slugging, etc. I tried to maximize the number of home runs and batting average in this tier of batted balls. As a result, I placed the final line on 39 degrees.
What I came up with
In the end, I came up with six batted ball types. Two types of ground balls, one of line drives, one of fliners, and two of fly balls. In the chart below you can see the angle breakdowns.
| Type | Angle Range |
|---|---|
| Low Ground Balls | < 0° |
| High Ground Balls | 0-10° |
| Low Line Drives | 10-19° |
| High Line Drives | 19-26° |
| Fly balls | 26-39° |
| Pop Ups | > 39° |
So, now it came to naming these things. I am ridiculously bad at naming things, so I asked twitter for help. They suggested naming the lower end ground ball a dribbler. While I’m not married to the name, I used it. I didn’t really get much in the way of suggestions for the other types. Since I know these stats will be listed in their two letter form 99% of the time, I decided to name the fliner type ball “HD”. I figured people associate HD with “good”, and that category of balls is exceptionally “good”.
So, in the end, these ball types are now referred to as Dribble Ball (DB), Ground Ball (GB), Low Drive (LD), High Drive (HD), Fly Ball (FB) and Pop Up (PU). Here are their stats.
| Type | BIP | H | 1B | 2B | 3B | HR | SF |
|---|---|---|---|---|---|---|---|
| DB | 138986 | 26910 | 24854 | 1956 | 100 | 0 | 0 |
| GB | 49802 | 23686 | 21478 | 2108 | 100 | 0 | 0 |
| LD | 66738 | 46718 | 31958 | 12982 | 1278 | 500 | 574 |
| HD | 47846 | 25296 | 7800 | 9034 | 1030 | 7432 | 948 |
| FB | 66886 | 20262 | 4322 | 3026 | 768 | 12146 | 2190 |
| PU | 55186 | 2386 | 1164 | 588 | 54 | 580 | 1030 |
Dribble Balls are the most common ball type, but the other five are roughly equally common. High Drives, the most valuable batted ball type, is the least common. That kinda makes sense, high value BIP are certainly less common than low value BIP. I mean, we’re paying the pitchers to avoid good contact.
| Type | AVG | OBP | SLG | BABIP | BACON | wOBA |
|---|---|---|---|---|---|---|
| DB | .194 | .194 | .209 | .194 | .194 | .176 |
| GB | .476 | .476 | .522 | .476 | .476 | .436 |
| LD | .707 | .701 | .964 | .698 | .700 | .710 |
| HD | .540 | .529 | 1.252 | .442 | .529 | .730 |
| FB | .313 | .303 | .947 | .148 | .303 | .502 |
| PU | .044 | .043 | .089 | .033 | .043 | .055 |
These slash line items cut straight to the chase. Dribble Balls are much less valuable than Ground Balls. While Ground Balls may have similar batting average to High Drives, one is made up almost entirely of singles while the other almost entirely of extra base hits, hence dramatically different slugging percentages. Low Drives and High Drives have similar wOBA, but High Drives achieves this by sheer value, but Low Drives does it through higher frequency of success on lesser valued BIP. Pop Ups have very, very little value, while fly balls are actually quite good.
Each of these six categories has a unique set of qualities, and each has a good sampling of batted balls. So the first two conditions have been met.
Do They Have Strong Year to Year Correlations?
I tested year to year correlations between 2015 and 2016. Obviously, I can’t get launch angle data prior to 2015, which is very unfortunate. So, this is a relatively small sample size to draw from. Having said that, I tested year to year correlations for batters with at least 300 balls in play. It came out so well I tested for 200, and then 100, and then 75. You can see the results in the chart below.
| MinBIP | DB | GB | LD | HD | FB | PU |
|---|---|---|---|---|---|---|
| 75 | .617 | .476 | .137 | .131 | .491 | .622 |
| 100 | .690 | .537 | .113 | .204 | .623 | .686 |
| 200 | .703 | .607 | .156 | .181 | .644 | .720 |
| 300 | .792 | .638 | .280 | .283 | .784 | .773 |
| 400 | .777 | .606 | .264 | .152 | .726 | .795 |
These stats seem to correlate very well year to year, even in the smaller sample size 75 BIP. For reference, normal fly balls and ground balls (like you would see here on fangraphs) hover around .79 and normal line drives around .37. So, after 300 BIP these batted ball types are roughly on par with the year to year correlations for the standard batted ball types you’re used to using.
For reference, there are about 1.426 plate appearances per ball in play, so 300 BIP is roughly equal to 430 plate appearances. These batted ball types are pretty good after 200 BIP, too, which is roughly equal to 285 plate appearances.
How Quickly Do They Stabilize In a Season?
Great question! I tested for this, and the resulting number was so small that it makes me feel like I made a mistake. I don’t want to quote that number. I’ll go through the whole process again and get back to you.
How Do I Use This In Fantasy Baseball?
Another great question! Well, there two ways I can think of.
In the year to year correlation chart above there are three types that are very consistent year to year: DB, FB, and PU. Then you have GB, which, while consistent, isn’t quite up to par with the other three. Finally, LD and HD are not very consistent.
Even when I combined LD and HD into one category, the correlation after 300 BIP only rises to .48 (.34 after 200 BIP). As it turns out, these particular batted balls may be the largest difference maker in the quality and overall value of a player’s season.
In other words, if LD and HD rates are above average, the player is probably exceeding their projection and vice versa.
For example, let’s look at Paul Goldschmidt. In 2015 he had the greatest season of his career, and in 2016 he had a down year. Not his worst season, but nowhere even remotely close to his 2015 greatness.
| Year | BIP | DB% | GB% | LD% | HD% | FB% | PU% |
|---|---|---|---|---|---|---|---|
| 2015 | 423 | 21.3% | 22.7% | 17.5% | 9.5% | 15.6% | 13.5% |
| 2016 | 438 | 21.2% | 29.7% | 15.8% | 5.5% | 15.1% | 12.6% |
We’ve already established DB, FB, and PU are the most stable year to year. In this case, DB and FB are practically identical in both seasons. In 2016 Goldy hit significantly fewer pop ups (7% fewer).
The next three categories each saw pretty large changes season to season. His GB rate went up 30%, LD down 10%, and his HD rate was almost cut in half. There’s your problem.
High Drives are, without question, the most valuable type of batted ball. In 2015, Goldy hit nearly twice as many of them as he did in 2016. He also had nearly twice as much value (WAR). Coincidence? Yes. But the point stands, HD rate, while it may fluctuate a lot from year to year, is attached to overall value in a very meaningful way. It is something you may want to look towards to adjust your projections for players throughout a season.
Furthermore, I don’t only list HD%, I also have average exit velocity. This goes for each of these six batted ball types, but HD% seems to be the most interesting in terms of raw value. For example, in 2016 Miguel Cabrera had the highest HD% at 14.9%, and he also had the 15th highest EV on HD, at 96.9 mph.
So, not only did Miggy hit the most balls in this category and the most balls in this category per plate appearance, but he also had one of the highest EV. Of course, high exit velocity doesn’t necessarily mean success, but according to my Home Run Probability Calculator his average HD had an 8.6% chance to clear the fence for a homer. That’s pretty good for an average batted ball, consider that 50% of them were even better than that.
Leaders and Trailers In 2016
I’ve already mentioned Miggy taking the cake in the 2016 HD%, but the other nine top names are pretty great as well. You’ll see another great Tigers hitter, Nick Castellanos with great HD% and great EV. A third Tiger, Ian Kinsler. DJ LeMahieu, my sleeper pick for MVP this season (assuming he hits homers like I think he will). Brandon Belt is a surprise second place finisher, although with much lower (and below league average) exit velocity.
| Name | HD% | avg EV |
|---|---|---|
| Miguel Cabrera | 14.9% | 96.9 |
| Brandon Belt | 14.8% | 89.5 |
| Nick Castellanos | 13.8% | 94.3 |
| Matt Carpenter | 13.4% | 94.4 |
| Khris Davis | 12.8% | 99.8 |
| Ian Kinsler | 12.4% | 89.2 |
| Matt Kemp | 12.2% | 94.2 |
| Adam Duvall | 12.2% | 94.1 |
| Neil Walker | 12.1% | 90.2 |
| DJ LeMahieu | 12.0% | 91.2 |
All of these are great hitters, but, and this is a key point, HD% isn’t very stable year to year, so in that sense these may all be sell high candidates. Except Miggy, who is ridiculously good at hitting.
| Name | HD% | avg EV |
|---|---|---|
| Denard Span | 5.3% | 90.6 |
| Nori Aoki | 5.3% | 91.0 |
| Paul Goldschmidt | 5.5% | 93.5 |
| Yunel Escobar | 5.7% | 90.1 |
| Chris Owings | 6.2% | 92.2 |
| Cesar Hernandez | 6.5% | 88.4 |
| Andrelton Simmons | 6.7% | 87.8 |
| Jonathan Schoop | 6.8% | 90.1 |
| Ryan Braun | 6.8% | 94.2 |
On the other end of the spectrum, these guys are trailed the rest of the pack in terms of HD% last season. I already talked about Paul Goldschmidt, but all of these guys may be buy low candidates.
Schoop in particular I find interesting, and I bought some stock in him as a result of these numbers. He has some serious pop in his bat, and he hit 25 homers last year, but with reduced batting average. Did the 9th lowest HD% contribute to that lower batting average? These balls do have a .540 average. Between 2015 and 2016, Schoop traded HD for DB and PU. Obviously, this is worst case scenario for a batter, given the differences in batted ball values in these three categories.
Wrap Up
These six batted ball types tell us more about a player than the traditional four batted ball types we are used to looking at over the past few years/decades/basically forever. The success and value rates of each category are more pronounced and differentiated, and when combined with Exit Velocity, which is provided side by side, can help you build a picture of player value.
The point of statistical reliability for these stats has not been adequately determined, so I cannot tell you at which point in a season these stats become reliable. That is the next step, and perhaps the single most important hurdle for fantasy value. I’m sorry I couldn’t have that done and ready for this post. I tried to, and I have results, but they are too good to be true so I am forced to assume I made a mistake and I don’t want to accidentally spread misinformation.
These stats will be updated daily on xStats.org for both batters and pitchers. I hope you find them useful.
Andrew Perpetua is the creator of CitiFieldHR.com and xStats.org, and plays around with Statcast data for fun. Follow him on Twitter @AndrewPerpetua.
Really cool article, and good analysis, but I think your graph with the probabilities and launch angles is missing the 2B%:
Anyway you could edit or include it here in the comments?
Oh man it took me a while to figure out why that graph wasn’t working. But I fixed it!
PS I deleted the image from your comment because I think it was stopping me from fixing the main image.
Awesome stuff as always. It’s interesting comparing Goldschmidt’s batted ball type distribution on his page with how you broke it down based on launch angle. His page shows that he actually set a new career high in line drive rate! Yet, your stats show that he hit line drives at a much lower rate than 2015. Also, his page says he hit fly balls at a career low rate, but yours say he only declined slightly.
Is this a case of missclassification from BIS (I believe Baseball Info Solutions supplied the batted ball data)?
I’m not sure exactly how BIS determines their classifications, but I think it might be something along the lines of gb < 5 degrees, ld 5-20, fb 20- some large number, and everything else pop ups.
So their line drives overlap GB, LD, and HD. Their fly balls include part/all of HD and FB and maybe even some of my PU.
These are two pretty wildly different systems, and I'm not sure how much they can/should be compared on a 1 to 1 basis. Rather, it might be better to look at the average stats for their GB/LD/FB/PU and compared that to the categories I made here.
Really great stuff and well written, too.
I’m wondering: if the most valuable hit types vary the most, how do we use this to predict anything of use in fantasy? Is it that the better hitters will fluctuate around a higher mark, even if it varies year to year? So as the data builds up we can locate a particular player who fell off only because he an unusually low hd rate? Do we discount a guy whose production was based on an increase in hd rate rather than production on the more stable types of contact? … Or feel free to tell me if I’m just completely confused.
This is where the “too good to be true” point of reliability might come in.
In essence, full season stats may not be the most realistic way to look at player performance. Russell A. Carleton said this:
“There’s a tendency to view baseball players as their season stats. If a hitter puts up a .300 average during a season, we tend to look back on that season and assume that he was .300 hitter all along, from April to September. What if he was really a .280 hitter in the first half, then at the All-Star break, he made an adjustment and was really a .320 hitter in the second half?”
Breaking up the season into smaller chunks may be a more realistic way to look at players, and with data as fine grained as statcast we may be able to finally measure with enough precision to discern changes well enough to judge a player on a shorter time span.
Something like, say, 30 days? 20 days? Maybe even 15 days? I really need to hammer down the reliability point for these stats. The number right now seems ridiculously small, but if it is true then wowza. But It seems too good to be true. Even so exit velocity is reliable about 50 BIP, These stats may be roughly the same. It may more applicable to DFS.
Thanks for responding. Really fascinating stuff you’ve dug up here. … Makes me feel bad for not having signed up as a member yet. I’m going to do that today.
This is a tremendous article and work, Andrew. Well done, and thank you.
According to your table, Goldschmidt hit more popups in 2015 than in 2016, not fewer as you state in the text. Also, the conclusions stated in the paragraph following the correlations table don’t seem to describe the actual results of that table–saying the correlations are good, when for LD they are quite poor–though you do correct this later in the discussion.
One of the most interesting findings for me is that some GB actually have pretty good value. We know that hitting GB is not a bad strategy for players with speed and little power, and to the extent their GB are of the high variety, with relatively high launch angle, one can see why.
Still, I’m surprised that your data indicate that almost half of these GB go for hits. Since your categories are based sheerly on launch angle, I assume that many of these GB would actually be considered line drives by the eye test, in that the batted ball does not actually touch the ground until it reaches the outfield? I have trouble believing that GB in the traditional sense, touching the ground while in the infield, end up as hits such a large fraction of the time. And in fact, I would expect any ball with a launch angle much above zero degrees would not touch the infield.
Ah thanks, I fixed that typo. I meant 2016 had fewer.
Anyways, 10 degrees is, give or take, around the plane of an incoming fastball. Or at least that is what I have been told. So hitting a ball 10 degrees means you’re hitting it on a flat plane relative to the incoming fastball.
Whether you want to consider it a ground ball in the traditional sense is certainly a point for debate. Maybe I should use a totally different name. Ultimately, the qualities of the groups are what should carry the day, not whatever baggage may or may not be associated with words used to describe them.
Thanks for the reply. If I understand you correctly, the fastball is traveling slightly downhill from mound to plate–how much obviously will depend where in the vertical zone it crosses the plate–and a ten degree launch angle means the batted ball is moving upward at the same angle? So that if it hypothetically were hit back to the mound it would end up in the same position it was in when it left the pitcher’s hand?
But if that’s the case, the ball would surely be considered a line drive, but also one catchable by an infielder, unless it were hit to an area that an infielder couldn’t reach, and it seems to me that would be much less than half the time? Well, maybe not, if it were hit hard enough, I guess.
But in any case, as I said before, I’m having trouble seeing any launch angle much above zero degrees as a GB. But maybe I’m overestimating how hard the ball is hit. I guess if a ball is hit fairly weakly at a slightly positive launch angle, it would initially rise, but then arc back to the ground while still in the infield.
Haven’t finished reading this yet, but I am already in love with that graph.
Wow this is fabulous. I love all of this analysis, however I don’t love dribbler groundballs as the name. Dribbler has the connotation of softly hit grounder but there definitely are some hard hit grounders in this category where the “dribbler” label would be very misleading. I can’t really think of a name (such a hypocrite) but I liked Low Groundballs better even though it sounds weird.
Yeah so after thinking about it, the Dribblers might be better named regular grounders and there could be another name for those line drive-ish grounders. Maybe you could do: Ground Balls, Low Line Drives, Line Drives etc.
Andrew, this is extraordinary. I discovered your site a few weeks ago, and I am very appreciative of your efforts. Thanks, and keep at it!
Great analysis! I was trying to use baseballsavant to look at early leaders for this year, but it seems that a lot of the launch angle data is missing.
Have you noticed this? Does it take a few days for all the data to be entered?
Thanks
Yes, statcast has always had/may always have issues reporting data. There were a few games this season where all of the data is missing, every single data point.
In this cases, I go through and try to find the most likely launch angle using a bunch of factors. First, I check to see if the ball is listed as a flyball, line drive, or ground ball by gameday. If it is a ground ball, I call it a DB. If it is a line drive, I throw it into a bucket of GB/LD/HD. If it is a flyball I throw it into a bucket of HF/FB/PU, and if it is a pop up I call it a PU.
Next I check the game result. Singles are called GB, doubles are LD, home runs are FB.
Line outs are GB. Fly outs are FB.
This is the best error correction I have at the moment. In the future I hope to build a more sophisticated model for estimating launch angles using landing position, but I haven’t been able to make a system that is fully reliable yet.
BTW, the categories I made only counted balls with correctly labeled launch angles.
PS. This problem may be the underlying explanation for why HD and LD categories aren’t as stable year to year as the other groups.
Very interesting indeed, and thank you! Is it fair to say, though, that to be useful in forecasting, external information has to be brought to bear, to explain whether or not an observed phenomenon might or might not be short term in nature? So using Goldschmidt as an example, don’t we also need to know if anything occurred last season – injury, tinkering with mechanics, unusually strong schedule against, etc – which indicates that 2016 is an outlier, or conversely, can be reasonably characterized as increased risk – a potential new batted ball profile – going forward? (I know I’m verbose; thanks for your patience.)
Absolutely. Would you use the standard FB% to judge a player all on it’s own? I’d hope not! But it is another tool you can add to your belt. The difference between these numbers and the standard FB/LD/GB numbers isn’t so much year to year value, because they seem roughly equivalent, but rather the increased information held in the numbers.
When you see the standard ground ball you might think, yeah okay but not all ground balls are made the same. Some people can have lots of hits on ground balls while others can’t. Some of that is due to foot speed, no doubt, but not all of it. Same goes for line drives and fly balls. Some guys gets lots of homers on fly balls, others don’t. Some of that is due to raw power, but not all of it.
These numbers do more to highlight the differences in value. The symbols and names might/almost certainly will change. But for now what I am calling GB are mostly singles but rarely doubles and never home runs. What I currently call LD have lots and lots of doubles, almost all of the doubles. These are two very different value points.
If you were to use the standard system, both of these might both be called Line Drives. So you’d have one big Line Drive bucket, and you’d say so and so had X line drives.
Whereas here you can say they had X GB and Y LD.
Say you have two people, and both have 40 line drives in the traditional system.
Then say you took those two guys and used my system, and saw one had 30 GB and 10 LD and the other had 10 GB and 30 LD.
My system highlights the differences between the batters, one is a doubles hitter and the other is a singles hitter. Whereas the traditional line drive stat would only really tell you that they might have a higher BABIP, maybe?
So, that is the sort of value I am aiming for here. They absolutely should be combined with other things as well, they aren’t enough on their own. Like I said up front, these are more for filtering and grouping players.