clock menu more-arrow no yes mobile

Filed under:

What’s the Ceiling (and the Floor) for MLB Player Performance This Season?

A few hot streaks could lead to some eye-popping numbers at the end of the abbreviated campaign. Same goes for cold streaks.

Getty Images/Ringer illustration

Through the first two months of the 2019 MLB season, Cody Bellinger batted .379/.465/.749, hit 20 homers, and walked more than he struck out, while playing Gold Glove defense in center field. His batting average hadn’t dipped below .400 until May 8. At the end of May, FanGraphs had him at 4.2 WAR, a full win ahead of the second-place player; Baseball-Reference, which doesn’t display daily WAR values after the fact, had him at 4.9 WAR as of May 27. Bellinger didn’t exactly crater after that: His full-season slash line “slumped” all the way to .305/.406/.629, and he won the NL MVP award. But his pace slowed considerably after his hot start, and other players caught up to or passed him in WAR by the end of the season. He was worth more in the first two months than he was in the following four.

Because Christian Yelich suffered a season-ending injury in September and Bellinger beat him out in MVP voting, we’ll always associate 2019 with Bellinger to a certain extent. If the season had ended after two months, though, that would have been the Bellinger Year. For decades to come, we would have goggled at his rate stats, extrapolated his pace, and wondered what might have been, as we do with the 1994 numbers of Matt Williams, Jeff Bagwell, Frank Thomas, and Tony Gwynn. Extraordinary slash lines posted in small samples aren’t as impressive as the same stats would be if sustained over a full season, but they’re still entertaining to ogle.

One of the fun possibilities of MLB’s unique 60-game regular-season sprint, which starts on Thursday, is that someone will go off for two months and cement themselves as a small-sample legend. With a 60-game schedule—assuming the pandemic permits the whole thing to be played—a skilled player with great timing could essentially stay hot the whole season and carry his team to a greater degree than is typically possible in a sport whose structure limits the contributions its stars can make. But because our baseball brains are calibrated for 162-game seasons, it’s not easy to adjust our statistical expectations for this outlier year. “The variability of this season is just going to be off the charts,” Baseball-Reference founder Sean Forman told me last week, adding, “I just think there’s going to be really weird, weird things happening statistically.”

Forman doubted that most people would be prepared for how odd the leaderboards will look at the end of this season, but we can get some sense of the range of conceivable outcomes even before the season starts. How good (or bad) could a player be in 2020? And what sort of stats could the hottest hitters and pitchers post?

Others have written about statistical standouts and record holders from past seasons of 60 games or fewer, but those lists were based on individual seasons of no more than 60 games played, which limited the sample to players whose campaigns began or ended early (or lost time in the middle). According to FanGraphs, the most valuable such season belongs to Yasmani Grandal, who played exactly 60 games as a rookie in 2012. Grandal didn’t debut until June and suffered an oblique strain in July, but in his limited major league time, he amassed 3.8 FanGraphs WAR thanks to great framing and a Petco Park–adjusted offensive performance that rated more than 40 percent better than the MLB average. Among non-catchers, Willie McCovey leads the sub-61-game class with 3.1 WAR in his legendary rookie season of 1959, when he slashed .354/.429/.656 as a 21-year-old and won the Rookie of the Year award despite playing in only 52 games. What we really want to know, though, is how valuable players can be in any 60-game span within a single season, including seasons in which they played many more than 60 games.

Since the schedule expanded to 162 games in both leagues in 1962, the average WAR mark for the top position players in non-strike-shortened seasons has been 9.5. A 60-game season is about 37 percent of the length of a 162-game season, and 37 percent of 9.5 WAR would be 3.5 WAR—not far from Mike Trout’s 3.3 WAR projection for 2020. But that doesn’t mean we would expect the 2020 WAR leader to finish with a proportionate percentage of a typical league-leading WAR total. We can’t forecast who’s going to get hot and play over his head for two months, but we know someone will.

For a more comprehensive approach to the question, I asked the fine folks at FanGraphs to help me sift through all spans of 60 consecutive position-player games within a single season, beginning with 1974 (the first year for which complete play-by-play records are available via Retrosheet). I also asked for all pitcher spans of 12 consecutive games, figuring that a pitcher in a five-man rotation would make approximately 12 starts in a 60-game season. Those queries yielded a lot of data: For a hitter, games 1 through 60, 2 through 61, 3 through 62, and so on are separate spans, as are starts 1 through 12, 2 through 13, 3 through 14, etc. for pitchers. By looking at the leaders, we can get a feel for what a player could accomplish this season if he plays in every game and the season is completed as planned. (You can subtract slightly for canceled games or rest days.)

As it turns out, Bellinger didn’t have the best 60-game span of any position player last season, as judged by FanGraphs WAR. In fact, four other players posted multiple more valuable 60-game stretches: Trout, Yelich, Alex Bregman, and Marcus Semien. But because Bellinger’s and Yelich’s hottest 60-game streaks came at the start of the season, from March 28 to June 4 and 11, respectively, they probably attracted more attention than Trout’s run from May 30 to August 10, when he hit .317/.431/.756 with 27 dingers and amassed 4.63 WAR. (We blogged about Bellinger and Yelich here at The Ringer; then again, we blogged about Trout, too.)

When unveiled a leaderboard in 2015 for the fastest fastballs thrown that year, the site provided a “Chapman Filter” to remove Aroldis Chapman pitches from the list, lest he crowd out everyone else. As of mid-August of that season, Chapman had thrown more than 100 pitches faster than the fastest pitch by anyone else. Trout’s WAR values are a little like that: Not only was Trout’s high tops in the sport in 2019, but Trout’s best 18 60-game stretches were more valuable than the best 60-game stretch by anyone else (Yelich’s season-starting 4.38 WAR). To put those stats in perspective, an average hitter or pitcher would be expected to produce roughly 0.7 WAR over a 60-game or 12-start stretch.

Trout’s 4.6-WAR 60-game spree from last season isn’t close to the best on record. It’s not even that close to Trout’s career high. But before we highlight the leaders, let’s look at the averages of the best stretch from each season, citing eight stats apiece for hitters and pitchers. In a normal-length season, we would expect something close to the numbers below for the hottest hitter and pitcher in each category. (In other words, the hottest hitter or pitcher wouldn’t have all of these numbers; each column indicates the average of the best seasonal marks in that category alone.) For the rate stats, I set a minimum of 186 plate appearances, the lowest total that could qualify for a batting title over 60 team games. Keep in mind that to calculate batter WAR over 60-game spans, FanGraphs prorates players’ full-season defensive values rather than trying to parse imprecise defensive stats over those specific stretches of play.

Here are the hottest-hitter averages:

Averages of the Best Position Player 60-Game Stretches, 1974-2019

5.05 26 .407 .510 .771 1.245 225 39.5

Last year’s most valuable 60-game stretch was a little less valuable than the average season’s, which comes in at just more than 5 WAR. If we extrapolate that pace to 162 games, it translates to 13.6 WAR, which only Babe Ruth has ever exceeded in an actual season (in an era when seasons lasted only 154 games, although the skill level of the league was a lot lower than today’s, which allowed the Babe to beat up on inferior competition). In an average season, the hottest hitter for batting average over a 60-game stretch does clear the .400 mark, but that’s far from guaranteed; it’s happened in only four of the past 10 years. (In the past two seasons, the leaders were Justin Turner at .367 and Ketel Marte at .380, respectively, but in 2016 and 2017, Joey Votto and José Altuve touched .416 and .420.) Batting average and all of the other non-WAR stats in the table are somewhat dependent on the offensive environment: In the 1980s, the best speed demons routinely swiped upward of 50 or 60 bases in their most larcenous 60-game stretches, but no one topped 29 in 2018 or 2019.

The table below lists the hottest pitcher averages:

Averages of the Best Starting Pitcher 12-Start Stretches, 1974-2019

4.25 5.76 1.15 1.69 28.6 41.9 34.1 1.6

Here, too, we see era effects, especially in strikeout rate: In 2018, Chris Sale struck out 45.4 percent of the hitters he faced over his hottest 12-start strikeout stretch, but as late as 1983, nobody reached 30 percent. In terms of FanGraphs WAR, the hottest pitchers tend to be a little less valuable than the hottest hitters, at 4.25, but by RA9 WAR—which, like Baseball-Reference’s pitcher WAR, is based on runs allowed instead of FIP, and thus bakes in luck and defense—they’re a little more valuable, at 5.76. On average, the hottest 12-start stretch in a season produces a 1.15 ERA, right around Bob Gibson’s famed 1.12 mark from 1968. In each of the past three seasons, someone has beaten Gibson’s ’68 ERA over a 12-start stretch: Stephen Strasburg in 2017; Chris Sale, Trevor Williams (!), and Justin Verlander in 2018; and Jack Flaherty and Hyun-Jin Ryu in 2019.

We wouldn’t necessarily expect each of the averages in the tables above to be matched in 2020. In a normal year, a starter who pitches a full season has many 12-start spans, and a hitter who plays a full season has even more 60-game spans. In 2020, each hitter will have a single span of that length, at most. With much fewer opportunities for players to excel, we’re a lot less likely to see someone reach those WAR thresholds. However, those figures are achievable—and a hitter in the heart of the order would need only 40-something games played to qualify for the batting title in a 60-game season, which would make it easier to post eye-popping rate stats. Similarly, a starter could contend for an ERA title in 10 or fewer starts, as long as he totals at least 60 innings pitched.

To satisfy your desire to rubberneck, the tables below list the averages of the worst 60-game and 12-start stretches from each season. Of course, a player has to be somewhat competent to be given the bat or the ball that many times in a single season, which cuts down on how low they can go.

Averages of the Worst Position Player 60-Game Stretches, 1974-2019

-2.01 0 .148 .199 .199 .417 15 0

Averages of the Worst Starting Pitcher 12-Start Stretches, 1974-2019

-0.75 -1.43 8.62 7.01 206.7 165.8 5.6 17.2

In some seasons, players have performed even better (or worse) than the averages above, so let’s peruse some selected post-’74 leaderboards. The following table lists all of the hitters who’ve accrued five WAR or more over a 60-game, single-season stretch, along with the WARs and the dates of their hottest-ever period. These are the high-water marks: the most valuable a batter can conceivably be in a 60-game span.

5+ WAR Position Players in 60-Game Stretches, 1974-2019

Player WAR Season Start Date End Date
Player WAR Season Start Date End Date
George Brett 6.46 1980 5/30/80 8/29/80
Barry Bonds 6.24 2001 7/24/01 10/7/01
Jeff Bagwell 5.83 1994 5/28/94 8/6/94
Jim Edmonds 5.63 2004 7/3/04 9/12/04
Mike Trout 5.61 2012 5/28/12 8/6/12
Buster Posey 5.58 2012 7/13/12 9/20/12
Mike Schmidt 5.50 1977 6/6/77 8/16/77
Josh Hamilton 5.44 2010 6/4/10 8/14/10
Alex Rodriguez 5.41 1996 7/1/96 9/3/96
Pedro Guerrero 5.41 1985 6/3/85 8/21/85
Rickey Henderson 5.39 1985 6/1/85 8/9/85
Joe Morgan 5.37 1975 4/7/75 6/17/75
Adrian Beltré 5.30 2004 6/21/04 8/29/04
Ken Griffey Jr. 5.30 1996 5/21/96 8/18/96
Frank Thomas 5.17 1994 5/1/94 7/7/94
Mookie Betts 5.11 2018 4/25/18 7/21/18
Andrew McCutchen 5.07 2012 5/5/12 7/15/12
Wade Boggs 5.03 1987 5/9/87 7/16/87
Ryne Sandberg 5.02 1990 4/29/90 7/2/90
John Mayberry 5.02 1975 7/11/75 9/12/75
Dustin Pedroia 5.00 2011 5/23/11 8/2/11

Aside, perhaps, from Pedro Guerrero and John Mayberry—good players who rarely came close to the heights they hit in 1985 and 1975, respectively—none of these names looks especially out of place. What does stand out is the greatness of George Brett’s injury-shortened 1980 MVP campaign, in which he racked up 9.1 WAR in only 117 games and 515 plate appearances on the strength of a .390/.454/.664 line in a fairly low-scoring season. Even Barry Bonds never had a 60-game hot streak as scalding as Brett’s best stretch in 1980. Imagine the spectacle of a six-win stretch in 2020: In theory, that player would be responsible for a win in one out of every 10 of his team’s games.

Four hitters, including historically terrible pitch framer Ryan Doumit, have managed a WAR of -2.5 WAR or worse over a 60-game stretch. The range between best and worse, then, is roughly nine wins.

Worst Position Player WARs in 60-Game Stretches, 1974-2019

Player WAR Season Start Date End Date
Player WAR Season Start Date End Date
Pat Rockett -2.8 1978 4/7/87 7/8/78
Ryan Doumit -2.8 2008 7/1/08 9/15/08
Dave McCarty -2.6 1993 7/7/93 10/2/93
Jerry Royster -2.6 1977 6/6/77 9/13/77

Next up are the pinnacle of the pitchers. This table contains every pitcher with a 12-start stretch of four or more FIP-based WAR:

4+ WAR Starting Pitchers in 12-Start Stretches, 1974-2019

Player WAR Season Start Date End Date
Player WAR Season Start Date End Date
Pedro Martínez 5.43 1999 4/20/99 6/20/99
Roger Clemens 5.11 1998 7/22/98 9/21/98
Clayton Kershaw 4.93 2015 6/27/15 9/2/15
Fergie Jenkins 4.86 1974 7/29/74 9/13/74
Gaylord Perry 4.76 1975 7/18/75 9/10/75
Randy Johnson 4.71 2001 7/18/01 9/17/01
Curt Schilling 4.62 1997 7/11/97 9/6/97
J.R. Richard 4.60 1979 8/3/79 9/25/79
Dwight Gooden 4.54 1984 7/20/84 9/17/84
Kevin Brown 4.40 1998 7/15/98 9/10/98
Frank Tanana 4.33 1975 6/21/75 8/19/75
Zack Greinke 4.33 2009 4/8/09 5/31/09
Gerrit Cole 4.30 2019 7/17/19 9/24/19
Félix Hernández 4.28 2012 6/17/12 8/15/12
Corey Kluber 4.26 2017 6/9/17 8/8/17
Ron Guidry 4.25 1978 4/30/78 6/27/78
Greg Maddux 4.24 1995 5/12/95 7/13/95
Jacob deGrom 4.22 2018 7/28/18 9/26/18
Mario Soto 4.13 1982 5/1/82 6/27/82
Cliff Lee 4.13 2010 6/18/10 8/16/10
Chris Sale 4.10 2018 6/1/18 9/11/18
Max Scherzer 4.10 2017 5/14/17 7/15/17
Nolan Ryan 4.07 1979 5/20/79 7/13/79
Johan Santana 4.06 2004 8/1/04 9/29/04
Tim Lincecum 4.03 2009 6/12/09 8/12/09
Justin Verlander 4.02 2019 7/14/19 9/12/19

As is almost always the case where modern pitching stats are concerned, there’s no topping 1999 Pedro, but 1998 Roger Clemens and 2015 Clayton Kershaw are less than half a win away.

Five pitchers have dipped below -1 WAR in a 12-start stretch, although the more reactive RA9 WAR would put the basement below -2 WAR, with Charlie Morton’s -2.59 in 2010 bringing up the rear.

Worst Starting Pitcher WARs in 12-Start Stretches, 1974-2019

Player WAR Season Start Date End Date
Player WAR Season Start Date End Date
David Hernandez -1.17 2009 8/1/09 9/30/09
Curt Young -1.05 1988 5/10/88 7/17/88
Bronson Arroyo -1.05 2011 5/18/11 7/22/11
Brian Matusz -1.02 2011 6/11/11 9/25/11
James Shields -1.01 2016 7/10/16 9/10/16

Finally, let’s look at the top 10 home run totals, batting averages, and ERAs over 60-game stretches since ’74.

Top 10 Home Run Totals, Batting Averages, and ERAs in 60-Game/12-Start Stretches, 1974-2019

HR Player Year AVG Player Year ERA Player Year
HR Player Year AVG Player Year ERA Player Year
37 Barry Bonds 2001 .473 George Brett 1980 0.41 Jake Arrieta 2015
34 Sammy Sosa 1998 .458 Ichiro Suzuki 2004 0.74 Josh Johnson 2010
33 Mark McGwire 1996 .427 Josh Hamilton 2010 0.77 Jack Flaherty 2019
33 Giancarlo Stanton 2017 .425 Paul O’Neill 1994 0.92 Buzz Capra 1974
32 Albert Belle 1995 .425 Johnny Damon 2000 0.96 Clayton Kershaw 2015
29 Ken Griffey Jr. 1994 .422 Frank Thomas 1994 0.96 Hyun-Jin Ryu 2019
29 J.D. Martinez 2017 .422 Larry Walker 1997 0.97 Kris Medlen 2012
29 Ryan Howard 2006 .421 Nomar Garciaparra 2000 1.03 J.R. Richard 1979
28 Jim Thome 2001 .420 José Altuve 2017 1.10 Zack Greinke 2009
28 George Foster 1977 .419 Chipper Jones 2008 1.13 Chris Sale 2018

Five other hitters are tied with 28 homers: Bagwell in 1994, Juan González in 1996, David Ortiz in 2006, Alex Rodriguez in 2002, and Brian Dozier in 2016. For steals, no one sniffs Rickey Henderson, who swiped 66 bags in a 60-game stretch in 1983. (No player came closer than Lou Brock’s 57 in 1974.) The worst batting average for a qualified hitter in a 60-game stretch belongs to Steve Jeltz, who hit .116 over 195 plate appearances in 1988. And the worst ERA award for a 12-start stretch goes to either Brian Matusz’s 10.69 in 2011 or (with a minimum of 60 innings pitched) Andy Larkin’s 7.97 in 1998. You can now find full, sortable leaderboards for the best and worst 60-game stretches for every stat cited above at FanGraphs, for both batters and pitchers.

Although this season’s compressed schedule will make it tougher to tell players apart by WAR alone, 2020 is bound to be the summer of someone. Maybe it’ll be Trout, or maybe it’ll be a less predictable player. But even though this season won’t last very long, we could still see a player or two stuff a full-length All-Star season’s worth of value into only 60 games. And although the numbers on the late-September leaderboards will be smaller than the ones we’re used to, their playoff impacts could be bigger than ever.

Thanks to Sean Dolinar and David Appelman of FanGraphs for research assistance.