MLB Data Warehouse Prospect Reports
Data & methodology
Box scores are the source for season totals and hitter OPS. Pitch metrics come from Minors_Statcast_Master.parquet. The 2025, 2026, and 2025-2026 season selections filter summaries, percentiles, rolling charts, arsenals, and game logs. The level selector applies within the chosen period. Every input is filtered to game_type = R. Combined rates are recalculated from pooled counts; charts break across offseasons and rolling windows restart naturally after the gap. fScores are the supplied model snapshot, unchanged across level splits; 100 is the model’s average index, not a percentile.
Stolen bases: Attempt% = (SB + CS) / (1B + BB + HBP). Success% = SB / (SB + CS). A zero denominator displays a dash. Percentiles rank higher rates higher among hitters in the selected season and level with at least 100 PA and a defined rate.
Rolling windows: OPS uses summed components over the preceding 15 calendar days, including the selected date (date − 14 through date). SIERA uses summed pitch-derived components over 30 calendar days (date − 29 through date). Doubleheaders are combined before rolling. Points appear on dates with games; early windows can be partial. Hover or focus points to inspect the sample.
SIERA: original published model, not a calibrated MiLB ERA forecast. Let K = SO/PA, W = BB/PA, X = (GB − FB − PU)/PA. SIERA = 6.145 − 16.986K + 11.434W − 1.858X + 7.653K² − 6.664X|X| + 10.130KX − 5.195WX. Uses terminal PA flags and mutually exclusive batted-ball types. When a type flag is absent, explicit play descriptions (e.g. “ground ball,” “flies out”) recover the type. Ambiguous events remain unclassified; coverage is shown per split and chart window. Incomplete classification can affect the estimate. No park, level, or run-environment adjustment. Original model ↗
Percentiles: Selected-season same-role players, same selected level; “All levels” uses pooled MiLB totals. Minimum 100 PA (hitters) or 100 batters faced (pitchers); contact metrics also require 30 measured batted balls, pitch metrics 100 pitches. Chase and zone contact instead require 100 located pitches plus 20 outside-zone pitches or in-zone swings. Values are midrank percentiles, reversed when lower is better. Missing or unqualified metrics have no percentile. Cohort size appears on hover. fScores are separate from these percentiles.
Handedness and maps: The pitcher arsenal defaults to All batters, with RHB and LHB options; this control also filters location maps. Hitter split rows use the pitcher’s throwing hand. Switch hitters follow their actual side in each plate appearance. Handedness totals use the available PBP, so they may differ slightly from box-score totals. Pitch maps are smoothed spatial histograms with each pitch type scaled to its own peak; colors show frequency, not quality. Locations are shown from the catcher’s perspective and vertical positions are normalized to each batter’s strike zone. Missing locations and pitches beyond the display frame are counted explicitly.
Hitter zone wOBA assigns each batting outcome to its final pitch’s zone, using the annual MLB weights from FanGraphs Guts. The denominator is AB + unintentional BB + HBP + SF; intentional walks, sacrifice bunts and catcher interference are excluded. Combined seasons pool annual weighted numerators and opportunities. This is not MiLB- or park-adjusted wOBA. Zones with fewer than 10 opportunities remain gray, with their values and samples available. Zone layout follows Statcast: 1–9 inside; 11 upper-left, 12 upper-right, 13 lower-left, 14 lower-right.
BABIP: (H − HR) / (AB − K − HR + SF); undefined denominators show a dash. Headline and season BABIP use box scores; left/right BABIP uses recorded PBP outcomes.
Batted-ball distributions: regular-season AAA and Florida State League measurements, in 5 mph exit-velocity bins and 5° launch-angle bins. Season, level and pitcher-hand filters apply. Missing/invalid measurements are excluded independently, so sample sizes can differ. The final exit-velocity bin includes 130+ mph; launch angles include both endpoints −90° and +90°.
Coverage: exit velocity and hard-hit rate (95+ mph) use batted balls with positive measured EV. Barrel rate uses measured EV and launch angle with the source barrel flag. Whiff = misses / swings. Chase = swings at outside-zone pitches / outside-zone pitches. Zone contact = in-zone contacts / in-zone swings. Both use actual Statcast zones (1–9 inside, 11–14 outside) in tracked AAA/FSL games; missing locations are excluded. Swing% = swings / recorded pitches. Headline BB% uses box-score walks / PA; handedness BB% uses recorded PBP walks / PA. The earlier derived “2” zone flags are not used. Empty physics fields are unavailable, never zero. Birth dates and bio fields come from the supplied mlbplayerinfo.csv, with pitch/box-source fallback for other bio fields. Current age is calculated from birth date using today’s date in Indianapolis and does not change with the season filter. Pitcher innings in the source use .33/.67; converted to integer outs before aggregation.
Pitch arsenal: only tracked AAA and Florida State League (A) games are included. Pitch usage is a share of named tracked pitches, not an estimate of untracked games. iVB and HB use explicit MLB Stats API breakVerticalInduced and breakHorizontal measurements in inches; legacy pfx_x / pfx_z are not relabeled as these fields. HB is normalized to arm-side positive / glove-side negative using throwing hand. Color comparisons use the same pitch type, throwing hand, season selection, and level. At least 50 pitches and 30 metric measurements (or 30 swings for whiff) are required, with at least 15 peers. Higher velocity, whiff and extension receive warmer shading. Spin, iVB and HB shading follows the direction of their observed rank correlation with whiff when at least 20 peers and |correlation| ≥ 0.20; otherwise it stays neutral. This is a descriptive peer comparison, not a validated pitch-quality model. Sample size and usage receive neutral shading. iVB definition ↗
Only the levels actually present in the source are offered. Source dates and box-score/pitch coverage can differ; each split shows coverage. SIERA reflects available pitch records. No expected-stat or proprietary Prospect Savant models are copied.
Main site ↗