Scoring Guide

How the system works and what to look for when making your BTS picks

Understanding the Three Metrics

Every batter gets three independent numbers. Each one tells you something different.

Score (0-100)

A weighted algorithm that grades the batter across 15 factors — recent performance, contact quality, matchup against the opposing pitcher, ballpark, and more. Think of it as a “matchup quality” rating. Higher is better, but the number alone doesn’t account for how many plate appearances the batter will get.

Hit Probability (50-90%)

The score converted to “what are the odds this batter gets at least one hit today?” This is the primary metric for BTS picks. It accounts for lineup position — a leadoff hitter with the same score as a 9-hole hitter will have a higher hit probability because they get more plate appearances.

ML Probability (55-75%)

An independent machine learning model (LightGBM) trained on 180,000+ historical batter-games across 7 seasons. It uses 23 raw features and doesn’t know about the score — it’s a completely separate second opinion. When Hit Prob and ML Prob agree, you can be more confident in the pick.

Which one should I use? Hit Probability is the primary ranking metric — it’s what the “Hit Prob” tab sorts by. Use ML Probability as a confidence check. When both agree on a pick, that’s your strongest signal.

How the Score is Built

The 100-point score is the sum of 15 weighted factors. Each factor is normalized to 0-1 based on league targets, then multiplied by its weight. The categories below show where the points come from.

Plate Discipline

23 pts
Contact Rate16
K Rate (inverted)7

Contact rate is the single strongest predictor of getting a hit. Batters who put the ball in play give themselves a chance on every swing. K rate is inverted — lower strikeout rates score higher.

Performance

31 pts
Season BA10
Last 15 Games BA8
Last 7 Games BA7
Career BA6

Who’s hot right now? Recent batting averages capture streaks and slumps. Career BA provides a stable baseline that isn’t affected by small sample sizes early in the season.

Expected Metrics

11 pts
xBA (expected batting avg)6
xwOBA (expected weighted OBA)5

Statcast data based on exit velocity and launch angle. These measure how hard and how well a batter is hitting the ball, regardless of whether fielders happened to catch it. They strip out luck.

Contact Quality

11 pts
Hard Hit Rate6
Line Drive Rate5

Hard-hit balls (95+ mph exit velo) and line drives are the types of contact most likely to become hits. A batter who barrels everything but hits it right at fielders will still show up well here.

Matchup & Context

24 pts
Pitcher Recent Form8
Sprint Speed6
Batter vs. Pitcher4
Ballpark Factor3
Bullpen Quality3

The opposing pitcher’s recent form matters most here. Sprint speed captures infield hit potential. BvP uses historical head-to-head data (requires 5+ at-bats). Hitter-friendly parks like Coors Field provide a small boost.

BvP Redistribution

When the batter has fewer than 5 career at-bats against today’s pitcher, the BvP data is unreliable. Its 4 points get redistributed to K rate, contact rate, pitcher form, line drive rate, and L15 BA — factors with more stable data.

Modifiers That Adjust the Score

After the 15 weighted factors are totaled, modifiers are applied on top. These capture matchup dynamics that don’t fit neatly into a single stat.

ModifierEffectWhy it matters
Platoon advantage+2 to +4Left-handed batters crush right-handed pitchers and vice versa. The biggest boost (+4) goes to LHH vs RHP. Switch hitters get +3.
Same-hand disadvantage-3Same-hand matchups (RHH vs RHP, LHH vs LHP) are harder. Breaking balls move away from same-side hitters.
Elite pitcher penalty-3 to -15Based on the pitcher’s blended FIP (current + prior season). Grade 5 aces (FIP < 2.50) also reduce the batter’s xBA and xwOBA scores by 20% before the subtotal.
Weak pitcher bonus+3 to +10Pitchers with a blended FIP of 4.50+ are giving up hits to everyone. The bonus scales up to +10 for truly bad pitchers (FIP 5.50+).
BABIP correction0 to -4Batters with an unsustainably high batting average on balls in play (BABIP > .340) who are also significantly outperforming their career average get a small haircut. Requires 100+ PA.
Injury risk-2Flat penalty if the batter has a recent injury flag. They may leave the game early, reducing plate appearances.

How Pitcher Quality is Measured (FIP)

The elite and weak pitcher grades above are driven by FIP (Fielding Independent Pitching) rather than ERA. FIP isolates what the pitcher actually controls — strikeouts, walks, and home runs — and strips out defense and luck.

FIP = ((13 × HR/9) + (3 × BB/9) - (2 × K/9)) / 9 + constant

The constant (currently 3.10) calibrates FIP to league ERA. It drifts slightly year to year as league run environment changes.

Early in the season a pitcher may have only a few innings pitched, making their current FIP unreliable. The system blends current and prior-season FIP using the Marcel reliability formula:

weight = IP / (IP + 50)

blended FIP = weight × current FIP + (1 - weight) × prior FIP

Season point~IPCurrent weightPrior weight
Opening day00%100%
1st start610.7%89.3%
1 month3037.5%62.5%
Mid-season10066.7%33.3%
Full season18078.3%21.7%

For rookies or pitchers with fewer than 30 IP the previous season, the prior FIP defaults to the league average (4.00). This means unknown pitchers are treated as average until they prove otherwise.

From Score to Hit Probability

The raw score (0-100) is converted into a per-game hit probability using a calibrated sigmoid function fitted against 7 seasons of historical outcomes. The key insight: lineup position matters because batters higher in the order get more plate appearances per game.

How it works:

  1. The score is fed through a sigmoid function to get a base probability of getting a hit in the game (calibrated at league-average 3.89 PA/game)
  2. That probability is inverted to find the per-plate-appearance hit rate
  3. The per-PA rate is expanded back using the batter’s expected plate appearances based on lineup position (leadoff = 4.65 PA, 9th = 3.75 PA)

This is why a leadoff hitter with a score of 60 can have a higher hit probability than a 9-hole hitter with a score of 70.

ScoreBase P(hit)Leadoff (#1)Cleanup (#4)7-hole (#7)9-hole (#9)
4059.2%72.6%68.5%65.5%63.7%
5063.1%77.8%73.6%70.4%68.8%
6066.9%81.7%78.0%75.1%73.4%
7070.4%85.2%81.8%79.2%77.6%
8073.7%88.0%85.2%82.8%81.5%

Expected PA by lineup position: #1 = 4.65, #2 = 4.53, #3 = 4.31, #4 = 4.19, #5 = 4.07, #6 = 3.95, #7 = 3.89, #8 = 3.82, #9 = 3.75

The ML Model — A Second Opinion

The ML probability comes from a LightGBM model that was trained completely independently from the scoring formula. It sees raw data, not scores.

Training data

180,000+ historical batter-game records from 2019-2023. Each record has 23 features built from rolling stats (not end-of-season aggregates) to avoid lookahead bias. The model learned what patterns predict hits from real in-season data.

What it knows

23 features including batting averages (L7, L15, season, career), prior-season pitcher stats (ERA, WHIP, FIP, K/9), Statcast metrics (xBA, xwOBA), hard hit rate, sprint speed, rest days, home/away, lineup position, ballpark factor, and platoon matchup.

Historical performance

59.1%

Baseline hit rate (any starter)

64.2%

Top 10% picks hit rate

67.2%

Top 5% picks hit rate

Confidence indicator: When Hit Prob and ML Prob agree within 3 percentage points, the card shows a “High confidence” badge. When they disagree by 10+ points, you’ll see a “Low confidence” warning. This doesn’t mean the pick is bad — just that the two methods see different things.

Season Benchmarks — What’s a Good Pick?

The PA confidence system (explained below) compresses scores early in the season. As batters accumulate plate appearances, the system trusts current-season data more and the spread between good and average picks widens. Here’s what to look for at each phase.

Season Phase~PAGood ScoreGood Hit ProbGood ML ProbWhat’s driving picks
Opening week2458+77%+63%+Career stats, pitcher matchup, handedness, ballpark
2-3 weeks48-7262+79%+65%+K% and contact rate unlocked; batting averages emerging
1 month10465+81%+67%+BA, hard hit, line drive rate at ~70% confidence
6 weeks15668+83%+69%+Nearly full fidelity; xBA/xwOBA at ~78%
2+ months208+70+84%+70%+All metrics at full confidence; maximum spread
Early-season context: A 3-4% edge in hit probability is meaningful early on because the spread between batters is tight. Don’t expect 85%+ picks in the first few weeks — those thresholds only become realistic once the system has enough data to fully differentiate batters.

The PA Confidence System

The system doesn’t fully trust a .400 batting average after 20 at-bats. Each metric’s contribution is blended toward a neutral midpoint until the batter has accumulated enough plate appearances for the stat to stabilize.

Fast Tier

Full trust at 60 PA

~2-3 weeks of games

K rate and contact rate. These stabilize quickly because they’re based on every plate appearance, not just hits.

Medium Tier

Full trust at 150 PA

~6-7 weeks of games

Season BA, L7/L15 BA, hard hit rate, line drive rate, sprint speed. These need more data to be reliable signals.

Slow Tier

Full trust at 200 PA

~8-9 weeks of games

xBA and xwOBA. Statcast expected metrics need the most data because they rely on batted ball distributions that take time to stabilize.

What about career BA and pitcher matchups?

About 24% of the score comes from factors that don’t depend on current-season plate appearances at all — career batting average, opposing pitcher form, ballpark factor, and bullpen quality. These are reliable from day one, which is why the system can still differentiate batters on Opening Day, just not as aggressively as mid-season.

Tips for Making BTS Picks

1

Use Hit Probability as your primary metric

It accounts for lineup position, so a leadoff hitter with a good score is better than a 9-hole hitter with a great score. The “Hit Prob” tab is the default sort for this reason.

2

Look for agreement between Hit Prob and ML Prob

When both methods rank a batter highly, that’s your strongest signal. The “Combined” tab does a 3-way rank average across Score, Hit Prob, and ML Prob to surface consensus picks.

3

Favor leadoff and 2-hole hitters

They get ~4.5-4.65 plate appearances per game vs ~3.75-3.89 for the bottom of the order. That extra plate appearance is roughly a 5-8% boost in hit probability at the same score.

4

Avoid batters facing elite pitchers

Even great hitters struggle against grade 3+ pitchers. A -8 to -15 point penalty is significant. Check the opposing pitcher’s elite grade in the matchup info on each card.

5

Early in the season, lean on matchups

Career batting average, platoon advantage, weak pitcher bonuses, and ballpark factors are all reliable from day one. Current-season stats take weeks to become trustworthy.

6

Small edges matter — you're playing the long game

A 3-4% edge in hit probability doesn’t sound like much, but over 57 picks in a BTS streak attempt, it compounds significantly. Consistent small edges beat occasional home runs.