The Model

How MLB EdgeFinds the Edge

A transparent look at the data sources, projection engine, and mathematical framework that powers every recommendation on the platform.

Four Data Sources. One Model.

Every projection is built from live, authoritative data — no guesswork, no outdated databases.

Official league data

MLB Stats API

  • Full season batting & pitching stats
  • Game-by-game logs for every player
  • Lineup confirmations (day-of)
  • Probable starter assignments
  • Home/away splits, platoon data
Real-time market data

The Odds API

  • Moneyline odds from 8+ sportsbooks
  • Run line (spread) markets
  • Over/Under totals
  • Live line movement tracking
  • Consensus implied probability
Hyper-local weather

Open-Meteo

  • Wind speed & direction at first pitch
  • Temperature & humidity
  • Precipitation probability
  • Park-relative wind impact (in/out/cross)
  • Runs-scored adjustment factor
Venue-specific adjustments

Park Factor Database

  • Multi-year park factor coefficients
  • HR, runs, hits, and K adjustments
  • Left/right field wall profiles
  • Altitude effects (Coors, Chase)
  • Day/night game splits

The 7-Step Projection Engine

Each game goes through a sequential adjustment pipeline. Every step refines the probability estimate using a new layer of real-world data.

01

Pythagorean Run Expectation

We start with each team's season-to-date run differential and apply the Pythagorean Win Expectation formula (RS² / (RS² + RA²)) to establish a baseline win probability. This captures true team quality better than raw win-loss records, which are heavily influenced by one-run game luck.

Win% = RS² ÷ (RS² + RA²)
02

Starting Pitcher Adjustment

The starting pitcher is the single biggest variable in any MLB game. We pull each starter's ERA, FIP, xFIP, WHIP, K/9, and BB/9 for the current season. FIP (Fielding Independent Pitching) is weighted more heavily than ERA to strip out defense and luck. The pitcher's quality is then used to shift the run expectation up or down from the team baseline.

Adj. Runs = Base Runs × Pitcher FIP Factor
03

Lineup Strength Scoring

When confirmed lineups are available, we score each lineup 0–100 based on the OPS, wRC+, and recent form of the 9 batters. A lineup missing its top 3 hitters scores significantly lower than a full-strength lineup. This score adjusts the team's projected run total — a weak lineup facing an ace is a very different game than a full-strength lineup vs. a back-end starter.

Lineup Score = Σ(wRC+ × Slot Weight) / 9
04

Park Factor Application

Every MLB park plays differently. Coors Field inflates runs by ~30%. Petco Park suppresses them by ~12%. We apply multi-year park factor coefficients to both teams' projected run totals, adjusting for the specific venue's effect on hits, home runs, and total scoring. This is especially critical for Over/Under bets.

Adj. Runs = Projected Runs × Park Factor
05

Weather Overlay

Wind is the most impactful weather variable in baseball. A 15+ mph wind blowing out to center field can add 10–15% to run totals. Wind blowing in suppresses offense. We fetch hyper-local forecasts for each park at first pitch time and calculate a directional wind impact factor. Temperature and humidity also affect ball flight, particularly at altitude.

Wind Factor = Speed × cos(Angle to CF) × 0.008
06

Expected Value Calculation

After all adjustments, we have a model win probability for each team. We convert this to an implied fair-value moneyline and compare it to the market odds. If our model says a team has a 58% chance of winning but the market is pricing them at 52% (implied), that's a +EV bet. We only surface bets where the edge exceeds our minimum threshold.

EV = (Win% × Profit) − (Loss% × Stake)
07

Kelly Criterion Sizing

Knowing a bet has positive expected value isn't enough — you also need to know how much to bet. The Kelly Criterion calculates the mathematically optimal bet size as a fraction of your bankroll to maximize long-run growth while avoiding ruin. We display both full Kelly and fractional Kelly (25%) recommendations, since full Kelly can be aggressive for most bettors.

Kelly % = (bp − q) ÷ b

Why This Approach Works

Most bettors lose because they rely on gut feel, recency bias, and incomplete information. The model eliminates all three.

Real-Time Data

Lineup data updates within minutes of official confirmation. Odds refresh continuously. You're never betting on stale information.

No Recency Bias

The model doesn't overreact to last night's box score. It weights full-season data appropriately, smoothing out hot/cold streaks that fool casual bettors.

Multi-Factor Confluence

A bet only gets a high confidence rating when multiple factors align — good pitcher matchup AND favorable park AND weather AND lineup edge. Confluence = conviction.

Transparent Math

Every projection shows its components. You can see exactly why the model likes or dislikes a game. No black box — you understand every recommendation.

Kelly-Sized Positions

The model tells you not just what to bet, but how much. Proper bankroll management is what separates long-term winners from bettors who go broke on a hot streak.

Parlay Engine

Our parlay builder identifies 2-leg and 3-leg combinations where the legs are statistically independent, avoiding correlated bets that look good but destroy EV.

Parlay Builder

Our parlay engine automatically identifies 2-leg and 3-leg combinations from the day's highest-confidence bets. It filters out correlated legs (e.g., same-game parlays where both outcomes depend on the same pitcher) and ranks combinations by combined EV. Parlays are only shown when each leg independently clears the minimum edge threshold.

Frequently Asked Questions

Q.Does the model guarantee wins?

No model can guarantee wins in sports betting — variance is real and even +EV bets lose frequently in the short run. What the model does is identify situations where the mathematical edge is in your favor over a large sample. Think of it like poker: a professional doesn't win every hand, but they win over thousands of hands because they consistently make +EV decisions.

Q.How often are projections updated?

The full pipeline runs at 8:00 AM ET every day, pulling fresh stats, confirmed lineups, current odds, and weather forecasts. Lineups are refreshed again at 11:30 AM ET (when most lineups are posted) and at 6:00 PM ET for evening games. Odds update in real time on the game cards.

Q.What stats does the model use for pitchers?

We use ERA, FIP (Fielding Independent Pitching), xFIP (Expected FIP), WHIP, K/9, BB/9, and HR/9. FIP and xFIP are weighted more heavily than ERA because they better predict future performance by removing the influence of defense and sequencing luck.

Q.How is lineup strength calculated?

Each confirmed lineup is scored 0–100 based on the wRC+ (Weighted Runs Created Plus) and OPS of each batter, weighted by lineup slot (leadoff and cleanup spots weighted higher). A lineup missing its top hitters scores proportionally lower. This score directly adjusts the team's projected run total.

Q.What is the minimum edge threshold for a recommendation?

We surface bets where our model probability exceeds the market's implied probability by at least 3 percentage points (e.g., model says 55% win probability, market implies 52%). Below that threshold, the edge may not be large enough to overcome the sportsbook's vig reliably.

Ready to Bet Smarter?

Join MLB Edge and get daily projections, EV analysis, and Kelly-sized recommendations delivered every morning before first pitch.

DISCLAIMER: MLB Edge is provided for entertainment and informational purposes only. All projections and model outputs are opinions based on statistical analysis — they are not guarantees of any outcome. Sports betting involves substantial financial risk. Must be 21+. Terms of Service · Responsible Gambling · Helpline: 1-800-522-4700