The Worst MLB Player on Every Team in 2017

Starting pitcher CC Sabathia of the New York Yankees celebrates an out.
Could CC Sabathia really be the worst MLB player on the New York Yankees? | Jason Miller/Getty Images

Every baseball fan takes pride in the talented players on their favorite team. Even bad teams have at least one player worth celebrating; the Miami Marlins have Giancarlo Stanton, the Los Angeles Angels have Mike Trout, and so on. There are a ton of great players in the game today. On the opposite side of things, every Major League team has at least one just plain bad player they carry on their roster. We looked at some of the most disappointing players in the game and came up with the worst MLB player on every team in 2017.

Arizona Diamondbacks – Daniel Descalso

Daniel Descalso hits a rare home run.
Daniel Descalso hits a rare home run. | Christian Petersen/Getty Images

An extra man on the bench for the Arizona Diamondbacks, utility man Daniel Descalso is useful in that he’s versatile and has played innings at every spot on the field except catcher and center field during his eight-year career. Yes, he even pitched 1/3 of an inning back in 2014. But as an overall player, he’s pretty bad. His career slash line is an ugly .240/.315/.350, and he’s hitting just .175/.309/.298 in 68 plate appearances so far this year. He has accumulated 0.9 WAR in eight seasons as a major-leaguer.

Atlanta Braves – Emilio Bonifacio

Emilio Bonifacio follows through.
Emilio Bonifacio hasn’t been good for years. | Daniel Shirey/Getty Images

Yes, Emilio Bonifacio is, in fact, still in the major leagues. Playing for the Atlanta Braves this season, he is hitting just 5-for-28 in 26 games with a .493 OPS. Going back to the 2013 season, the 32-year-old has a .607 OPS with six home runs in 958 plate appearances and 1.1 WAR. Bonifacio has a woefully bad 76 OPS+ for his career. Add in the fact that he’s not really an outstanding defensive player at any one position, and it’s curious how he continues to get a roster spot.

Baltimore Orioles – Ryan Flaherty

Ryan Flaherty swings and misses.
Ryan Flaherty swings and misses. | Adam Hunger/Getty Images

The Baltimore Orioles selected infielder Ryan Flaherty from the Chicago Cubs in the 2011 Rule 5 Draft, and he’s been with their organization ever since. It’s a wonder why the Orioles can’t seem to give up on him, considering his awful offensive numbers. In 1,256 career plate appearances, Flaherty has a .216/.285/.347 slash line with a 75 OPS+. He’s a solid defensive player, which is where his only value comes from. The 30-year-old has a 1.8 WAR over his six MLB seasons.

Boston Red Sox – Deven Marrero

Deven Marrero gets a Gatorade shower.
Deven Marrero gets a Gatorade shower. | Rich Gagnon/Getty Images

Boston Red Sox infielder Deven Marrero has made an appearance in the major leagues for the third season in a row. In 87 combined plate appearances, the 26-year-old has a .198/.253/.259 slash line with two doubles and a home run, as well as -0.3 WAR. You could probably chalk this up to a small sample and point out that he’s still relatively young, but his minor-league numbers aren’t much better: .243/.311/.325 with 17 home runs in over 2,100 plate appearances.

Chicago Cubs – Brian Duensing

Brian Duensing gestures to his teammates.
Brian Duensing defines mediocrity. | Matthew Stockman/Getty Images

Although he’s put up good enough numbers so far this season with the Chicago Cubs, left-handed reliever Brian Duensing is absolutely the worst MLB player on the team. In 16 innings, he’s allowed 18 hits and three home runs. But he has only walked two batters while striking out 19. His 3.94 ERA is fine, even if it’s not great. Over the course of his career, he has a 4.12 ERA and 9.6 H/9 allowed with just 6.1 K/9. Not the best peripheral stats for a reliever.

Chicago White Sox – Cody Asche

Cody Asche actually hits a baseball.
Cody Asche actually hits a baseball. | Jason Miller/Getty Images

Third baseman/DH Cody Asche is the rare combination of being both a bad hitter and a bad fielder. In his career, which spans four seasons with the Philadelphia Phillies and the early portion of the 2017 season with the Chicago White Sox, Asche has a slash line of .234/.293/.376 in 1,349 plate appearances. His career WAR? An abominable -2.2 over 390 games. If that sounds like it couldn’t get any worse, so far this season he is 6-for-57 at the plate, which brings his OPS+ to exactly one. Hard to be any more terrible than that.

Cincinnati Reds – Stuart Turner

Stuart Turner hits a sac fly.
Stuart Turner hits a sac fly. | Joe Robbins/Getty Images

Every team needs a backup catcher, but Devin Mesoraco accomplishes that for the Cincinnati Reds. With Tucker Barnhart the regular starter, it’s curious what 25-year-old Stuart Turner is currently doing on the roster. In 11 games, he’s just 4-for-25 at the plate with a .465 OPS. This has been his first taste of the big leagues, but his numbers in the minors don’t exactly justify anything either: .241/.325/.352 in 1,259 plate appearances.

Cleveland Indians – Josh Tomlin

Josh Tomlin pitches.
Josh Tomlin of the Cleveland Indians doesn’t miss a lot of bats. | Jennifer Stewart/Getty Images

Cleveland Indians starting pitcher Josh Tomlin is pretty bad. Despite his weird rise to help his team make it to — and actually win Game 3 of — the World Series, the numbers don’t lie over the course of time. Since the start of the 2012 season, Tomlin has a 4.80 ERA in 487 2/3 innings with 9.8 H/9 and just 6.5 K/9. So far this season, the 32-year-old has allowed 47 hits,  including four home runs, in 38 1/3 innings with a 5.87 ERA.

Colorado Rockies – Jordan Lyles

Jordan Lyles pitches.
Jordan Lyles has ugly career numbers. | Matthew Stockman/Getty Images

Pitching for the Colorado Rockies will do a lot of bad things to your stat line, but it probably doesn’t matter that much for Jordan Lyles. Now pitching in relief after mostly starting throughout his career, Lyles has a 7.94 ERA in 17 innings so far this season. He’s allowed 25 hits and four home runs, as well. During his seven-year career with Colorado and the Houston Astros, Lyles has a 5.24 ERA and 10.1 H/9 in 628 1/3 innings pitched.

Detroit Tigers – Mikie Mahtook

Mikie Mahtook swings at a bad pitch.
Mikie Mahtook swings at a bad pitch. | Christian Petersen/Getty Images

In 2015, the Tampa Bay Rays called up former first-round pick and outfielder Mikie Mahtook. He hit well in 41 games, posting a .970 OPS with nine home runs for Tampa. But now with the Detroit Tigers, Mahtook has been completely unable to recapture the magic of that short stint two seasons ago. In the last two years, Mahtook has 238 plate appearances in the major leagues with four home runs and an ugly .193/.236/.296 slash line with -1.2 WAR.

Houston Astros – Mike Fiers

Mike Fiers looks disappointed after pitching.
Mike Fiers gives up a lot of homers. | Getty Images

Starting pitcher Mike Fiers has never been much more than a mediocre starter with a lot of talent in his career, posting a 3.98 ERA over parts of seven years with the Milwaukee Brewers and Houston Astros. But last season, he had just a 4.48 ERA in 168 2/3 innings with 7.2 K/9 and a league-worst 17 wild pitches. This year, it’s only gotten worse. He has a 5.75 ERA in 36 innings, having allowed an astounding 16 home runs — the worst in all of baseball.

Kansas City Royals – Travis Wood

Travis Wood pitches.
Travis Wood can’t seem to find his magic. | Ed Zurga/Getty Images

Left-handed reliever Travis Wood has yet to be used in the outfield or to pinch-hit this season with the Kansas City Royals — both things he did on a semi-frequent basis during his run with the Chicago Cubs. Focusing specifically on throwing baseballs from the mound, Wood has been awful for the Royals in 2017. In 11 1/3 innings pitched, he has a 11.91 ERA with 17 hits and 10 walks allowed. But at least he’ll always have the home run he hit in Game 2 of the 2016 NLDS against the San Francisco Giants.

Los Angeles Angels – Ben Revere

Ben Revere of the Los Angeles Angels of Anaheim crosses home plate.
Ben Revere of the Los Angeles Angels of Anaheim crosses home plate. | Stephen Dunn/Getty Images

Outfielder Ben Revere has never been anything special on the field or at the plate, but he did do one thing particularly well: collect hits. Earlier in his career, Revere was a regular .300-plus hitter, even leading the National League in hits in 2014. But he’s regressed in a big way, hitting .219/.256/.308 over the last two seasons with the Washington Nationals and Los Angeles Angels. That’s a cumulative -2.1 WAR over 129 games played. In short, he’s been one of the worst players in baseball since the start of the 2016 season.

Los Angeles Dodgers – Scott Van Slyke

Scott Van Slyke rounds the bases.
What happened to Scott Van Slyke? | Matthew Stockman/Getty Images

Back in 2014, Los Angeles Dodgers outfielder Scott Van Slyke had a nice season. In 98 games, the then-27-year-old hit 11 home runs with a .910 OPS and a 157 OPS+. Many around the game considered him an up-and-comer at the time. But in part-time duty over the last two seasons, Van Slyke has been downright awful. In 155 plate appearances, he has a .603 OPS with three home runs and -0.3 WAR since the start of the 2016 season.

Miami Marlins – A.J. Ellis

A.J. Ellis attempts to hit.
A.J. Ellis is a bad hitter. | Eric Espada/Getty Images

A.J. Ellis is nothing more than the backup catcher on the Miami Marlins, but overall he’s a pretty garbage player these days. Sure, he has his ability behind the plate, but since the start of the 2014 season he has a slash line of .208/.323/.301 with 12 home runs in 794 plate appearances. That makes Ellis one of the worst MLB players to accumulate a real amount of playing time the last three-plus years. During that stretch, he also compiled just 1.4 WAR.

Milwaukee Brewers – Nick Franklin

Nick Franklin swings and misses.
Nick Franklin probably should be in the minors. | Dylan Buell/Getty Images

Utility player Nick Franklin is currently the worst MLB player for the Milwaukee Brewers. Despite a solid year for the Tampa Bay Rays last season — he had a .771 OPS in 60 games played with six home runs — Franklin has dismal overall numbers the last few years. Since the start of the 2014 season, he has a slash line of .211/.265/.356 with -1.0 WAR. This year for Milwaukee, Franklin has hit 9-for-46 with 10 strikeouts and one homer.

Minnesota Twins – Chris Gimenez

Chris Gimenez pitches.
Is Chris Gimenez a catcher or a pitcher? | Hannah Foslien/Getty Images

The fact that Chris Gimenez is a catcher is probably the only reason he’s in the major leagues these days. Playing for the Minnesota Twins, the 34-year-old has a career OPS of .631 with 15 home runs in 820 plate appearances. This season he has hit just 7-for-36 in 16 games, and he has -0.2 WAR accumulated since 2014. If it tells you anything about his hitting prowess, he has more games in his career as a pitcher (five) than he does as a designated hitter (four).

New York Mets – Curtis Granderson

Curtis Granderson eyes the pitcher.
Curtis Granderson of the New York Mets prepares to bat against the Washington Nationals. | Patrick Smith/Getty Images

It’s been a fast decline for the 36-year-old outfielder. Curtis Granderson probably wouldn’t even be playing anymore if the New York Mets didn’t have so many injuries. However, they have few other places to turn during a disastrous 2017 season. In 136 plate appearances, Granderson has a slash line of .144/.206/.272 with two home runs. That’s 18-for-125, to simplify it down to just hits and at-bats, not to mention his nightmare inducing -1.0 WAR in less than a quarter of a season.

New York Yankees – CC Sabathia

C.C. Sabathia pitches against the Cardinals.
CC Sabathia has not been good for a few years. | Adam Hunger/Getty Images

It’s hard to pick a “worst player” on the New York Yankees, because they’re playing so well this year. But we’ll go ahead and pick left-handed starting pitcher CC Sabathia, who has been declining big-time for a few years. In 106 starts since 2013, Sabathia has a 4.62 ERA with 684 hits allowed in 643 innings pitched. In just the 2017 season, he’s allowed 42 hits in 39 innings with just 27 strikeouts and a 5.77 ERA.

Oakland A’s – Mark Canha

Mark Canha sprints to first base.
Mark Canha is not a good baseball player. | Mike Stobe/Getty Images

The Oakland A’s just recalled first baseman Mark Canha to the big-leagues when they waived Jaff Decker, who would’ve been on this list, had he not just been waived. Canha performed well in his initial trip to the big show with the A’s back in 2015. However, injuries and poor performance led to slow traction the last two seasons. In 74 total plate appearances, Canha went 11-for-70 the last two years with a .492 OPS.

Philadelphia Phillies – Brock Stassi

Brock Stassi follows through.
Brock Stassi is a fun story, but he’s really not very good. | Christopher Pasatieri/Getty Images

It was a fun story when career minor-leaguer Brock Stassi made the Philadelphia Phillies out of spring training this year. But there was a reason that the 27-year-old spent the first six seasons of his professional career in the minors: He’s not very good. In 53 plate appearances this season, he’s 11-for-48 batting with a .229/.302/.438 slash line and 0.1 WAR. That may not look all that terrible, but he’s legitimately the worst player on the team right now.

Pittsburgh Pirates – Alen Hanson

Alen Hanson slides home safely for the Pittsburgh Pirates.
Alen Hanson slides home safely for the Pittsburgh Pirates. | Jon Durr/Getty Images

Infielder Alen Hanson was once a highly-rated prospect, but that was a few years ago. After a couple mediocre seasons in the minors and losing his prospect status, he made his big-league debut in 2016 with the Pittsburgh Pirates. He’s back with the team yet again this year, but his career numbers are anything but impressive: .188/.233/.261 in 73 plate appearances with -0.5 WAR. He’s still only 24 years old, so there’s chance to improve for Hanson, but he’s the worst player on the team now.

San Diego Padres – Jered Weaver

Jered Weaver of the San Diego Padres pitches.
Jered Weaver of the San Diego Padres pitches. | Denis Poroy/Getty Images

If we’re going to mention Mike Fiers allowing 16 home runs, how could we avoid Jered Weaver and his 14 homers allowed? Considering he’s done it with the San Diego Padres, who have a pitching-friendly home park, that’s really bad. In 41 2/3 innings, he has a 6.05 ERA with just 23 strikeouts. It’s been a slow death for Weaver, who has a 4.99 ERA over 65 starts the last three seasons.

San Francisco Giants – Mike Morse

Mike Morse celebrates scoring a home run.
Mike Morse is excited. | Thearon W. Henderson/Getty Images

As recent as 2014, first base/outfielder Mike Morse was still a decent player. He was 32 years old at the time and hit 16 home runs with a .811 OPS, winning the World Series with the San Francisco Giants that year.

But Morse has bounced around the last few years and hasn’t performed particularly well, finding his way back with the Giants again this year and hitting 5-for-24 in 14 games in 2017. Since the start of the 2015 season, Morse has a slash line of .222/.297/.330 with six home runs in 290 plate appearances and -0.6 WAR.

Seattle Mariners – Mike Freeman

Mike Freeman poses for a portrait.
This is what Mike Freeman looks like. | Christian Petersen/Getty Images

Seattle Mariners utility man Mike Freeman made his major-league debut at the age of 28 in 2016. He’s back with the team again in 2017, despite the fact that he’s been pretty bad overall as a player. In 55 career plate appearances, Freeman has a slash line of .140/.218/.220 with a whopping two extra-base hits. He’s just 2-for-28 batting this season for Seattle, and has compiled a -0.7 WAR in 36 career games.

St. Louis Cardinals – Jonathan Broxton

Jonathan Broxton pitches.
Jonathan Broxton used to be good, but isn’t anymore. | Mike Zarrilli/Getty Images

Once upon a time, relief pitcher Jonathan Broxton was one of the very best in the game. From 200614, Broxton had a 3.00 ERA with 118 saves in 525 2/3 innings pitched, striking out 10.3 per nine innings. Since the start of the 2015 season, however, he’s been not so good, with a 4.57 ERA in 132 innings and 8.8 K/9 over that span. With the St. Louis Cardinals so far in 2017, he has a 5.73 ERA in 11 innings with nine walks.

Tampa Bay Rays – Peter Bourjos

Peter Bourjos gallops down to first base.
Peter Bourjos gallops down to first base. | Brian Blanco/Getty Images

Since 2014, outfielder Peter Bourjos has a slash line of .231/.290/.363 with 15 home runs and 15 triples in 955 plate appearances. He’s playing for the Tampa Bay Rays this season, and the numbers haven’t been kind to him thus far: 10-for-49 batting with a .631 OPS. Since that 2014 season, the 30-year-old compiled 0.4 WAR for the Cardinals, Phillies, and Rays. His only real value is that he’s relatively speedy, so he can pinch-run for you on occasion.

Texas Rangers – Pete Kozma

Pete Kozma joins the meeting on the mound.
Pete Kozma joins the meeting on the mound to pretend he’s important. | Stephen Brashear/Getty Images

Another former Cardinal to make this list is infielder Pete Kozma. He’s seen 604 plate appearances (or about one full season) since 2013 in the major leagues, hitting .207/.273/.254 with one home run. During that same period of time, he’s also accumulated -1.2 WAR, leaving him undeniably below the level of the average player at Triple-A. In time with the Yankees and Texas Rangers this season, Kozma has gone 2-for-15 with four strikeouts.

Toronto Blue Jays – Chris Coghlan

Chris Coghlan jogs down to first base.
Chris Coghlan jogs down to first base. | Jim McIsaac/Getty Images

Toronto Blue Jays outfielder Chris Coghlan was once a very good player. He won the NL Rookie of the Year award in 2009 with a .321 batting average and 122 OPS+, but he failed to repeat those kinds of numbers on a consistent basis.

Coghlan was very good in two seasons with the Chicago Cubs in 2014 and 2015. But since the start of the 2016 season the 32-year-old has been dreadful. He has a slash line of .187/.287/.310 with an OPS+ of 64 in 356 plate appearances. As an outfielder, Coghlan is a poor defender and has a -0.9 WAR the last two years. At least he’ll always have one of the coolest plays in baseball history.

Washington Nationals – Chris Heisey

Chris Heisey hits a home run in the NLDS.
Chris Heisey hits a home run in the NLDS. | Patrick Smith/Getty Images

Outfielder Chris Heisey has been around the big leagues for eight years, but really hasn’t been an above-average hitter since 2011 when he was with the Cincinnati Reds. Now with the Washington Nationals, Heisey has slash line of .209/.277/.379 with 20 home runs in 579 plate appearances since the 2014 season, and is just 6-for-42 so far in 2017. So far this season he’s been worth -0.5 WAR for the Nationals, which makes it hard to believe they couldn’t find an upgrade somewhere else.

Statistics courtesy of ESPN and Baseball-Reference.