MLB PREDICTION

Expected Stats Guide: xBA, xSLG, and xwOBA

Traditional baseball statistics tell you what happened. Expected statistics tell you what should have happened. The difference between these two numbers is the most reliable predictor of future performance we have in baseball, and for bettors, it represents one of the few genuine edges available in a highly efficient market.

Expected stats strip away the randomness of where balls land and focus entirely on the quality of contact. A player who hits the ball 110 mph at a 25-degree launch angle (a barrel, as covered in our barrel rate guide) has done his job. Whether that ball is caught by a perfectly positioned outfielder or clears the fence depends on factors outside his control. Expected stats credit him for the quality of the batted ball, regardless of the outcome.

How Expected Stats Are Calculated

MLB's Statcast system tracks every batted ball's exit velocity and launch angle. Using historical data from millions of batted balls, we know the probability of each exit velocity and launch angle combination becoming a hit, a double, a home run, or an out.

A ball hit 95 mph at 15 degrees has historically been a hit about 60% of the time. A ball hit 75 mph on the ground has historically been a hit about 20% of the time. Expected stats aggregate these probabilities across all of a player's batted balls to calculate what their numbers "should" look like.

The core insight: If a player's actual stats differ significantly from their expected stats, luck is involved. Luck is temporary. Regression is coming. This predictability is the foundation of betting edge.

xBA: Expected Batting Average

Expected batting average takes every ball a hitter put in play and calculates what batting average those batted balls should produce based on exit velocity and launch angle. It removes defense, BABIP luck, and park factors from the equation.

Interpreting xBA Gaps

The gap between actual batting average and xBA is pure signal:

Scenario Interpretation Betting Implication
BA exceeds xBA by .030+ Player is overperforming, likely due to BABIP luck Fade hit props, expect regression
xBA exceeds BA by .030+ Player is underperforming, hitting into bad luck Back hit props, expect improvement
Gap under .015 Results roughly match quality of contact No clear edge from this metric

A 30-point gap is significant. If a player has a .240 batting average but a .280 xBA, he's hitting the ball like a .280 hitter but getting .240 results. That 40-point gap cannot persist. The balls he's hitting hard will start falling. His batting average will rise. His hit props are underpriced right now.

Sample Size Considerations

xBA stabilizes relatively quickly compared to actual batting average. After about 100 batted balls, xBA becomes reasonably reliable. Actual batting average requires 400+ plate appearances to stabilize. This means xBA is especially useful early in the season when traditional stats are still noisy.

Betting Tip: In April and May, trust xBA more than actual batting average. A player hitting .200 with a .290 xBA is unlucky, not broken. His hit props are underpriced. By July, the gap between BA and xBA usually tightens as luck evens out.

xSLG: Expected Slugging Percentage

Expected slugging applies the same logic to extra-base hit production. It calculates what slugging percentage a player's batted balls should produce based on how hard and at what angle he's hitting the ball.

Power Regression Signals

xSLG is particularly useful for identifying power regression. A player who has hit 8 home runs but whose batted balls suggest he "should" have hit 14 is due for a power surge. A player with 18 home runs whose contact suggests he "should" have 12 is living on borrowed time.

Home runs are high-variance events. A ball hit 390 feet might leave in one stadium and die at the warning track in another. xSLG smooths out this variance by focusing on the quality of contact rather than the actual outcomes.

Case Study: The Cold May Hitter

A cleanup hitter goes through May hitting .215 with 3 home runs. His slugging is .320, well below his career norms. Panic sets in. His props get discounted.

But his xSLG is .490. His xBA is .275. He's barreling the ball, hitting it hard, doing everything right. The results just haven't come. By June 15, he's hitting .265 with 11 home runs. The market catches up, but for three weeks, his props were free money.

xwOBA: Expected Weighted On-Base Average

xwOBA is the crown jewel of expected statistics. It combines expected batting outcomes with walks and strikeouts to produce a comprehensive measure of expected offensive value. Where xBA only looks at batted balls, xwOBA captures the full picture.

The wOBA framework assigns run values to each offensive event. xwOBA applies this framework to expected outcomes. The result is a single number that tells you how much offensive value a player should be producing based on the quality of his plate appearances.

Why xwOBA Matters Most

For betting purposes, xwOBA is the most actionable expected stat because:

  1. It captures everything: Walks, strikeouts, and batted ball quality all factor in.
  2. It scales directly to runs: Higher xwOBA means more expected run production.
  3. It's highly stable: xwOBA stabilizes faster than most counting stats.
  4. It predicts future wOBA: A player's current xwOBA is more predictive of his future wOBA than his current actual wOBA.

That last point is crucial. If you want to know how a player will perform over the next 30 days, his xwOBA from the last 30 days is a better predictor than his actual wOBA. The expected stat is more predictive than the actual stat. This is the edge.

Finding Betting Value with Expected Stats

Player Props

Expected stats shine brightest in player prop markets. Books set lines based on recent results. When results diverge from expected stats, the line is mispriced.

A hitter with a .340 xwOBA but only a .290 actual wOBA is undervalued. His hits + runs + RBI props are all priced on the weaker actual production. But the underlying quality of contact says improvement is coming. Back his props.

Conversely, a hitter riding a hot streak with a .400 wOBA but only a .330 xwOBA is overvalued. He's getting lucky. The books see the hot streak and inflate his props. Fade them.

Team Totals

Aggregate a lineup's xwOBA and compare it to their recent actual wOBA. If the lineup's actual production has lagged behind their expected production, they're due for a breakout game. Team totals on that breakout are underpriced.

This is especially valuable when a team has been cold for a week but the underlying contact quality hasn't changed. The market sees the cold streak. You see the expected stats that say the bats are about to wake up.

First Five Innings (F5)

F5 betting isolates the starting pitching matchup. Expected stats are particularly useful here because they help you identify when a pitcher has been lucky or unlucky over recent starts.

A starter with a 2.50 ERA but a 4.00 expected ERA (or inflated xFIP) (based on xwOBA allowed and expected stats) is due for regression. His F5 line is priced on the shiny 2.50 ERA. You know that ERA is propped up by luck. Fade him.

Pitching Applications: Expected Stats Against

Everything discussed above applies to pitchers in reverse. Pitchers have xBA against, xSLG against, and xwOBA against numbers. These tell you how opponents "should" be hitting the pitcher based on quality of contact.

Lucky Starters to Fade

When a pitcher's actual stats are significantly better than his expected stats, he's been lucky. Soft contact has found gloves. Fly balls have died at the warning track. This luck will run out.

These pitchers often post low ERAs that draw heavy public action. The market loves a 2.80 ERA. You look at the 3.90 xERA and see the regression coming. Fade the public favorite.

Unlucky Starters to Back

The opposite scenario is equally valuable. A pitcher with a 4.50 ERA but a 3.40 xERA has been victimized by bad luck. His stuff is good. Hitters aren't squaring him up. But bloops are falling and line drives are finding holes.

The market discounts this pitcher. You see the expected stats and recognize he's better than his results suggest. Back him at inflated odds.

Betting Tip: The widest ERA vs. xERA gaps create the best betting opportunities. A 1.00+ run gap in either direction is a screaming regression signal. When you find these, bet aggressively on the regression.

Practical Workflow

Here's how to incorporate expected stats into your daily handicapping:

  1. Pull Baseball Savant leaderboards: Check xwOBA, xBA, and xSLG for both lineups and both starters.
  2. Calculate gaps: Subtract expected from actual. Positive means overperforming. Negative means underperforming.
  3. Flag extreme gaps: Anything over .030 for hitters or 0.50 runs for pitcher xERA is actionable.
  4. Cross-reference with the line: Is the market pricing based on actual or expected? If actual, you may have an edge.
  5. Adjust for sample: Larger gaps are more meaningful with larger samples. Trust 200+ PA gaps more than 50 PA gaps.

Limitations and Cautions

Sprint Speed Matters

Expected stats assume league-average runner speed. A burner like a top-tier speedster will genuinely out-run his xBA because he beats out ground balls that would be outs for slower players. Adjust expectations for elite speed.

Launch Angle Changes

Sometimes a player's actual stats diverge from expected because he's changed his approach. A hitter who has added launch angle to his swing will hit more fly balls that become home runs. His xSLG might lag because it's still based on the old batted ball profile. Watch for mechanical adjustments.

Small Samples Early

Expected stats stabilize faster than actual stats, but they still need sample size. In the first two weeks of the season, even expected stats are noisy. Rely more on projections and previous-year data until the sample builds.

Related Resources