Two weeks of swing decisions tells you something. Two weeks of results doesn’t.
The finding Across two seasons of Triple-A data, a hitter’s chase rate and whiff rate over two weeks carry real information about the next two weeks (r ≈ 0.5). Two weeks of xwOBA barely does (r = 0.14), and two weeks of wOBA even less (0.09). For pitchers, fastball velocity is almost perfectly stable from one fortnight to the next (0.96), while strikeout and walk rates are weak (0.21) and whiff rate only a little better (0.28), and contact allowed is close to noise.
So what
- Short-window reports should lead with process, not outcomes. For a hitter, a two-week change in chase or whiff rate is worth bringing to a coach. A two-week jump in xwOBA usually isn’t, by itself.
- For pitchers, velocity is the two-week number to watch. A sustained velocity change is real almost immediately. A two-week walk-rate spike is a reason to check the video and location data, not a conclusion.
- Pair every short-window number with its sample size. That’s why every Δ14 in the Triple-A explorer sits next to the season line and only gets flagged above a minimum number of PA or batters faced.
How much does a two-week number carry into the next two weeks?
Correlation between consecutive 14-day windows, players with 25+ PA (hitters) or 25+ batters faced (pitchers) in both. Triple-A, 2025 and 2026. Higher means two weeks of the number reflects the player more than the noise.
See the noise for yourself
Each dot is one player in one fortnight, plotted against the same player in the next fortnight. Tight around the diagonal means stable. A round cloud means two weeks of that number is mostly luck.
What this means for a daily report
A player development report has three jobs: show what changed recently, show where the player stands against the league, and, for pitchers, show what each pitch looks like. The results above shape the first job most. The Triple-A explorer applies them:
- Hitter flags use swing decisions and contact quality: chase rate moving 5+ points, or hard-hit rate moving 10+, over the final 14 days with at least 30 PA. Hard-hit rate is the most stable contact measure here (0.37), well ahead of xwOBA.
- Pitcher flags lead with velocity: a 1+ mph change in the primary fastball over 10+ batters faced. They also flag walk-rate jumps of 5+ points and whiff-rate jumps of 7+, but with carry-over of 0.21 (walks) and 0.28 (whiffs), read those as “go look,” not “something changed.”
- League percentiles use the full season, where sample size is no longer the main problem, and every rate is oriented so a higher percentile is always better.
Browse it for any club: Triple-A explorer. Or open any player page, like this one, for the one-page version.
Method and caveats
Windows. Each season is split into consecutive 14-day blocks from opening day. A player-fortnight counts if the player had 25+ plate appearances (hitters) or 25+ batters faced (pitchers). Pairs are the same player in block k and block k+1 of the same season: 5,086 hitter pairs and about 2,810 pitcher pairs across 2025 and 2026.
Definitions. Swings exclude bunt attempts. Whiffs include foul tips (matching Baseball Savant). The zone is Statcast zones 1–9. Hard-hit means 95+ mph exit velocity. xwOBA uses expected wOBA on balls in play and actual values on strikeouts, walks, and hit-by-pitches. Fastball velocity is the average of four-seamers and sinkers.
What the correlation means. It measures how consistently two weeks of a number ranks players, so it mixes real differences between players with week-to-week noise. A low correlation doesn’t make a metric useless over a season. It means two weeks isn’t enough to read it.
Caveats. Players who get promoted, demoted, or hurt drop out of the pairs. Triple-A rosters churn, so the pool skews toward players who stayed put. Correlations here are for Triple-A; the levels of noise will differ elsewhere.
Pipeline. The explorer’s numbers come from a dbt project on DuckDB: staging (one row per pitch with swing, contact, and zone flags), intermediate season-to-date and trailing-window profiles, and marts with league percentiles and change flags. Tests on keys, ranges, and proportions run with every build, and the run date is a variable, so any day of the season can be rebuilt as it looked then.
Code:baseball/two_week_signal/ · baseball/pd_pipeline/