Add a player's on-base-percentage to his slugging-percentage and you wind up with OPS. Easy-peasy, lemon squeezy. But some things don't need to be complicated to be useful and descriptive. There are a hundred ways to judge a baseball player's performance but OPS remains one of the best proxies for quickly judging a player's overall offensive performance.
Many might believe that wOBA is the stat you should be looking for and people much smarter than I have been duking out this debate for a long time. But time and time again it seems that OPS comes out ahead, even though Tom Tango probably disagrees. For me, the differences come down more to a debate over splitting mathematical hairs rather than one or the other being a far superior statistic for judging a player's overall performance. Judging statistics isn't always just about r-squares and correlations. Sometimes ease of use (and calculation) will win the day for fantasy players.
Baseball Savant has wOBA and xwOBA (and obviously OPS) but xOPS remains an unlisted number, even though we have the ingredients needed in xOBP and xSLG. Perhaps this is a continuation of Tango's blood-feud with OPS or perhaps he just doesn't care enough to do addition for people that's simple enough for any fourth-grader. Which means it should be triple-easy for people who had to repeat the level twice. So you'll be in good hands. Let's start by taking a look at some of the biggest OPS underachievers according to xOPS.
Be sure to check all of our fantasy baseball lineup tools and weekly lineup resources:- Fantasy baseball injury reports
- Fantasy baseball trade analyzer
- Daily MLB starting lineups for fantasy baseball
- Fantasy baseball BvP matchups data (Batter vs. Pitcher)
- Fantasy baseball PvB matchups data (Pitcher vs. Batter)
- Who should I start? Fantasy baseball player comparisons
- Fantasy baseball closer depth charts, bullpens, saves
- Fantasy Baseball live scoreboard, daily leaderboards
The xOPS - OPS Leaderboard
Let's take a look at the top-30 positive differences (min. 250 PA) between a player's actual OPS in 2019 and their expected-OPS and see who shakes out among the leaders. We'll also look at their 2019 ADP and compare it to where they finished on RazzBall's player-rater to see who failed and rewarded their owners the most.
Keep in mind that in order to not guess about unknowable things like "how many baseball games will be played post-pandemic?", all analysis will be operating in a "COVID does not exist" alternate timeline, not the current darkest timeline we're currently living in.
NAME | PA | 2019 ADP | Razz Rank | ADP - Razz | OPSx - OPS | xOPS | OPS |
Justin Smoak | 500 | 235 | 484 | -249 | 0.124 | 0.872 | 0.748 |
Marcell Ozuna | 549 | 81 | 84 | -3 | 0.118 | 0.918 | 0.800 |
Jason Castro | 275 | 656 | 597 | 59 | 0.103 | 0.869 | 0.766 |
C.J. Cron | 499 | 246 | 259 | -13 | 0.102 | 0.882 | 0.780 |
Danny Jansen | 384 | 193 | 619 | -426 | 0.095 | 0.734 | 0.639 |
Travis Shaw | 270 | 101 | 1279 | -1178 | 0.087 | 0.638 | 0.551 |
Dansby Swanson | 545 | 486 | 194 | 292 | 0.079 | 0.826 | 0.747 |
Lorenzo Cain | 623 | 67 | 204 | -137 | 0.069 | 0.765 | 0.696 |
Khris Davis | 533 | 46 | 343 | -297 | 0.069 | 0.748 | 0.679 |
Jesus Aguilar | 369 | 89 | 803 | -714 | 0.068 | 0.779 | 0.711 |
Mookie Betts | 706 | 2 | 14 | -12 | 0.066 | 0.981 | 0.915 |
Domingo Santana | 507 | 215 | 206 | 9 | 0.057 | 0.826 | 0.769 |
Ronald Acuna Jr. | 715 | 8 | 1 | 7 | 0.056 | 0.937 | 0.881 |
Bryce Harper | 682 | 18 | 21 | -3 | 0.055 | 0.937 | 0.882 |
Rougned Odor | 581 | 124 | 126 | -2 | 0.051 | 0.772 | 0.721 |
Yadier Molina | 452 | 141 | 271 | -130 | 0.051 | 0.762 | 0.711 |
Aaron Judge | 447 | 16 | 190 | -174 | 0.050 | 0.970 | 0.920 |
Howie Kendrick | 370 | 707 | 180 | 527 | 0.049 | 1.015 | 0.966 |
Buster Posey | 445 | 144 | 565 | -421 | 0.048 | 0.735 | 0.687 |
Jurickson Profar | 518 | 127 | 272 | -145 | 0.047 | 0.758 | 0.711 |
Franmil Reyes | 548 | 219 | 141 | 78 | 0.045 | 0.867 | 0.822 |
Robinson Cano | 423 | 127 | 707 | -580 | 0.044 | 0.780 | 0.736 |
Jose Peraza | 403 | 105 | 963 | -858 | 0.044 | 0.675 | 0.631 |
Christian Walker | 603 | 698 | 105 | 593 | 0.043 | 0.868 | 0.825 |
Mike Trout | 600 | 1 | 9 | -8 | 0.042 | 1.125 | 1.083 |
Paul Goldschmidt | 682 | 20 | 64 | -44 | 0.042 | 0.862 | 0.820 |
Matt Carpenter | 492 | 75 | 476 | -401 | 0.042 | 0.767 | 0.725 |
Gary Sanchez | 446 | 53 | 130 | -77 | 0.041 | 0.882 | 0.841 |
Matt Olson | 547 | 152 | 99 | 53 | 0.040 | 0.936 | 0.896 |
Kyle Seager | 443 | 411 | 326 | 85 | 0.040 | 0.829 | 0.789 |
Quick Hitters
- We've started on the right foot by identifying Mike Trout as being totally awesome. The difference between Trout's OPS and xOPS is only the 25th-highest but we can probably give him a break seeing that his 1.083 OPS was the second-highest in baseball. And yet, his league-leading 1.125 xOPS tells us he could've been even better. I've said it before and I'll say it again; Mike Trout is good at baseball.
- Good god! Is that Travis Shaw's music? Well, while Shaw is on the list, he's not exactly on it. His 0.087 difference may have been the sixth-highest but seeing that a .635 OPS is around the level where a player will be in danger of losing his job, his .638 xOPS isn't exactly a ringing endorsement. Good thing he wasn't drafted as a top-100 player last year, right?
- Jose Peraza? Jesus Aguilar? Please refer to Shaw, Travis.
- Hey look, another reason to hype C.J. Cron! Here's a little more; Cron's 15% barrel-rate in 2019 was in the top-5% of the league, a year after posting a 12.2% Brl% that was in the top-10%. And his 91 mph EV was 3-mph higher? The only thing I don't like is what the hype has done to his draft price, with Cron now sitting at a 214 ADP on NFBC.
- Wouldn't it be cool to see Dansby Swanson healthy all year? Also, remember when Atlanta basically got Swanson and Ender Inciarte for Shelby Miller? Ahh, good times.
- I'm just glad we're able to set off the google-alert that Eric Samulski has set for Rougned Odor. However, I'm not one to talk because I have never, and will never, jump off that Odor-train. Sure, he batted .205 and .204 in two of the last three years but he also had at least a .253 AVG in four of his six seasons in the majors. And he may have spiked to a career-high 30.6% K-rate, but his 89.4 mph EV and 13.6% barrel-rate were career-highs as well. Rougned, I wish I knew how to quit you.
- I get that he's Justin Smoak and he had just a .208 AVG in 2019, but is a 474 ADP in NFBC leagues really justified for the new Milwaukee first baseman? He's not going to repeat his .270 AVG from 2017 but a repeat of his .242 AVG from 2018 is certainly possible, especially since he probably won't run a .223 BABIP again. The 38 HR from 2017 likely won't be coming back either but 25 HR is easily on the table and the Smoak-Monster could go higher if he doesn't get squeezed for too many at-bats by a rotating Ryan Braun. Keep in mind that while Toronto is certainly a hitter's park, it's not the lefty power-paradise that Milwaukee is, boasting a 112 park-factor for left-handed home runs that's second only to Yankee Stadium.
A Little Deeper Now
Khris Davis, DH, Oakland Athletics
2019 Season: 533 PA - 23 HR - 61 R - 73 RBI - 0 SB - .220 AVG - .679 OPS (.748 xOPS)
2020 ATC Projections: 595 PA - 36 HR - 79 R - 95 RBI - 0 SB - .240 AVG - .803 OPS
"Khrush" Davis lived up to his nickname in horribly ironic fashion in 2019, crushing the owners who took him around his 46 ADP and mentally banked 40+ HR and a .247 AVG. Instead, Davis hit 26 HR, with a .220 AVG, finishing at #343 on the RazzBall player-rater. Yikes. A .748 xOPS still isn't what we expected from Davis but it's a lot more palatable than the .679 OPS he actually put up.
Give Me Something To Believe In
- Maybe it was the wall? Making a rare appearance in the outfield, Davis crashed awkwardly into the railing in foul territory on May 5th, injuring his hip in the process. While he initially came back and played sporadically over the next few weeks, Davis eventually landed on the IL on May 22nd before returning on June 1. An optimist might say that the lingering injury hindered Davis all season and was to blame for much of his struggles.
- Given his outrageous 175 ADP, Davis probably only needs to hit 30 HR in order to earn a profit. Seeing he still hit 23 HR in the worst season of his career, this certainly seems achievable. And if Davis goes back to "Khrush-mode" and hits 40+ HR (like he basically always does), then his owners will see a massive return on their investment.
Reasons For Doubt
- If you're going to blame most of his struggles on his May collision then be aware that you're asking the injury to cover a wide scope of issues. It's certainly plausible that lingering hip problems would lead to a downturn in power-related categories, with Davis posting career lows in SLG, ISO, and wOBA. You could also blame it for average-exit velocities that were 2-mph lower than in previous years and a career-low 40.2% hard-hit rate. But did it also cause his barrel-rate to drop from the 17%-range of the previous three years to a 10.1% mark in 2019? Or cause his chase-rate and swinging-strike rate to rise back to their 2016 levels? Perhaps, but Davis just looked lost at times throughout the season, with even manager Bob Melvin stating that his troubles seemed to go beyond the scope of injury.
- Davis started off the season on fire, already having 10 HR to his name by the time he was hurt on May 5. However, prior to the injury Davis hadn't hit a home run since April 14 and was in the midst of a brutal three-week stretch. In his 72 PA between hitting his last home run and running into the railing in May, Davis slashed .190/.292/.238 with a 52 wRC+.
The easiest thing about buying back into Davis is the massive step back that his ADP has taken. It's not that hard to use a 14th-round pick on someone who was being drafted as a top-50 player just a year prior.
But I do wonder whether or not we've already seen the best of Davis, seeing that he is 32-years-old and just came off of a horrible year that was either caused by a step-back in skills or an injury that was serious enough to cause five months of poor performance.
Howie Kendrick, 1B/2B, Washington Nationals
2019 Season: 370 PA - 17 HR - 61 R - 62 RBI - 2 SB - .344 AVG - .966 OPS (1.015 xOPS)
2020 ATC Projections: 326 PA - 11 HR - 43 R - 45 RBI - 2 SB - .306 AVG - .838 OPS
Kendrick may not be a full-time player anymore but he just had the best fantasy year of his career at age-35 and posted a .966 OPS that was 122-points higher than his previous career-high of .844. More so, Kendrick has only posted greater than a .800 OPS four times in 14 seasons and has a .768 OPS for his career. Was this just a late-career fluke or did something change?
Give Me Something to Believe In
- It may have been a change in approach that drove Kendrick's career-year, rather than it just being a large outlier. Kendrick had a 91.6 average exit-velocity (career-high), 11.4-degree launch-angle (career-high), 11.4% Brl% (career-high), and a 48.3% hard-hit rate (career-high). He also posted career-highs in xBA, xSLG, wOBA, xwOBA, and xwOBACON but he didn't just break his previous highs; he smashed them. His fly-ball rate was also a career-high while his 34.1% Pull% was his highest rate since 2009. And just for fun, Kendrick has a career-low 13.2% K-rate that was backed up by a career-low 7.2% SwStr%. Once again, in his 14th season!
- Want some more career-highs? Kendrick hit fastballs and breaking balls better than he ever has before in 2019, posting career-highs against them in BA, xBA, SLG, xSLG, wOBA, and xwOBA.
- Kendrick doesn't have a starting job and has competition as a fill-in. However, given the projected starting-infield, it doesn't seem too far-fetched to think that injuries and/or performance issues could land Kendrick much more than the 326 PA that ATC is projecting.
First Base
Eric Thames - Thames had an .851 OPS for the Brewers in 2019 but has only been over .800 twice in his five-year career and has only played in 100 games twice, as well.
Second Base
Starlin Castro - Castro had his own fantasy resurgence in 2019, with his 22 HR and 86 RBI both being career highs, and signed with Washington for 2-years/$12 million this past (and perpetual) offseason. But he's also still just Starlin Castro and that means he's probably going to have around a .270 AVG and hit 15-20 HR. Yawn.
Third Base
Carter Kieboom/Asdrubal Cabrera - Roster Resource currently has Kieboom penciled in as the starter but he hadn't won the job outright by the time spring training was canceled and will likely still be in competition with Cabrera whenever baseball resumes. One of Washington's top prospects, Kieboom was in a similar position last year after being called up in late-April with Trea Turner on the IL and Wilmer Difo filling in with just a .678 OPS. But Carter's debut was more a thud than a boom and he was sent back to the minors after posting just a .128 AVG and 37.2% K-rate over his first 43 PA.
Shortstop
Trea Turner - I don't need to tell you how great Turner is but he's only great when he's actually on the field. And a myriad of injuries have followed the 26-year-old for most of his career. Most projection systems have him playing around 150 games in 2020...Are you taking that bet?
Reasons For Doubt
- Kendrick hasn't been an everyday player since 2016. While he played in 121 games in 2019, 41 of those came as a pinch-hitter and Kendrick finished with just 329 PA as a starter.
- Eligible at first and second base, he doesn't have a starting job and will be competing with Asdrubal Cabrera and Ryan Zimmerman for backup playing time.
You obviously shouldn't be drafting Kendrick like he's a starter but he still finished at #180 on Razzball's player-rater in 2019 with just 370 PA. And he's basically free given his 428 ADP in NFBC. You don't have have to draft in him in shallow leagues but it would wise to keep a close eye on the Washington infield for any injury or performance issue that would see Kendricks move into a bigger role.