Dynasty BaseballDynasty DynamicsUncategorized

Using Statcast in Dynasty Leagues: xwOBA

Statcast has gathering a tremendous amount of data on everything that happens on a major league field since 2015. The sheer volume of new information produced by Statcast can be a little daunting, especially when trying to make fantasy baseball decisions.

In this post, I’d like to produce a rough guide to Statcast’s most important innovation to date: the xwOBA (expected weighted on base average) statistic, and how it can be useful to dynasty fantasy baseball players.

How xwOBA is calculated

Statcast’s most important new empirical contribution is the measurement of two new variables: exit velocity and launch angle. These offer a much more precise way to measure concepts that we’ve used for a long time in player evaluation: hard hit rate, line drive rate, ground ball rate, etc.

However, both exit velocity or launch angle are limited on their own. If we know just the exit velocity of a ball, we don’t know a ton about its likely outcome. A 100 mph ground ball and a 100 mph line drive are very different batted balls. At the same time, a batter may be better off hitting the ball softer. Anyone who has watched a bloop single fall in just between the 2nd baseman and center fielder knows this. The same is true for launch angle- most balls hit at 30 degrees are outs, but pop-ups hit hard enough go over the fence. We need to know both variables to estimate their effect on batting outcomes. For more detail, Rob Arthur of FiveThirtyEight produced this excellent graph showing the relationship between launch angle and exit velocity.

Statcast takes these data points and estimates the expected value of any given batted ball using historical data. Then, they plug these estimates into a statistical model with data on strikeouts, walks, hit by pitches, etc, and try and use these variables to estimate historical wOBA for the average player. This equation produces expected wOBA, or xwOBA.

This new statistic is highly predictive of outcomes- xwOBA predicts about 66% of the variation in wOBA, which is pretty darn good for this kind of data. However, we know that xwOBA misses some things. Faster players will turn ground balls into outs and leg out extra bases. Ballparks change outcomes. Some players are easier to defend against using infield or outfield shifts. All of that and pure random chance represent the 33% of wOBA not predicted by xwOBA.

In general, my advice is to ignore exit velocity and launch angle on their own, and just look at xwOBA.

How to use xwOBA in fantasy baseball

Consider the following statement:

“Marcell Ozuna had a .355 BABIP in 2017. His career BABIP is .325 and the league average is .300. Marcell Ozuna had a career year, hitting .312/.376/.548, .388 wOBA. His future performance will probably regress down to the mean.”

Decent fantasy players have been making observations like this for a decade or more.  If your league is competitive, the information value of the old predictive peripheral statistics (K/BB, BABIP, FIP, etc) is probably mostly exhausted. However, Statcast is still new, and you can exploit it for a competitive advantage.

For example, let’s compare three BABIP standouts: Domingo Santana, Aaron Judge and Joe Mauer. All had BABIPs at .349 or above. Standard pre-Statcast wisdom suggests that we should expect all three BABIPs to regress toward the MLB average .300 going forward, and dynasty owners should consider selling. However, xwOBA tells a different story. Here are each player’s wOBA subtracted from his xwOBA:

  • Domingo Santana: .354 xwOBA – .379 wOBA = -.025
  • Aaron Judge: .446 xwOBA – .441 wOBA = .005
  • Joe Mauer: .373 xwOBA – .357 wOBA = 0.016

Before Statcast, we might look at all three player’s BABIPs, and discount their future performance (especially batting average) based on expected regression. However, Statcast gives us much more information about our expectations for the future. Domingo Santana got lucky last season, and we should expect a pretty big regression downwards. Aaron Judge, on the other hand, had pretty neutral batted ball luck. Joe Mauer actually was modestly unlucky, and could be a pretty good value in late rounds next year.

Let’s take a look at another player: Clayton Kershaw. The best pitcher in the game has batted back problems, had a down year, and still managed to lead the majors in ERA in 2018. However, his home run rate nearly tripled, raising his FIP all the way to 3.07. Father Time is undefeated, and Kershaw is about to enter his age-30 season. Is he beginning to decline, or is he still a pretty safe pick for a pitcher?

Let’s look at Clayton Kershaw’s xwOBA over the past three years:

  • 2015: .228
  • 2016: .224
  • 2017: .253

Kershaw definitely declined in 2017, but a .253 xwOBA is still excellent. He was 4th in the majors behind Chris Sale, Max Scherzer and Corey Kluber, after being in a tier all by himself in 2015 and 2016. In 2016, Kershaw was a full .035 xwOBA better than his next closest competitor, Noah Syndergaard. Kershaw could very well snap back to his previous performance level, but at this point given his injury concerns (and the relative healthiness of the other three), I’d probably draft him a round later than he is going right now.

Practically, How to Access Statcast Data

Statcast doesn’t make it too easy to access their data. Baseball Savant publishes most of it. You’ll want to use their search function for most queries; their leaderboards aren’t particularly useful, with one exception. Statcast hasn’t merged their sprint speed data into the search function, so you’ll have to access that here. You can also search by position.

Here are some common useful searches:

I also typically search for individual players over multiple years. Here is the Kershaw search from earlier.

There was a point in time where fantasy baseball players could look at a player’s FIP or BABIP and acquire a valuable comparative advantage over their competition. Those statistics are far too well known now to provide an advantage against seasoned competition. Statcast is new, and xwOBA in particular is an even more powerful tool than our old peripheral statistics.

The Author

EJ Fagan

EJ Fagan


  1. January 29, 2018 at 10:24 am

    My favorite thing to do with statcast data right now is to look at exit velocity to pull/oppo and center fields, along with assessing how many balls a hitter is putting into the home run launch angles and to study how that changes/fluctuates year to year. Ozuna, cited in the article is an excellent example of PLENTY of exit velocity on home run angle air balls, but he puts so few of his batted balls into those trajectories it’s easy to see him regressing this year.

  2. Alex
    January 30, 2018 at 10:58 am

    I think you inversed your “luckiest” searches? These are actually the unluckiest guys? Or more accurately, the slowest guys 🙂

Previous post

The Low Ceiling Barn(es)

Next post

The Dynasty Guru’s Top 50 Dynasty League Second Basemen, #1-20