Expected batting average (xBA) is formulated using the Statcast metric Hit Probability, which was introduced before the 2017 season.
With Hit Probability, each batted ball is assigned a percentage based on how often comparable balls -- in terms of exit velocity, launch angle and, on certain types of batted balls, Sprint Speed -- have become hits since Statcast was implemented Major League wide in 2015. (As of January 2019, Hit Probability now factors in a batter's seasonal Sprint Speed on "topped" or weakly hit" balls). For example, a line drive to the outfield with a Hit Probability of 70 percent is given that figure because balls with a similar exit velocity and launch angle have become hits seven out of 10 times.
Knowing the expected outcomes of each individual batted ball from a particular player over the course of a season allows for the formation of said player's expected batting average on balls in play. Real-world strikeout totals are then added in, resulting in a player's seasonal expected average based on the quality of contact, instead of the actual outcomes. Likewise, this exercise can be done for pitchers to get their expected batting average against.
Why it's useful
Expected batting average is more indicative of a player's skill than regular batting average, as xBA removes defense from the equation. Hitters, and likewise pitchers, are able to influence exit velocity and launch angle but have no control over what happens to a batted ball once it is put into play.
For instance, Tigers first baseman Miguel Cabrera posted a .249 average in 2017. But based on the quality of his contact, his expected batting average was .290.
Watch: Aaron Judge records a batted ball with an expected batting average of .910 that is robbed by Jackie Bradley Jr.