MLB Projections


My MLB projections are generated using the Satchel projection model. I wrote a brief description of how the model works in an earlier post, and it has since grown into a more substantive project. The source code is available on my GitHub.

These projections are updated automatically every morning during the season around 10AM Eastern. The "Season Percentile" column grades how the team is projected to finish (in terms of total wins) relative to their opening day projections. A team that's roughly meeting expectations will have a percentile around 50. Those that dramatically over or underperform will have scores significantly higher and lower than 50, respectively.

After the regular season ends, the table below compares the start of season projections to how each team finished the year. Below the table are a few stats summarizing how the model performed.

Projected Outcomes Actual
Team W L Make Playoffs (%) Make Wild Card (%) Win Division (%) Win League (%) Win WS (%) W L W-L% Season Percentile Projected - Actual Wins
LAD 95 67 85.00 24.66 60.34 21.57 12.16 98 64 .605 56.68 -3
PHI 87 75 59.09 39.89 19.20 8.51 4.25 95 67 .586 75.92 -8
NYY 90 72 68.97 33.63 35.34 14.47 7.28 94 68 .580 61.34 -4
SDP 84 78 47.74 31.85 15.90 6.04 2.74 93 69 .574 78.97 -9
MIL 78 84 28.57 13.58 14.99 2.90 1.26 93 69 .574 90.72 -15
CLE 84 78 48.91 17.34 31.57 6.80 2.94 92 69 .571 75.22 -8
BAL 84 78 44.70 28.40 16.30 7.24 3.42 91 71 .562 71.58 -7
ATL 99 63 89.84 24.01 65.83 29.23 17.41 89 73 .549 16.09 10
ARI 82 80 36.45 25.75 10.70 4.12 1.90 89 73 .549 73.81 -7
NYM 83 79 44.32 33.29 11.03 5.18 2.47 89 73 .549 68.47 -6
HOU 92 70 72.33 28.71 43.62 16.38 8.30 88 73 .547 35.06 4
KCR 73 89 14.24 7.05 7.18 1.11 0.40 86 76 .531 88.34 -13
DET 76 86 20.41 9.62 10.80 2.00 0.83 86 76 .531 81.31 -10
SEA 86 76 53.11 29.00 24.10 8.61 4.02 85 77 .525 45.43 1
STL 84 78 51.85 18.96 32.90 6.50 3.31 83 79 .512 43.22 1
CHC 83 79 44.89 17.31 27.58 5.58 2.60 83 79 .512 47.91 0
MIN 88 74 63.68 15.27 48.41 11.10 5.22 82 80 .506 27.43 6
BOS 78 84 24.76 17.98 6.78 3.06 1.30 81 81 .500 58.46 -3
SFG 82 80 40.66 27.78 12.88 4.40 2.02 80 82 .494 41.98 2
TBR 84 78 48.14 30.64 17.51 7.51 3.56 80 82 .494 31.76 4
TEX 86 76 54.05 29.30 24.75 8.97 4.21 78 84 .481 22.31 8
CIN 78 84 26.70 12.82 13.88 2.40 1.03 77 85 .475 44.25 1
PIT 76 86 21.68 11.04 10.65 1.88 0.81 76 86 .469 49.11 0
TOR 87 75 57.01 32.93 24.07 9.90 4.76 74 88 .457 10.69 13
WSN 64 98 2.66 2.31 0.35 0.11 0.05 71 91 .438 75.53 -7
OAK 68 94 5.79 4.35 1.44 0.41 0.17 69 93 .426 52.23 -1
LAA 76 86 19.38 13.30 6.08 2.17 0.86 63 99 .389 9.81 13
MIA 76 86 19.32 15.73 3.58 1.48 0.61 62 100 .383 8.29 14
COL 60 102 1.21 1.03 0.19 0.08 0.03 61 101 .377 52.63 -1
CHW 66 96 4.52 2.48 2.04 0.25 0.07 41 121 .253 0.46 25
Average difference between projected and actual wins: 0.00 wins
Average difference between projected and actual wins (absolute value): 6.80 wins
Largest over projection: 25 wins (CHW)
Largest under projection: -15 wins (MIL)
Maximum difference between projected and actual wins (absolute value): 25 wins (CHW)
Minimum difference between projected and actual wins (absolute value): 0 wins (CHC, PIT)
Last Updated: October 21, 2024


Follow @andersonfrailey