Bambino to Buster: The 20 Best Baseball Players of All Time

Drawing of Ken Griffey Jr. and Derek Jeter

As an Amazon Associate, Modded gets commissions for purchases made through links in this post.

Baseball has been America’s favorite game since the Civil War. Even in the 19th century, famous baseball players used many of the same rules you know in this stick-and-ball game. In its 150-year history, the game has seen incredible players who put their franchises and cities on their shoulders. Who is the best baseball player of all time? 

Tackling the Controversies First

Before hitting the rankings, plenty of debate exists about whether you should compare old baseball players with modern baseball greats. Firstly, there are the stars from before WWII and then, from 1958, the MLB expanded its game schedule for more baseball. Then, in 1969, the American and National Leagues divided into East and West Divisions. Should all these changes mean you compare baseball legends differently?

Don’t forget “the steroids era” from the late 1980s until MLB introduced random in-season testing in 2013. Several MLB stars before and after these mandatory tests were found to be using performance-enhancing drugs. Some faced criminal charges and others served long suspensions. Should these offenses expel them from this list of the best baseball players of all time? 

In compiling the rankings, MLB players from all baseball eras and those clouded by controversy remain in consideration. If their official stats are good enough and MLB validates their on-field feats, any player can qualify for mention in these rankings.        

Here are the top 20 best baseball players of all time. 

20. Albert Pujols 

Albert Pujols and Mike Trout

Pujols ended his storied MLB career in 2022, winning two World Series, three National League (NL) MVPs and six Silver Slugger Awards. The league named Pujols to the All-Star game nine times in 22 seasons, and his raw hitting power and ability to make contact made him a firm fan favorite. His whopping 703 home runs are good enough for fourth position on the all-time MLB list and qualification for these greatest baseball player rankings.

  • Teams: St. Louis Cardinals, LA Angels, LA Dodgers
  • Games: 3,080
  • At Bats: 11,421
  • Runs: 1,914
  • Hits: 3,384
  • Home Runs: 703
  • RBIs: 2,218
  • Average: .298

19. Mike Trout 

Since his 2011 debut, Trout has won three American League (AL) MVPs and a whopping nine Silver Slugger awards and led the AL in stolen bases in his younger years. At 34, Trout has enjoyed a stellar MLB career, including 387 home runs, 1,667 hits and 972 RBIs to date. They call “Kiiiiid” a five-tool player because he’s a truly gifted athlete, doing enough to rank amongst the best in MLB history.

  • Teams: LA Angels
  • Games: 1,548
  • At Bats: 5,617
  • Runs: 1,137
  • Hits: 1,667
  • Home Runs: 387
  • RBIs: 972
  • Average: .297

18. Roger Clemens

Through 24 MLB seasons, Clemens displayed an ability to strike out great batters. His potent and durable pitching style stayed with him into his 40s, allowing him to become the oldest MLB pitcher to win the Cy Young award. He won this award on seven occasions during an esteemed career and remains the only pitcher in history to win it with four different teams. 

  • Teams: Boston Red Sox, Toronto Blue Jays, NY Yankees, Houston Astros
  • Games: 709
  • Started: 707
  • Shutouts: 46
  • ERA: 3.12
  • Innings Pitched: 4,916.2
  • Hits Conceded: 4,185
  • Runs Conceded: 1,885
  • Strikouts: 4,672

17. Frank Robinson

Robinson will likely always be underrated, as younger fans simply don’t appreciate how great he was. The outfielder is one of only two players in MLB history to win MVP awards in the AL and NL leagues. In a storied career, Robinson led the Orioles to two World Series titles and accumulated 586 home runs. “The Judge’s” MLB  impact was such that three different teams retired his No. 20 jersey.

  • Teams: Cincinnati Reds, Baltimore Orioles, LA Dodgers, California Angels, Cleveland Indians 
  • Games: 2,808
  • At Bats: 10,006
  • Runs: 1,829
  • Hits: 2,943
  • Home Runs: 586
  • RBIs: 1,812
  • Average: .294

16. Shohei Ohtani

Shohei Otani

“Showtime” Ohtani is the best two-way player in baseball right now, and potentially a future MLB GOAT. Until Juan Soto’s recent 15-year $765 million contract, Ohtani’s $700 million one signed in 2023 was the largest in sports. This list isn’t about money, though, and Ohtani’s 2021 All-Star inclusion as both a pitcher and a position player broke MLB records. His 2024 NL MVP award made him the second player, after Frank Robinson, to win MVPs in both MLB leagues. Expect many more records from this baseball enigma. 

  • Teams: LA Angels, LA Dodgers
  • Games: 926
  • At Bats: 3,326
  • Runs: 616
  • Hits: 939
  • Home Runs: 243
  • RBIs: 599
  • Average: .282
  • Started: 86
  • Shutouts: 1
  • ERA: 3.01
  • Innings Pitched: 481.2
  • Hits Conceded: 348
  • Runs Conceded: 169
  • Strikouts: 608

15. Joe DiMaggio

Joe DiMaggio and his bat

Incredibly, DiMaggio needed three ballots to enter the Baseball Hall of Fame. That’s preposterous, considering how he led the New York Yankees to nine World Series titles in only 13 seasons. DiMaggio hit 361 home runs and 1,537 RBIs despite losing three seasons due to World War II, and his 56-game hit streak in 1941 remains a revered MLB record, enough to elevate him onto the top 20 baseball players of all time list.

  • Teams: NY Yankees
  • Games: 1,736
  • At Bats: 6,821
  • Runs: 1,390
  • Hits: 2,214
  • Home Runs: 361
  • RBIs: 1,537
  • Average: .325

14. Greg Maddux

“The Professor” graced MLB fields for 23 seasons, often outsmarting hitters with his pitching, based more on guile than pure velocity. Maddux was also a classy fielder and hitting pitcher, winning a record 18 Golden Gloves for any position and ending with a career .171 batting average. It’s no wonder Maddux often appears high in MLB greatest pitcher lists.

  • Teams: Atlanta Braves, Chicago Cubs, LA Dodgers, San Diego Padres
  • Games: 744
  • Started: 740
  • Shutouts: 35
  • ERA: 3.16
  • Innings Pitched: 5,008.1
  • Hits Conceded: 4,726
  • Runs Conceded: 1,981
  • Strikouts: 3,371  

13. Honus Wagner

Is shortstop the most challenging position in baseball? Nobody played it better than Hall-of-Famer Johannes “Honus” Wagner, who was an absolute ace in the position. “The Flying Dutchman” also hit .329 and drove in 1,732 RBIs over a 21-season career between 1897 and 1917, with his nickname honoring his speed on the field. During the same period, Wagner won a staggering eight NL batting titles and led the NL five times in stolen bases.

  • Teams: Louisville Colonels, Pittsburgh Pirates
  • Games: 2,796
  • At Bats: 10,430
  • Runs: 1,736
  • Hits: 3,430
  • Home Runs: 101
  • RBIs: 1,732
  • Average: .329

12. Cy Young

Denton True “Cy” Young was so revered for his MLB pitching excellence over his 22-year career that MLB named an award after him. When he retired in 1911, Young already held many pitching records, some still standing over a century later. He has still started the most games, pitched the most career innings, won more games than any other player and completed the most games. Known as one of the hardest-throwing pitchers in the MLB, Young had no problem making this list.

  • Teams: Cleveland Spiders, St. Louis Perfectos, Boston Americans, Cleveland Indians, Boston Braves
  • Games: 906
  • Started: 815
  • Shutouts: 76
  • ERA: 2.63
  • Innings Pitched: 7,356.0
  • Hits Conceded: 7,092
  • Runs Conceded: 3,167
  • Strikouts: 2,803  

11. Ken Griffey Jr.

Ken Griffey Jr. watching a home run

Remember when Griffey Jr. hit a home run right after his dad? That was among the most memorable baseball moments ever. Griffey Jr. is one of the best modern MLB players ever, boasting 630 home runs. His incredible athleticism on the field makes him one of the greatest athletes to ever grace the MLB. Saying he earned his 10 Golden Gloves would be an understatement, and coupled with his unquestionable charisma, saw him become one of MLB’s most popular players.

  • Teams: Seattle Mariners, Cincinnati Reds, Chicago White Sox
  • Games: 2,671
  • At Bats: 9,801
  • Runs: 1,662
  • Hits: 2,781
  • Home Runs: 630
  • RBIs: 1,836
  • Average: .284

10. Stan Musial

Stan the Man made a jaw-dropping 24 All-Star appearances — leaving him tied for second on the overall list. There might not be a better hitter in league history than Musial, with 3,630 hits and 475 home runs during his long career. He also won three World Series titles and three NL MVPs, which he may have improved upon without his World War II service.

  • Teams: Seattle Mariners, Cincinnati Reds, Chicago White Sox
  • Games: 3,026
  • At Bats: 10,972
  • Runs: 1,949
  • Hits: 3,630
  • Home Runs: 475
  • RBIs: 1,951
  • Average: .331

9. Buster Posey

Is there a better MLB catcher in history than Buster Posey? The Giants legend has a terrific record, leading his team to three World Series championships. Posey himself won five Silver Slugger awards and the NL MVP in 2012 after a remarkable comeback. His chemistry with multiple great pitchers, including Madison Bumgarner and Matt Cain, sets Posey apart from the rest — a true MLB catching legend.

  • Teams: San Francisco Giants
  • Games: 1,371
  • At Bats: 4,970
  • Runs: 663
  • Hits: 1,500
  • Home Runs: 158
  • RBIs: 729
  • Average: .302
  • Total Chances: 1,683
  • Putouts: 1.560

8. Lou Gehrig

Fans will associate Lou Gehrig with amyotrophic lateral sclerosis (ALS), but he was a superstar for 15 years with the Yankees. “The Iron Horse” hit 493 home runs during a pitcher-friendly era, drove in nearly 2,000 RBIs and had a career batting average of .340. Plus, it’s because of Gehrig that teams retire jerseys to this day.

  • Teams: NY Yankees
  • Games: 2,164
  • At Bats: 8,001
  • Runs: 1,888
  • Hits: 2,721
  • Home Runs: 493
  • RBIs: 1,995
  • Average: .340 

7. Walter Johnson

For 10 consecutive MLB seasons, the “Big Train” pitched 20 or more winning games, mainly due to his superfast fastball. In 1936, Johnson threw a $1 coin across the Rappahannock River — a reported 386 feet. It was this power and control that earned him some benchmark MLB records. Johnson’s 3,508 strikeouts stood for over 50 years and he still holds the record for shutout wins. 

  • Teams: Washington Senators
  • Games: 802
  • Started: 666
  • Shutouts: 110
  • ERA: 2.17
  • Innings Pitched: 5,914.1
  • Hits Conceded: 4,913
  • Runs Conceded: 1,902
  • Strikouts: 3,508  

6. Ty Cobb

Ty Cobb sliding into base

Cobb has a reputation that some might call misunderstood. Whatever the case, Cobb could play the game and is one of baseball’s best hitters of all time. He holds the record for combined runs and RBIs with over 4,000 to his credit — a record any player will find tough to break. For 23 years, the “Georgia Peach” was an excellent base stealer and hitter, winning 12 batting titles and entering the Hall of Fame on the first ballot with 98.2% of votes.

  • Teams: Detroit Tigers, Philadelphia Athletics
  • Games: 3,034
  • At Bats: 11,429
  • Runs: 2,246
  • Hits: 4,191
  • Home Runs: 117
  • RBIs: 1,931
  • Average: .367 

5. Ted Williams

It’s not controversial to say Ted Williams is the greatest hitter ever. The “Splendid Splinter” hit .344 for his career and was the last player to hit over .400 in a single season, although Aaron Judge is chasing the mark this season.  Williams reached 521 home runs and an incredible 1,839 RBIs with an on-base percentage (OBP) of .482. Plus, he lost multiple years due to World War II and Korean War combat. 

  • Teams: Boston Red Sox
  • Games: 2,292
  • At Bats: 7,706
  • Runs: 1,798
  • Hits: 2,654
  • Home Runs: 521
  • RBIs: 1,839
  • Average: .344 

4. Hank Aaron

Is Hank Aaron the true home run king? Fans, especially in Atlanta and Milwaukee, treasure “Hammerin’ Hank’s” 755 career home runs. Aaron’s true success was his longevity — he hit homers consistently for over 20 seasons. Between 1955 and 1973,  Aaron scored 24 or more home runs per season, with an incredible 47 coming in 1971. Aaron still holds the MLB records for the most career extra base hits, total bases and RBIs. He’s, without doubt, one of the best to ever play the game.

  • Teams: Milwaukee/Atlanta Braves, Milwaukee Brewers
  • Games: 3,298
  • At Bats: 12,364
  • Runs: 2,174
  • Hits: 3,771
  • Home Runs: 755
  • RBIs: 2,297
  • Average: .305

3. Barry Bonds

Barry Bonds watching a ball flying

Bonds won seven MVPs in his 22-season career, and still holds many single-season MLB records, including for his 73 home runs in the 2001 season. With 762 career homers, Bonds sits on top of the MLB pile, and he scored at least 100 RBIs in 12 different seasons. The only dark cloud over the home run king is his being found guilty of obstruction of justice relating to his suspected use of steroids, which he specifically denied. On performance, Bonds remains an undisputed member of the MLB’s historical upper echelon.

  • Teams: Pittsburgh Pirates, San Francisco Giants
  • Games: 2,986
  • At Bats: 9,847
  • Runs: 2,227
  • Hits: 2,935
  • Home Runs: 762
  • RBIs: 1,996
  • Average: .298  

2. Willie Mays

For combined offense and defense, Willie Mays is your guy. The “Say Hey Kid” hit 660 home runs in his career and drove in 1,903 runs. Mays won 12 Gold Glove Awards and two NL MVP trophies. Mays led his league in double plays five times and found fame for his catching ability, including “The Catch” in 1954. He didn’t even need the special baseball sunglasses worn nowadays to track the ball in the air. A true baseballing god, Mays ends second on our list. 

  • Teams: NY/San Francisco Giants, NY Mets
  • Games: 3,005
  • At Bats: 10,924
  • Runs: 2,068
  • Hits: 3,293
  • Home Runs: 660
  • RBIs: 1,909
  • Average: .301

So, who is the GOAT of baseball?

1. Babe Ruth

Babe Ruth

Some people debate how great George Herman Ruth was, but the stats and performances tell a story. He deserves his spot on top of this list due to his incredible all-around baseball prowess. You might not realize how good a pitcher “The Bambino” was, with an ERA of 2.28 over 1,221.1 innings pitched. 

Ruth found fame as the original home run hitter and the face of the Yankees during their heyday. He hit 714 home runs in a pitcher-friendly era, so you can only guess how many more he would’ve hit in later generations. Babe Ruth earns the nod as the best baseball player of all time.

  • Teams: Boston Red Sox, NY Yankees, Atlanta Braves
  • Games: 2,504
  • At Bats: 8,399
  • Runs: 2,174
  • Hits: 2,873
  • Home Runs: 714
  • RBIs: 2,213
  • Average: .342
  • Started: 148
  • Shutouts: 17
  • ERA: 2.28
  • Innings Pitched: 1,221.1
  • Hits Conceded: 974
  • Runs Conceded: 400
  • Strikouts: 488

The Best Baseball Players of All Time: Can Anyone Challenge Them?

Baseball has always been America’s pastime — even when the kids called it townball. We’ve been fortunate to see some otherworldly baseball players throughout the MLB’s long and rich history. With the current crop of Shohei Ohtani, Aaron Judge and Juan Soto, among others, threatening to break existing records in the future, are the best of all time under threat? 

Let us know if we’ve missed any players on this list. Should there be more pitchers included?  Keep an eye out for future articles on the MLB’s best pitchers of all time and the best college baseballers. Also, look at these baseballers who’ve excelled in other sports as well.

Originally posted Nov 6, 2023 – Updated June 13, 2025

Stay up to date with the latest by subscribing to Modded Minute.

Author