The 2020 Schedule Meets the Chopping Block
Life isn’t fair, as it continually reminds us, but we try to keep sports as far from the harsh light of reality as we can. The New York Yankees and Tampa Bay Rays certainly don’t start in the same place when creating a roster, but when those players are on the field, everybody has to play by the same rules. Whether you’re facing Gerrit Cole or whatever fifth starter the Baltimore Orioles Mad-Libbed onto the roster, you have to get actual hits, score actual runs, and make actual Statcast-blessed defensive plays.
It’s extraordinarily difficult to keep the schedules teams face fair. Ideally, we’d want every team to face the same strength of schedule. With complete discretion over the design of the season, that’s still a nearly impossible task, without knowing which teams will be the best and worst ones ahead of time. And it becomes definitely impossible with unbalanced division schedules, series played mostly in three or four-game chunks, and a need to avoid having teams travel thousands of miles every day, like some character in the final season of Game of Thrones.
And even if you avoid all these things using some dark magics from the Necronomicon or Carson Cistulli’s personal notes, you’re still bound by the laws of the physical universe. Teams can’t play themselves, so even if every team played every other team the same number of games each season, the Yankees get a bonus by not having to play the Yankees, while Orioles’ hitters never get the opportunity to feast on Orioles pitching.
Under the normal, 162-game schedule, here’s what ZiPS thinks of each team’s strength of schedule, including the mix of home-road opponents. This table is sortable:
| Team | Opponent WPCT | Wins/162 |
|---|---|---|
| New York Yankees | .482 | 78.1 |
| Minnesota Twins | .486 | 78.8 |
| Houston Astros | .486 | 78.8 |
| Tampa Bay Rays | .486 | 78.8 |
| Cleveland Indians | .486 | 78.8 |
| Oakland Athletics | .489 | 79.3 |
| Chicago White Sox | .490 | 79.4 |
| Los Angeles Dodgers | .493 | 79.8 |
| Boston Red Sox | .495 | 80.2 |
| Texas Rangers | .498 | 80.6 |
| Washington Nationals | .499 | 80.8 |
| Los Angeles Angels | .499 | 80.8 |
| Kansas City Royals | .499 | 80.8 |
| San Diego Padres | .500 | 81.0 |
| Chicago Cubs | .501 | 81.2 |
| St. Louis Cardinals | .502 | 81.3 |
| Toronto Blue Jays | .503 | 81.4 |
| Atlanta Braves | .503 | 81.5 |
| Milwaukee Brewers | .504 | 81.6 |
| Cincinnati Reds | .505 | 81.8 |
| Detroit Tigers | .505 | 81.8 |
| Arizona Diamondbacks | .507 | 82.2 |
| Philadelphia Phillies | .508 | 82.2 |
| Pittsburgh Pirates | .509 | 82.5 |
| New York Mets | .512 | 82.9 |
| Colorado Rockies | .512 | 83.0 |
| Seattle Mariners | .513 | 83.0 |
| San Francisco Giants | .515 | 83.4 |
| Baltimore Orioles | .516 | 83.5 |
| Miami Marlins | .521 | 84.4 |
These numbers may seem small when you look at them straight-up, but in terms of a pennant race, these are fairly large differences. Based on the projected team strength, the Marlins essentially start the 2020 season with six fewer wins than the New York Yankees. This has the effect of slightly but artificially magnifying the strengths of great teams and the weaknesses of lousy ones.
We’ve talked a lot about various Cactus and Grapefruit League 2020 season scenarios, but with so many unknowns given COVID-19, there’s no scenario that’s realistically off the table outside of a normal season. One of the possibilities, though probably not the most likely one, is that teams start play in their normal stadiums without fans, with attendance hopefully allowed by the end of the season. Another possibility is that everybody plays in Arizona, which would allow MLB to hold the 2020 season without changing the leagues and divisions.
Baseball’s easiest solution for the schedule at this point would be to simply chop the first 50 games or so off the season and play regular season games through the end of October. The problem is that while MLB’s schedule was hardly a utopian ideal of balance beforehand, simply chopping off a portion of it leads to some odd results. Starting with Game 112 — I moved games at the dividing line to the nearest full series because not every team’s 51st game is on the same day — we would completely lose 40 team vs. team matchups, losing some of the variety.
It also has an odd effect on division races. Even those 19 games against division rivals are not evenly spread throughout the season. The Cubs would lose 13 of their 19 games against the Pirates, but keep every single game against the Reds. The Arizona Diamondbacks, likely a second-tier contender, would lose 14 games against the Rockies and Giants, but retain all their games with the Dodgers. The truncated schedule is rife with oddities like that.
And more than just being really, well, weird, it can cost additional wins for some teams:
| Team | Normal | Truncated | Difference | Diff/162 |
|---|---|---|---|---|
| Tampa Bay Rays | .486 | .474 | .012 | 1.9 |
| Oakland Athletics | .489 | .484 | .006 | 0.9 |
| Texas Rangers | .498 | .492 | .005 | 0.9 |
| Pittsburgh Pirates | .509 | .504 | .005 | 0.8 |
| Detroit Tigers | .505 | .500 | .005 | 0.8 |
| St. Louis Cardinals | .502 | .497 | .005 | 0.8 |
| San Francisco Giants | .515 | .511 | .004 | 0.7 |
| Seattle Mariners | .513 | .509 | .003 | 0.6 |
| Houston Astros | .486 | .484 | .002 | 0.4 |
| Toronto Blue Jays | .503 | .501 | .002 | 0.2 |
| Arizona Diamondbacks | .507 | .506 | .001 | 0.2 |
| Chicago Cubs | .501 | .500 | .001 | 0.2 |
| Los Angeles Dodgers | .493 | .491 | .001 | 0.2 |
| Milwaukee Brewers | .504 | .503 | .001 | 0.1 |
| Boston Red Sox | .495 | .495 | .000 | 0.1 |
| San Diego Padres | .500 | .500 | .000 | 0.0 |
| New York Mets | .512 | .512 | .000 | 0.0 |
| Washington Nationals | .499 | .499 | .000 | 0.0 |
| Miami Marlins | .521 | .522 | -.001 | -0.1 |
| Cincinnati Reds | .505 | .506 | -.001 | -0.2 |
| Cleveland Indians | .486 | .488 | -.002 | -0.3 |
| New York Yankees | .482 | .484 | -.002 | -0.4 |
| Baltimore Orioles | .516 | .518 | -.002 | -0.4 |
| Los Angeles Angels | .499 | .501 | -.002 | -0.4 |
| Philadelphia Phillies | .508 | .511 | -.003 | -0.6 |
| Atlanta Braves | .503 | .509 | -.005 | -0.9 |
| Colorado Rockies | .512 | .519 | -.007 | -1.1 |
| Chicago White Sox | .490 | .500 | -.009 | -1.5 |
| Minnesota Twins | .486 | .495 | -.009 | -1.5 |
| Kansas City Royals | .499 | .509 | -.010 | -1.6 |
In pennant races, a single game can make a significant difference. After all, grabbing a single extra win is why most teams spend so much at the trade deadline pitched in high-leverage battles for playoff pieces. To get an idea of how much this actually affects playoff probability, I ran the projections for a 112-game season using both the 2020’s “normal” strength of schedule and the actual strength of schedule of the truncated season:
| Team | Original SOS | Truncated SOS | Gain |
|---|---|---|---|
| Tampa Bay Rays | 70.5% | 77.6% | 7.1% |
| Oakland Athletics | 54.8% | 59.0% | 4.2% |
| St. Louis Cardinals | 31.6% | 34.7% | 3.1% |
| Arizona Diamondbacks | 23.4% | 24.5% | 1.1% |
| Texas Rangers | 6.4% | 7.4% | 1.0% |
| Pittsburgh Pirates | 3.3% | 4.0% | 0.7% |
| Houston Astros | 80.2% | 80.9% | 0.7% |
| Chicago Cubs | 42.8% | 43.4% | 0.6% |
| Washington Nationals | 66.5% | 67.0% | 0.4% |
| San Francisco Giants | 1.4% | 1.8% | 0.4% |
| Los Angeles Dodgers | 94.1% | 94.5% | 0.4% |
| New York Mets | 28.1% | 28.3% | 0.3% |
| San Diego Padres | 46.9% | 47.1% | 0.2% |
| Milwaukee Brewers | 33.8% | 33.9% | 0.1% |
| Detroit Tigers | 0.1% | 0.2% | 0.1% |
| Miami Marlins | 1.3% | 1.4% | 0.0% |
| Seattle Mariners | 0.1% | 0.1% | 0.0% |
| Baltimore Orioles | 0.0% | 0.0% | 0.0% |
| Cleveland Indians | 57.1% | 57.1% | 0.0% |
| Toronto Blue Jays | 3.2% | 3.2% | 0.0% |
| Boston Red Sox | 19.8% | 19.5% | -0.3% |
| Kansas City Royals | 2.0% | 1.3% | -0.7% |
| New York Yankees | 93.0% | 92.4% | -0.7% |
| Colorado Rockies | 2.7% | 2.0% | -0.7% |
| Cincinnati Reds | 29.1% | 27.9% | -1.2% |
| Philadelphia Phillies | 27.6% | 25.7% | -1.9% |
| Los Angeles Angels | 21.9% | 20.0% | -2.0% |
| Atlanta Braves | 67.3% | 63.8% | -3.5% |
| Chicago White Sox | 23.3% | 19.1% | -4.1% |
| Minnesota Twins | 67.5% | 62.3% | -5.2% |
For many teams, there’s no significant effect from a truncated year. For a handful of teams — especially the Rays, A’s, Cardinals on the positive side, and the Twins, White Sox, Braves on the negative end — their playoff probabilities change just as much as they would from a Marcell Ozuna-level free agent or losing a key pitcher in July to injury. These things matter, even if by small amounts.
I have one last chart here, showing the truncated season’s playoff probabilities versus a theoretical 112 game season in which every team plays .500 opponents. This can’t be achieved, of course, but it’s certainly useful to see just how much unfairness would be thrust upon the sport due to the realities of scheduling:
| Team | Truncated SOS | Utopian Ideal | Gain |
|---|---|---|---|
| Los Angeles Angels | 20.0% | 27.1% | 7.1% |
| Chicago White Sox | 19.1% | 23.7% | 4.6% |
| New York Mets | 28.3% | 32.7% | 4.3% |
| Philadelphia Phillies | 25.7% | 29.9% | 4.2% |
| Boston Red Sox | 19.5% | 22.6% | 3.1% |
| Minnesota Twins | 62.3% | 65.2% | 2.9% |
| Atlanta Braves | 63.8% | 66.4% | 2.6% |
| Cincinnati Reds | 27.9% | 29.8% | 1.9% |
| Toronto Blue Jays | 3.2% | 5.2% | 1.9% |
| Colorado Rockies | 2.0% | 3.7% | 1.7% |
| Kansas City Royals | 1.3% | 2.9% | 1.6% |
| Miami Marlins | 1.4% | 2.8% | 1.4% |
| Arizona Diamondbacks | 24.5% | 25.6% | 1.1% |
| Texas Rangers | 7.4% | 8.2% | 0.8% |
| San Francisco Giants | 1.8% | 2.5% | 0.7% |
| Seattle Mariners | 0.1% | 0.3% | 0.2% |
| Detroit Tigers | 0.2% | 0.3% | 0.1% |
| Milwaukee Brewers | 33.9% | 34.0% | 0.1% |
| Baltimore Orioles | 0.0% | 0.0% | 0.0% |
| Pittsburgh Pirates | 4.0% | 4.0% | 0.0% |
| New York Yankees | 92.4% | 90.8% | -1.6% |
| Chicago Cubs | 43.4% | 40.9% | -2.5% |
| Cleveland Indians | 57.1% | 54.5% | -2.6% |
| Los Angeles Dodgers | 94.5% | 91.3% | -3.2% |
| Houston Astros | 80.9% | 77.7% | -3.2% |
| San Diego Padres | 47.1% | 43.8% | -3.3% |
| St. Louis Cardinals | 34.7% | 30.4% | -4.3% |
| Washington Nationals | 67.0% | 62.2% | -4.8% |
| Oakland Athletics | 59.0% | 53.9% | -5.1% |
| Tampa Bay Rays | 77.6% | 67.7% | -9.9% |
The baseball emergency is so dire that I think all 30 teams and 100% of analysts, reporters, and fans don’t really care what the schedule looks like, so long as there is one. But that doesn’t mean that we shouldn’t be aware of the small but real distortions that schedule could have on the playoff picture.
Dan Szymborski is a senior writer for FanGraphs and the developer of the ZiPS projection system. He was a writer for ESPN.com from 2010-2018, a regular guest on a number of radio shows and podcasts, and a voting BBWAA member. He also maintains a terrible Twitter account at @DSzymborski.
ANY truncated schedule better not worry about inter-league play but really be heavy into the division series and league series, period. I get with the odd number of teams inter-league play is almost a must but it needs to be greatly reduced.
Good call on interleague. I read this article this morning and had been thinking about the schedule and just came back to comment that it might be cool to see what this would look like sans inter-league as that may be more of an honest speculation. Although inter-league is what – 8 series? Maybe not quite enough of a haircut, but to me – the most obviously place to start axing schedule.
Not to be too snarky Dan, but who cares? Any baseball is better than no baseball this year and your data suggest negligible effects on the order of less than 1 win for most teams. I think this is pretty low on the concern list.
Feeling the same way.
Well, I care. It’s interesting and the effects of sched differences is relevant in regular seasons too. We care about trade deadline moves too and they dont move the needle any more than this does.
And really, who responds to an article of interesting data they don’t care about with “who cares?”
Wouldn’t it be great if the article preemptively paid lip service to these types of reactions so we didn’t have to endure them in comments section? Oh wait, I read to the last paragraph…
Would you be able to release Zips player projections for this year with the normal park factors removed?
Even if it is shortened, as a Pirates fan this season is gonna feel like forever…
Can someone smarter than me explain how the Twins and White Sox are the two biggest losers by playoffs odds under a truncated schedule, but the Indians don’t gain anything?
Playoff % includes being one of the two wild card teams. Original projection was for the AL Central to provide ~0.5 wild card teams, and that drops to ~0.4.
That means then that every single time the Indians bump up from 2nd to 1st, they already had a Wild Card spot, and every single time they bump up from 3rd to 2nd, they still don’t get a Wild Card spot. That seems unlikely just from the start.
But then we’re also saying that a not-insignificant portion of the time the White Sox or Twins fall from 1st to 2nd or 2nd to 3rd, they go from in a playoff spot to no longer in a playoff spot. The team replacing them would go from a non-playoff spot to a playoff spot. The team far and away most likely to take advantage of either of those teams slipping some is Cleveland.
The Rays/A’s/Rangers were the primary beneficiaries, especially the Rays/A’s. The Indians actually lose a lot of wild card appearances but gain some divisional titles; in the truncated season, the average win total needed to win the AL Central declines (it was already below the wild card) That they both came out to no overall playoff loss in rounding is just a happy accident.
In your example, the Rays do not play *any* of their 2020 games against two good teams: HOU and CLE (amounting to 14 games).
However, they would have the fortune of playing, still, 100% of their games against: BAL, DET and MIA (30 games).
I see your point.
I’ll repeat myself, as I commented elsewhere in the larger thread, this is a good problem for “The Schedule Makers,” Henry and Holly Stephenson. 😉
(Side note: I can’t for the life of me match the SOS figures FanGraphs computes. Is there an article that explains how SOS is computed, or is that proprietary?)
That I couldn’t tell you. I run ZiPS based on the projected roster of the opponents, but I don’t do the FG ones.
CLE would not play 10 of its 19 games scheduled against DET. They still would play all 10 games they have scheduled against HOU and LAD.
I don’t see anything as noteworthy, schedule-wise for MIN and CWS, but if you consider that the Rays get a good bump from a chopped schedule, that would make the wildcard more competitive.
There won’t be baseball this year. Or, rather, if there is, we will all regret the number of deaths it will cause. The wet rag speaketh. #StayAtHome
It certainly seems pretty unlikely that gatherings of such a large number of people will be permitted by November. Maybe if limits are raised from 50-100 you could get to where the players can play in empty stadiums but my gut says that’s the safest way. of course, not saying that is in any way what the decision makers will prioritize, but we can hope.
I dont’ think there will be any season. If they manage to pull it off I think they just cut interleague play and make division heavy schedules. Or just go round robin tournaments.
Thank you Dan for having the curiosity to look into this. Given the complexities of schedule-making, it’s very likely that MLB would simply chop the schedule in order to reconcile for a shortened season. (If there is a season, which I still do not believe there will be. #ontherecord)
My proposal is that MLB ask Henry and Holly Stephenson, aka “The Schedule Makers” to look into this.
For those who haven’t seen it, here is a link to The Schedule Makers 30 for 30 Short on ESPN:
http://www.espn.com/30for30/film/_/page/the-schedule-makers
This really shouldn’t be a problem: a very simple program would be able to generate a balanced schedule based on the length of the season. What complicates the schedule in a normal season is travel (you can’t play a night game in New York and the following afternoon play in Los Angeles); but if everybody’s in the same place, that’s no longer a factor.