BIP
Balls in play against, measured or not. This is Savant's bip; BBE is the measured subset the exit-velocity columns are taken over.
Agreement with Savant
Checked nightly. Agreement tolerance: ±0.
Shown for: pitcher.
Formula
sum(bip)::int — balls in play, tracked or not: any pitch of type 'X'. This is Savant's own attempts/bip quantity, not our tracked subset.
Inputs
plate_appearances.bip
Era caveats
Bunts leave the averages but stay in these denominators
Savant's bunt handling is asymmetric, and matching the asymmetry is what makes these rates reconcile. Bunts are dropped from the exit-velocity and launch-angle averages, but they remain in bip, the denominator barrel_pct and hardhit_pct both divide by. Measured on 2025: barrel_pct = barrels/bip reconciles 251 of 251 qualified batters, while barrels/bbe manages 182 and barrels/(bip minus bunts) only 115. (runbook §16)
Three tracking systems across the seasons shown
Rows carry a tracking_era of trackman, hawkeye or hawkeye_bat (migration 001). The systems differ in what they measure and how precisely, so long spans cross a measurement boundary as well as a rule one.
Version history
- 2026-08-29 — Surfaced as its own parity-checked metric — previously parsed from the expected-statistics response and never itself judged. Matched Savant on 251/251 batters and 349/349 pitchers (2025) on first measurement. (runbook §49)