Stats for The Matchup — Offensive Evaluation
The stats DMP uses to evaluate hitters and matchups, and why BA, RBIs, and hot streaks mislead
You should read this if:
You bet MLB props and want to understand the mental models that drive outcomes.
The Core Insight
"wOBA properly weights every offensive event by its actual run value. Batting average ignores walks and treats all hits equally. OPS incorrectly weights OBP and SLG 1:1 when OBP is worth roughly 2x."
The MLB Mental Model
wOBA (use) vs BA (misleading)
Weights: BB .69, 1B .88, 2B 1.25, HR 2.03
Predicts: True offensive skill. Excellent: .390+, Great: .370, Average: .320, Awful: .290-
ISO (use) for power props
SLG minus BA — strips out singles, pure extra-base power
Predicts: HR and TB potential. Excellent: .250, Great: .200, Average: .140, Awful: .080
Barrel Rate (Statcast)
98+ mph exit velo at optimal launch angle
Predicts: Best single predictor of power output. Top hitters barrel 10%+ of PA.
Never use: BA alone, RBIs, hot streaks
BA ignores walks. RBI is 60% lineup context. Hot streaks are random noise.
Predicts: Nothing reliable — these are contaminated or context-dependent stats
The Hitting Stats That Matter
The book is explicit: replace batting average with wOBA, RBIs with lineup context, and hot streaks with Statcast expected stats. Every metric below does one specific job for prop modeling — power projection, contact projection, regression signal, or matchup adjustment.
wOBA (Weighted On-Base Average)
Overall offensive skillTom Tango's stat from The Book. Every offensive event gets a linear-weight run value (BB .69, 1B .88, 2B 1.25, 3B 1.58, HR 2.03) and the whole thing is scaled to look like OBP.
Why it matters
OPS weights OBP and SLG equally, even though OBP is worth roughly 2× SLG in run production. wOBA fixes that. BIG-IDEAS.md calls it "the best single number for offensive skill."
How to use it
Use wOBA as the baseline offensive-quality input for every batting prop. Replace any BA-based or OPS-based ranking with wOBA, then adjust for matchup, park, and weather on top.
| Tier | Value | What it means |
|---|---|---|
| Elite | .390+ | Top-10 hitter in baseball — any prop is live |
| Great | .370 | All-Star level — offensive props lean over |
| Average | .320 | League-average regular |
| Poor | ≤ .290 | Bottom-of-lineup — fade offensive overs |
xwOBA (Expected wOBA)
Statcast regression signalStatcast's expected wOBA computed from each batted ball's exit velocity, launch angle, and the batter's sprint speed. Strips out fielding luck and park quirks.
Why it matters
The book's Vogelbach example: .295 wOBA, .359 xwOBA — the market was pricing the bad luck, he became an All-Star when reality caught up. The xwOBA−wOBA gap is "the most actionable regression signal in baseball."
How to use it
Gap > .030 (xwOBA above wOBA) = buy hits/TB overs on the hitter. Gap > .030 (wOBA above xwOBA) = fade hits/TB overs, the hot streak is luck. Applied in reverse to pitchers: low wOBA-against but high xwOBA-against means ERA is about to rise.
| Tier | Value | What it means |
|---|---|---|
| Elite | .390+ | Statcast says this is a top hitter |
| Great | .370 | All-Star underlying quality of contact |
| Average | .320 | League-average BBE quality |
| Poor | ≤ .290 | Weak contact — fade offensive overs |
"A hitter with a .295 wOBA but .359 xwOBA is getting unlucky... this gap is the most actionable regression signal in baseball." — BIG-IDEAS.md
ISO (Isolated Power)
Power rateSLG minus BA. Strips singles entirely and isolates pure extra-base production. A .250 ISO means the average BIP produces an extra quarter of a base beyond the single.
Why it matters
It's the cleanest input for HR, TB, and doubles projections — BA-contaminated SLG over-rewards BABIP-inflated singles. ISO stabilizes at ~160 PA (mid-May).
How to use it
Primary input for TB and HR projections. Combine with FB% and barrel% to project HRs = FB × HR/FB. High ISO + low K% = target TB overs; high ISO + high K% (slugger) = target HR overs but fade hits overs.
| Tier | Value | What it means |
|---|---|---|
| Elite | .250+ | Elite power — HR/TB overs are the play |
| Great | .200 | Plus power, HR props live |
| Average | .140 | League-average pop |
| Poor | ≤ .080 | Slap hitter — fade TB/HR overs |
wRC+ (Weighted Runs Created Plus)
Park/era-adjusted overallwOBA translated into runs created, then adjusted for park and league, then scaled so 100 = league-average. A wRC+ of 150 means 50% better than league-average at creating runs.
Why it matters
Best single-number cross-park, cross-era hitter quality metric. Handy as an opposing-lineup strength input when you don't want to manually aggregate nine players.
How to use it
For pitcher K/ER projections, use opposing team-wRC+ (or sum of lineup wRC+) as a lineup-quality adjustment. For individual hitter props, use it as a screening sanity check against wOBA.
| Tier | Value | What it means |
|---|---|---|
| Elite | 160+ | MVP-caliber hitter |
| Great | 140 | All-Star level |
| Average | 100 | League-average |
| Poor | ≤ 60 | Bench-level bat |
Barrel %
Statcast contact qualityA "barrel" is a batted ball with 98+ mph exit velocity at an optimal 26–30° launch angle (the window widens with higher velos). Barrel% is how often a hitter creates one.
Why it matters
Barrel% is the single best predictor of power output — those balls produce a historical .500+ BA and 1.500+ SLG. Stabilizes faster than HR rate, so rising barrel% flags future HR spikes before the market adjusts.
How to use it
Primary leading indicator for HR and TB overs. When barrel% trends up but HR counts haven't followed, buy HR overs early. Barrel% + hitter park + wind out = HR stack.
| Tier | Value | What it means |
|---|---|---|
| Elite | 12%+ per BBE | Top-decile power threat |
| Great | 9% | Plus power |
| Average | 6 – 7% | League-average |
| Poor | < 4% | Weak power — fade HR overs |
Hard-Hit %
Statcast contact qualityShare of batted balls at 95+ mph exit velocity. Broader net than barrel% — captures quality of contact regardless of launch angle.
Why it matters
Hard-Hit% stabilizes earlier than barrel% or HR rate. Rising Hard-Hit% with flat BABIP is a regression-up signal on hits and TB.
How to use it
Quick contact-quality check. High Hard-Hit% + below-career BABIP = buy hits/TB overs — the results are due to catch up.
| Tier | Value | What it means |
|---|---|---|
| Elite | 45%+ | Elite contact; expect BABIP bounce |
| Great | 42% | Plus contact |
| Average | 37% | League-average |
| Poor | < 32% | Weak contact; fade offensive overs |
Exit Velocity (EV)
Statcast inputHow hard the ball leaves the bat, measured by Statcast radar. Reported as average EV and max EV across a hitter's batted balls.
Why it matters
The single biggest determinant of batted-ball outcome quality and the foundation input for xBA, xSLG, and xwOBA.
How to use it
Track average EV trend — rising trend predicts xSLG rise, which predicts TB/HR overs before the market catches the signal.
| Tier | Value | What it means |
|---|---|---|
| Elite | 92+ mph avg / 113+ max | Top-decile raw power |
| Great | 90 / 110 | Plus power |
| Average | 88 / 107 | League-average |
| Poor | < 86 / < 105 | Below-average — fade power props |
Launch Angle (LA)
Statcast inputVertical angle of the ball off the bat in degrees. The "sweet spot" is 8–32°; the barrel window is 26–30° at 98+ mph.
Why it matters
Launch angle determines how exit velocity converts to outcomes. Too low = grounders (.240 BABIP); too high = pop-outs; sweet spot = extra bases.
How to use it
LA drift down (to 8° or below) + power hitter = fade TB/HR overs. LA drift up into 12–18° with steady EV = buy HR overs.
| Tier | Value | What it means |
|---|---|---|
| Elite | 12 – 18° avg | Power-optimized swing |
| Great | 10 – 20° | Strong launch-angle profile |
| Average | 8 – 12° | Line-drive tilt — contact profile |
| Poor | < 5° or > 25° | Grounder-heavy or popup-heavy |
K% (Batter)
Plate disciplineStrikeouts divided by plate appearances. The single most stable skill metric in baseball — stabilizes in ~60 PA.
Why it matters
A strikeout = zero chance of a hit, TB, RBI, or run scored on the at-bat. K% is the primary cap on everything else: Hits = PA × (1 − K%) × BABIP + HR.
How to use it
Low K% (contact hitters) + low-K pitcher matchup = hits overs. High K% hitter vs K-artist with platoon disadvantage = batter K over goldmine.
| Tier | Value | What it means |
|---|---|---|
| Elite | ≤ 13% | Elite bat-to-ball — target hits overs |
| Great | 16% | Above-average contact |
| Average | 22% | League-average |
| Poor | ≥ 28% | Strikeout machine — target K overs, fade hits |
BB% (Batter)
Plate disciplineWalks divided by plate appearances. Second most stable batter skill (~120 PA).
Why it matters
Walks are runs scored (via OBP) but not hits. High-BB% patient hitters can run Hits unders even with good overall offensive quality.
How to use it
High BB% + strong lineup behind = Runs prop over lean. High BB% + weak park for BIP hits = Hits under lean.
| Tier | Value | What it means |
|---|---|---|
| Elite | 15%+ | Elite plate discipline — Runs overs |
| Great | 12% | Plus discipline |
| Average | 8.5% | League-average |
| Poor | < 5% | Hacker — low BB prop ceiling |
BABIP (Batter)
Regression signalBatting average on balls in play — hits minus HR divided by AB minus K minus HR plus SF. League average hovers around .300, but individual hitters sustain different norms based on line-drive rate and speed.
Why it matters
The book's #1 regression signal. BABIP doesn't fully stabilize until ~820 PA (late July), so early-season BA is noise. But deviation from a hitter's career BABIP is the cleanest buy/sell signal in the sport.
How to use it
Current BABIP 50+ points above career → fade hits overs (regression down). 50+ below career + elite Hard-Hit% → buy hits overs (regression up). Don't trust April hits props driven by BABIP spikes.
| Tier | Value | What it means |
|---|---|---|
| Elite | .350+ (sustainable for speed + LD) | High-contact, high-speed; may be legit |
| Great | .320 | Above-average BIP luck or LD skill |
| Average | .300 | League-average; no signal |
| Poor | ≤ .260 | Unlucky — expect regression up |
xBA (Expected Batting Average)
Statcast regression signalStatcast's expected BA from each batted ball's EV, LA, and the batter's sprint speed.
Why it matters
True-talent hit rate with fielding and park luck removed. Most useful early in the season before BABIP stabilizes — xBA is an early lifeline.
How to use it
xBA > BA by ≥ .030 = hits-over signal for the next game. xBA < BA by ≥ .030 = fade hits overs on the current hot streak.
| Tier | Value | What it means |
|---|---|---|
| Elite | .300+ | Elite contact quality |
| Great | .280 | Above-average |
| Average | .250 | League-average |
| Poor | < .230 | Weak contact — fade hits overs |
xSLG (Expected Slugging)
Statcast regression signalStatcast's expected slugging from EV, LA, and sprint speed on each batted ball.
Why it matters
True-talent power output without park/defense noise. Especially valuable in April/May before SLG stabilizes.
How to use it
xSLG > SLG by > .030 = buy TB overs. Combine with rising barrel% for a high-conviction power stack.
| Tier | Value | What it means |
|---|---|---|
| Elite | .550+ | Elite power |
| Great | .500 | Plus power |
| Average | .420 | League-average |
| Poor | ≤ .380 | Weak power |
Platoon Splits (vs LHP / vs RHP)
MatchupPerformance split by opposing-pitcher handedness. The book calls this "the biggest free edge in baseball props" — a .280 hitter overall might be .220 against one hand.
Why it matters
The market often prices the overall wOBA without fully adjusting for today's specific starter's handedness. Splits can move expected output 20–30%.
How to use it
Always check today's starter handedness. Confirmed lineup is non-negotiable for platoon specialists. A stacked same-handed lineup vs. a matching-hand starter = fade the lineup.
| Tier | Value | What it means |
|---|---|---|
| Elite | 80+ wOBA pt gap | Extreme platoon split — must verify matchup |
| Great | 50 pts | Meaningful platoon tilt |
| Average | 25 pts | Typical handedness effect |
| Poor | < 15 pts | Low split — handedness doesn't move projection |
Framework in Action: Why RBIs Are Assists, Not Skill
Mike Trout had fewer RBIs than Albert Pujols not because Trout was worse, but because Trout did not have Trout batting in front of him. To model RBI props, you need to model the lineup — who bats ahead, what is their OBP, how many runners will be on base. The individual hitter's skill is about 40% of the equation.
When to Apply This Framework
- ✓Use wOBA as the baseline offensive skill metric, never BA or OPS
- ✓Use ISO for power-dependent props (TB, HR) — it isolates extra-base ability
- ✓Platoon splits are the #1 matchup variable — 20-30% swing based on handedness
When to Pass
- ⚠️Never use batting average alone to evaluate a hitter
- ⚠️Never treat RBIs as individual skill — model the lineup context
- ⚠️Never trust hot streaks as predictive — check BABIP first
Key Takeaways
- ✓OBP is worth roughly 2x SLG in driving runs, but OPS treats them equally — use wOBA instead
- ✓Platoon splits are persistent, measurable, and large — the single biggest free edge in matchup analysis
- ✓Barrel rate is the Statcast metric that matters most for power props
How DMP Helps
DMP uses wOBA and ISO as primary offensive inputs, shows platoon split data, and surfaces barrel rate for power props.