Last Updated on October 3, 2023 by Matt Musico
There are lots of exclusive clubs created within the game of baseball. Is one any more popular than having the most home runs all time in MLB history, though? Probably not. We may be biased about that, but whatever. Major League Baseball has a long and storied history that spans more than 150 years. Despite that, merely appearing in a big-league game puts those ballplayers in exclusive company.
To date, there have been just over 20,000 players who have donned a big-league uniform and appeared in a game. It’s crazy to think that all the players who’ve ever appeared in a big-league contest just about equal the average attendance to an Oakland A’s game in 2019.
But hey, that’s baseball, baby. The following 22 sluggers are literally in the top 0.1% of home run hitters in the sport’s history. That’s cool. Let’s dig into the details for those players, shall we? After that, we’ll list out the remainder of the top 61.
Want to see some homers in person this season? Of course you do. Grab MLB tickets from our friends at Vivid Seats. And before you get to the stadium, make sure you’re decked out in the right gear. Get your favorite team’s official merch from the MLB Shop or a ‘Big Dinger Energy’ shirt from our apparel store.
Most Home Runs All Time: Top 10
Barry Bonds: 762 Home Runs
Even if some think this should come with an asterisk, this is the most home runs all-time in MLB history. Either way, 762 home runs are a heckuva lot of dingers. Outside of Barry Bonds’ record-breaking 73-homer season in 2001, the former Pirates and Giants outfielder was incredibly consistent in the power department. This was also the case before the talk of performance-enhancing drugs became the focal point of conversations involving his name.
Bonds enjoyed a 14-year stretch from 1990 to 2004 where he hit at least 30 home runs each season. This included one of just five 40/40 seasons in baseball history. Outside of his 2001 campaign, Bonds never hit more than 46 homers in a season during this span of time. If we split his career at the 2000 season, he clubbed 494 round-trippers through his age-35 season, followed by another 268 between the ages of 36 and 42.
Be sure to also check out Barry Bonds’ milestone homers through the years.
Henry Aaron: 755 Homers
Similar to the only man currently ahead of him, Hank Aaron was a model of consistency in the home run department. It’s a necessity if anyone is going to accumulate this many taters. He only led the league in homers four times and hit more than 45 dingers in a single season once (47 in 1971). He failed to hit 20-plus homers just three times in his career: 13 in 1954 (his rookie season) along with 12 in 1975 and 10 in 1976. Those were his final two years in the big leagues.
Although Aaron did win a World Series in 1957, baseball fans didn’t get to see Hammerin’ Hank in the postseason much. He appeared in back-to-back Fall Classics in ‘57 and ‘58 and then appeared in the 1969 NLCS. He hit six more home runs in October, with three coming in ‘57 and the other three coming in ‘69.
Unsurprisingly, he’s also the Atlanta Braves’ all-time home run king.
Babe Ruth: 714 Homers
The below graphic is meant to show off how long Aaron spent at the top. But if you fast-forward to the 15-second mark, you’ll see the ridiculous rise Babe Ruth made. Then, it’ll be pleasing to watch him create as much distance as he did between himself and whoever was in second place.
In memory of Hank Aaron after his passing on Friday, I have created an interactive timeline of the Top-10 Career Home Run leaders since the beginning of the Modern Era.— Greg Harvey (@BetweenTheNums) January 25, 2021
Check out how different players enter and exit through different eras of baseball. #RIPHankAaron ❤️ pic.twitter.com/TIz4WPTM3e
After Ruth retired in 1935, the man who was second on the career home run leaderboard was his teammate, Lou Gehrig. He hit 378 homers of his own at the time. That 336-dinger gap between Ruth and Gehrig is just about equal to the difference between Gehrig and Mike Griffin, who was sitting at 210th place all-time with 42 homers.
That’s insane. Yes, the game has changed a lot, but there’s no way around it — Ruth was in a league of his own. After all, there’s a reason why his 168.4 fWAR is still the best in baseball history. And if it wasn’t for the changing game, his name would be littered all over the single-season homer leaderboard much more. With 659 of his homers coming in the Bronx, though, he’ll be atop the Yankees’ all-time leaderboard for a long time.
Albert Pujols: 703 Homers
Albert Pujols immediately distinguishes himself on this list because as of the 2022 season, he’s the only active player. While his tenure with the Los Angeles Angels had been mostly meh, his Hall of Fame career was solidified before he even left the St. Louis Cardinals following the 2011 season.
As a refresher, here are his 162-game averages for his first 11 big-league campaigns: .328/.420/.617 with 43 home runs, 44 doubles, 117 runs scored, 121 RBI, 93 walks, and 67 strikeouts. His yearly average. That’s insane.
He also won six Silver Slugger awards, two Gold Gloves, a Rookie of the Year, three NL MVPs, and went to 10 All-Star Games. Oh, and he finished outside the top five of NL MVP voting just once (ninth in 2007). He honestly could have ridden off into the sunset after winning the 2011 World Series and still be a first-ballot Hall of Famer. All the other stats and milestone homers Pujols has accumulated along the way certainly won’t hurt his case, though.
Alex Rodriguez: 696 Home Runs
Like many players from recent eras, Alex Rodriguez will deal with the scrutiny that comes with either being under suspicion or getting busted (like he did) for taking performance-enhancing drugs. But still, 696 homers are a lot of dingers. One of the more notable spans of time during his MLB career came during his three-year stint with the Texas Rangers.
He only won a single American League MVP award while he was in Arlington, but A-Rod led the league in homers three consecutive times (52, 57, and 47). After joining the New York Yankees, he led the league in homers two more times, and on both of those occasions, he ended up taking home AL MVP honors. As of July 2021, he’s actually just one of three players in baseball history to have 600-plus homers (696) with at least 2,000 runs scored (2,021) and 2,000 RBI (2,086).
The other two? Hank Aaron and Babe Ruth. Not bad company. He clearly likes being in exclusive clubs because he’s the single-season home run king for the Rangers and is also part of the 40/40 club himself. Just by looking at his career accomplishments, A-Rod seems to be an easy choice to make the Hall of Fame, but his transgressions with PEDs will make that incredibly difficult for him.
Willie Mays: 660 Home Runs
There wasn’t much Willie Mays didn’t accomplish during his 22-year Hall of Fame career. He was Rookie of the Year, won two MVPs, is a World Series champion, and is a 24-time (!) All-Star. He also won 12 Gold Gloves, a batting title, and he even took home two All-Star Game MVP awards. Probably one of my favorite observations about Mays, though, is what he did at the beginning of his career.
As mentioned before, he won the Rookie of the Year award in 1951. In 1952, he was limited to just 34 games (144 plate appearances). He slashed .236/.326/.409 with four home runs and 23 RBI. Not at all terrible given the little bit of time he had on the field, but not the awe-inspiring numbers we know and love. He didn’t play baseball in 1953 due to military service and returned in 1954.
What did he do in his return? The then-23-year-old slashed .345/.411/.667, which gave him a league-leading 1.078 OPS. He also slugged 41 homers with 33 doubles, 13 triples (led the league), 110 RBI, and 119 runs scored in 641 plate appearances (151 games). That performance earned him his first of two MVP awards. Even though he’s moved down the most home runs all-time leaderboard, his 660 career dingers remain a magical number. And unsurprisingly, he’s hit the most homers all-time in center field.
Ken Griffey Jr.: 630 Homers
We go from the “Say Hey Kid” to simply, “The Kid”. Ken Griffey Jr. is the epitome of the ’90s for every baseball fan who grew up during that decade. Griffey was a sure-fire first-ballot Hall of Famer, and similar to Pujols, he built up that credibility based on what he did with the Seattle Mariners. During his 11 seasons in the Pacific Northwest, Junior racked up 398 of his career homers and 1,152 of his RBIs.
In a typical year, the All-Star outfielder averaged a .299/.380/.569 line with 43 home runs and 123 RBI. He led the league in homers four times and collected all 10 of his Gold Glove awards, along with all seven of his Silver Sluggers, during the first portion of his career.
Even with 630 career homers, we have to wonder if Griffey could’ve accumulated the most home runs all-time if he just stayed healthy. After blasting 40 taters in 2000 — his first season with the Cincinnati Reds — he played more than 100 games in a season just once between 2001 and 2004 (111 games in ‘01). However, one of my favorite Griffey stats is his consistent dominance in 1997 and 1998:
Stumbled upon this and thought it was fun…— Matt Musico (@mmusico8) April 27, 2021
Ken Griffey Jr. in 1997: 34 2B, 3 3B, 56 HR, 147 RBI, 76 BBs, 121 Ks
Ken Griffey Jr. in 1998: 33 2B, 3 3B, 56 HR, 146 RBI, 76 BBs, 121 Ks
Baseball, man. #Mariners
Also, if you claim to be a ‘90s kid and followed baseball, it was a rite of passage to mimic his sweet swing at home. Whether it was in the backyard or in your bedroom. While you’re here, check out milestone Ken Griffey Jr. homers through the years to get even more glimpses of his sweet swing.
Jim Thome: 612 Homers
It seems as if Jim Thome sneaks onto this list without a bunch of fanfare. That’s likely not the case if you ask any baseball fan located in the Midwest about him. He enjoyed 12 seasons with 30-plus homers, including eight times in a row from 1996 through 2004. His single-season career-high was 52 dingers, which came in his last year with Cleveland (2002).
However, hear me out on being one of the more underrated sluggers in recent history. He only led the league in homers once (47 in 2003 with the Philadelphia Phillies). Despite racking up 1,699 career RBI, he also never led in that category during a single season. He only won one Silver Slugger award (1996) and was selected to just five All-Star Games. Yet, he’s just one of nine hitters to surpass the 600-homer plateau.
Sure, he was a first-ballot Hall of Famer in 2018 after getting 89.8% of the vote, but I think he deserves more love. It could potentially be the curse of being a first baseman, a position that typically doesn’t get the kind of love it should. He did finish his career with an MLB-record 13 career walk-off homers, which you can see above.
In addition to being Cleveland’s single-season home run record holder, he’s also the franchise’s all-time home run leader.
Sammy Sosa: 609 Homers
There were a handful of things that followed Sammy Sosa around baseball. You know, like the PED talk and that time he got caught using a corked bat. There are a few other interesting things when digging into his 18-year MLB career, though. For instance, when looking at the most homers in a season ever, he’s heavily featured with three different efforts of 60-plus homers. Unfortunately for him, he didn’t lead the league in homers on any of those occasions.
He did win two single-season home run titles, but it was when he hit 50 bombs in 2000 and 49 in 2002. And even though Mark McGwire ultimately broke Roger Maris’ record and finished 1998 with a league-leading 70 homers, Sosa took home NL MVP honors. It wasn’t close, either — Sosa finished with 438 points overall, including 30 first-place votes. McGwire finished a distant second with 272 total points and just two first-place votes.
All those 60-homer seasons helped Sosa climb up the leaderboards in short order and be among the most home runs all-time in MLB history. Over a 12-year span between 1993 and 2004, the slugger accumulated 537 of those 609 career dingers. He hit fewer than 33 homers in a season just once during this span. It happened during the strike-shortened season of 1994 when he hit 25 homers.
Frank Robinson: 586 Home Runs
Despite all the home runs and accolades Frank Robinson so rightfully deserves for both his playing and managerial careers, there’s one that will always take the cake for me. He’s still the only player to win MVP awards in both leagues. During his age-25 season for the Cincinnati Reds in 1961, Robinson captured the NL MVP after posting a 1.015 OPS with 37 homers and 124 RBI. Once he got traded to the Baltimore Orioles in 1966, he immediately made a good first impression by winning AL MVP honors.
That wasn’t the only thing he won that year. He also distinguished himself by taking home triple crown honors. Robinson actually led the league in batting average (.316), on-base percentage (.410), and slugging percentage (.637), along with his league-leading 49 home runs and 122 RBI.
The dude was just dominant for 21 years, and that doesn’t even touch on his 14 All-Star Game appearances, the All-Star Game MVP he won, and the World Series MVP he won (along with two World Series titles). Oh yeah, and the Manager of the Year award he captured in 1989 by turning a 54-107 Orioles team into an 87-75 squad.
Most Home Runs All Time: No.’s 11-20
Mark McGwire: 583 Homers
While Mark McGwire’s MLB legacy is mostly tied to the 1998 Home Run Chase (and the PED fallout afterward), he was a consistent performer. Of course, this shouldn’t be shocking since one doesn’t accidentally hit 583 home runs during their professional baseball career. Although he never won an MVP award, McGwire did take home AL Rookie of the Year honors in 1987. He did it off the strength of leading the league with a .618 slugging percentage and 49 home runs. That homer total was an MLB rookie record until Aaron Judge broke it with 52 dingers in 2017.
Outside of leading the league in homers four times, there are a couple of things that stand out about McGwire. One was his ability to get on base, and the other was the insanely high slugging percentages he’d put together. His career on-base percentage settled in at .394, and he led baseball twice in this category (.467 in ‘96, .470 in ‘98). In both of those years, he also posted a slugging percentage above .700 (!). His single-season career-high mark of .752 during his record-breaking 1998 season is the 10th-highest total of all time.
While McGwire always had a knack for hitting the long ball, the four-season span between 1996 and 1998 was just ridiculous. He hit at least 50 homers each year, totaling 245 dingers overall, or just about 42.0% of his career total.
Harmon Killebrew: 573 Homers
For Harmon Killebrew, it was about getting consistent playing time at the big-league level. He made his MLB debut at the ripe age of 18 in 1954. For his first five seasons, he played in just 113 games, accumulating 280 plate appearances with 11 homers. Killebrew’s first full season came as a 23-year-old in 1959, and he led the league with 42 home runs.
He ended up winning the single-season home run crown five more times, racking up eight total seasons of 40-plus dingers over the course of 22 years between the Washington Senators, Minnesota Twins, and Kansas City Royals. At the height of Killebrew’s prime, which essentially took place between 1958 and 1972, the slugger averaged 43 home runs and 114 RBI while drawing nearly as many walks (112) as strikeouts (114) during a 162-game season.
This was obviously a catalyst to him being among the most home runs all-time in MLB history. With numbers like these, it’s not surprising that Killebrew is the Twins’ all-time home run king by a very comfortable margin.
Rafael Palmeiro: 569 Home Runs
Rafael Palmeiro is now best known for waving his finger and denying his own PED usage (which was later proven to be a lie). But he had himself a great career and probably would’ve had a shot at the Hall of Fame if it wasn’t for how things ended. What’s interesting to look at is his career arc — especially in the power department. Between 1986 and 1994, Palmeiro enjoyed just one season of 30-plus homers (37 in 1993). That was through his age-29 campaign.
During the latter portion of his career (11 seasons from age 30 to 40), he put together a stretch of nine consecutive years with at least 38 dingers per season. This included four different occasions of at least 40 homers. So, when we’re thinking about hitters during the steroid era, it’s not usual to watch a player hit another level for such a prolonged period of time in the second half of their career.
He was just a steady contributor from the beginning of his career to the end. When looking at his Baseball-Reference page, Palmeiro led the league in just three different categories: hits (191 in 1990), doubles (49 in 1991), and runs scored (124 in 1993). He did, however, accumulate at least 4.0 fWAR on 10 different occasions.
Reggie Jackson: 563 Homers
One of my favorite statistics about Reggie Jackson that not many people know about is that he holds the all-time record for strikeouts by whiffing 2,597 times. Why does nobody know — or care — about this? Well, it’s because he hit 563 home runs and is, well, Mr. October. The left-handed slugger led baseball in homers for a single season four different times throughout his career, but none of those occasions included his single-season career-high.
That occurrence took place during his second full season with the Oakland Athletics in 1969. He slugged 47 home runs, drove in 118 runs, and scored another 123 of his own off the strength of a .275/.410/.608 triple slash.
As his nickname suggests, Jackson showed up for some of his biggest moments in the postseason. He’s a five-time World Series champ and a two-time World Series MVP. In total, he suited up for 77 playoff games, accumulating 318 plate appearances in the process. He was always a threat, but he was at his best in the Fall Classic, where he appeared in 27 games and racked up 116 plate appearances. With that opportunity, Jackson slashed a ridiculous .357/.457/.755.
Of the 18 postseason homers he hit, 10 came in the World Series, and half of his total postseason RBI (24 out of 48) came on the game’s biggest stage.
Manny Ramirez: 555 Homers
Manny Ramírez came with his quirks and flaws. Even with the PED issues from his past, there’s one thing that’s always been true: as long as the man had a bat in his hands, he was dangerous. What I’m in awe of most, though, is the consistency he showed between his tenures with the Cleveland Guardians and the Boston Red Sox, both teams he spent eight years of his career with.
Through 4,095 plate appearances in Cleveland, Ramirez slashed .313/.407/.592, averaging 40 homers and 136 RBI per 162 games played. If we take a look at his time in Boston, where he accumulated 4,682 plate appearances, the outfielder slashed .312/.411/.588, averaging 35 homers and 110 RBI.
While he never took home a league MVP award, Ramirez finished among the top 10 seven straight times between 1999 and 2005. He did win a total of nine Silver Slugger awards, with the final eight coming consecutively. At the moment, he’s hit the most postseason homers in MLB history, too.
Mike Schmidt: 548 Homers
Mike Schmidt was every manager’s dream. Not only was he a feared hitter, but he was also a top fielder at third base. The 12-time All-Star and first-ballot Hall of Famer showcased his diverse on-field talents by winning six Silver Sluggers and 10 Gold Gloves. Those Gold Glove awards include a run of six in a row.
He spent the entirety of his 18-year career with the Philadelphia Phillies, helping them win the 1980 World Series title. He did his part by hitting .381/.462/.714 with two homers and seven RBI in 26 plate appearances. That netted him series MVP honors.
Schmidt led the league in homers eight times. He also took home the NL MVP award three times throughout his career. The 1980-81 seasons might have been his best overall. The third baseman was named MVP in back-to-back years and led baseball in homers and RBI both times (48 dingers and 121 RBI in ‘80, 31 dingers and 91 RBI in ‘81).
Over the course of 1,086 plate appearances between these two seasons, he slashed .298/.402/.632, accumulating 16.8 total fWAR in the process. Given his longevity, it’s no surprise he’s on the leaderboard for the most home runs all-time in MLB history.
David Ortiz: 541 Homers
David Ortiz played the field on the rare occasion when the Boston Red Sox wanted his bat in the lineup during an interleague game. So, it was important for Big Papi to pick up the slack by raking at the plate. That’s exactly what he did for the duration of his time in Boston. He never won an AL MVP award but finished within the top 10 of voting seven times. This includes five consecutive top-five finishes between 2003 and 2007.
Once he reached the 20-homer plateau for the first time in his career during the 2002 season with the Minnesota Twins, he never looked back. Ortiz didn’t finish a season with fewer than 23 dingers, finishing his career with 15 straight seasons of 20-plus home runs. What impresses me the most, though, is what he did in 2016, which was his age-40 campaign.
He earned his last of 10 All-Star Game selections and managed to lead the league in doubles (48), RBI (121), slugging percentage (.620), and OPS (1.021). He also racked up 38 home runs while posting a .315 average. I know his being a designated hitter makes it easier to stay fresh and elongate careers. But regardless of that, what he did at the plate as a 40-year-old was remarkable.
Mickey Mantle: 536 Home Runs
Mickey Mantle has hit the most home runs all-time in MLB history for switch hitters. That in itself is a huge accomplishment. However, Mick played hurt throughout the majority of his career. So, it’s also fair to wonder how many more he could’ve slugged if healthy.
After hitting 13 round-trippers in 96 games as a rookie, Mantle registered 11 consecutive seasons with at least 20 homers. As if that wasn’t impressive enough, his last eight seasons within this streak were 30-plus homer campaigns.
Between 1956 and 1957, Mantle took home back-to-back MVP awards. Over the course of 1,275 plate appearances, the switch-hitter slashed .358/.487/.686 with 86 home runs, 224 RBI, and 253 runs scored. He recorded a ridiculous 22.9 fWAR over this period, as he registered two of his three career double-digit fWAR performances.
His 1956 body of work was impressive. Sure, he won the triple crown (.353 average, 52 home runs, 130 RBI), but he also led the league in runs scored (132), slugging percentage (.705), and OPS (1.169). He made sure to show up in the World Series as well, which the Yankees reached plenty of times during his career.
Jimmie Foxx: 534 Homers
Another three-time MVP winner, Jimmie Foxx put together some video-game numbers during his 20-year big-league career. He led the league in homers four times and RBI three times. What stands out about those RBI performances is the sheer number of runs he drove in. On all three occasions, Foxx drove in at least 160.
With a career slash line of .325/.428/.609, you knew that guy was bringing home multiple batting titles. Foxx won two, with 1933 as a part of the Philadelphia Athletics likely being the more special occasion. That’s because he took home triple crown honors. During this year, he slashed a ridiculous .356/.449/.703 with 48 home runs and 163 RBI.
I mean, just a “normal” season sounds outrageous: he averaged 37 home runs and 134 RBI per 162 games played. Normal. For his entire career. Those aren’t just video game numbers. They’re as if he’s played said video games on the lowest level of difficulty. No wonder he’s still included in the most home runs all-time leaderboard so many years later.
Willie McCovey: 521 Homers
Alright, we have a three-way tie for the 20th most home runs of all time. So, I’m going to provide one cool fact or stat about each ballplayer.
Willie McCovey’s offensive peak arrived within a very small window between his age-30 and age-32 seasons. In 1,869 plate appearances, McCovey slashed .300/.425/.603 with 120 home runs, 357 RBI, and 280 runs scored. He took advantage of that time.
Frank Thomas: 521 Home Runs
During his 19-year MLB career, Frank Thomas racked up nine seasons with 30-plus home runs. He didn’t lead baseball in any offensive category after his age-29 season, which was in 1997. He does hold several White Sox home run records, which include the single-season record at first base and designated hitter.
Ted Williams: 521 Homers
As for Ted Williams, the following fact says it all. In 1942, he won the Triple Crown by slashing .356/.499/.648 with 36 home runs and 137 RBI. He then served in the military from 1943-45. When he came back in 1946, he won his first MVP award off the strength of a .342/.497/.667 line with 38 home runs and 123 RBI.
Most Home Runs All Time: The Rest
Here’s the remainder of the top 61 most home runs all-time list (for now, at least):
- Eddie Mathews: 512 home runs
- Ernie Banks: 512
- Miguel Cabrera: 511
- Mel Ott: 511
- Gary Sheffield: 509
- Eddie Murray: 504
- Lou Gehrig: 493
- Fred McGriff: 493
- Adrian Beltre: 477
- Stan Musial: 475
- Willie Stargell: 475
- Carlos Delgado: 473
- Chipper Jones: 468
- Dave Winfield: 465
- Nelson Cruz: 464
- Jose Canseco: 462
- Adam Dunn: 462
- Carl Yastrzemski: 452
- Jeff Bagwell: 449
- Vladimir Guerrero: 449
- Dave Kingman: 442
- Jason Giambi: 440
- Paul Konerko: 439
- Andre Dawson: 438
- Carlos Beltran: 435
- Andruw Jones: 434
- Juan Gonzalez: 434
- Cal Ripken Jr.: 431
- Mike Piazza: 427
- Billy Williams: 426
- Edwin Encarnacion: 424
- Darrell Evans: 414
- Alfonso Soriano: 412
- Mark Teixeira: 409
- Duke Snider: 407
- Giancarlo Stanton: 402
- Al Kaline: 399
- Andres Galarraga: 399
- Dale Murphy: 398
Check out the rest of the leaderboard at FanGraphs.