The MLB’s Top Earners of All Time, Ranked
Last year, Major League Baseball (MLB) saw three of the biggest contracts in the history of the sport offered to big-name players. These days, contracts are only gaining padding — not to mention, many are fully guaranteed. Upwards of 40 MLB players have made at least $150 million throughout their careers.
From Cy Young Award-winners to players who have never won a World Series title, see how household names like Barry Bonds and Derek Jeter compare to players in the early stages of their careers as we countdown MLB’s top earners of all time.
32. Chipper Jones | $168.6 million
Unlike many of the other players on our list, Chipper Jones never played for the New York Yankees or the Los Angeles Dodgers. In fact, Jones carved out a 19-season career with the Atlanta Braves, acting as their primary third baseman from 1995 to 2012 (with a brief stint in left field). In 2013, the Braves retired Jones’ number.
In 1995, Jones and his team nabbed a World Series title, beating Cleveland. The eight-time All Star holds the Braves team record for career on-base percentage and holds the record for most career RBIs for a third baseman. Raking in $168.6 million over the course of his 23 years in professional baseball, Jones' highest single-season salary totaled $16.1 million.
31. Ichiro Suzuki | $169 million
Despite never winning a World Series title, outfielder Ichiro Suzuki has played a combined total of 28 seasons in top-tier professional baseball leagues, both in Japan’s Nippon Professional Baseball (NPB) league and in the MLB. The 10-time MLB All Star — and seven-time NPB All Star — holds several batting records, including the MLB’s most single-season hits, at 262.
In Japan, Suzuki played with the Orix Blue Wave for nine seasons. In the MLB, he has spent the majority of his time with the Seattle Mariners, with a few short stints on the New York Yankees and Miami Marlins. In 2012, he earned an impressive $18 million, the highest single-season earnings of his career, while playing for Seattle. A two-year $13 million deal with the Yankees didn’t hurt either. In the end, Ichiro brought in $169 million over the course of his career.
30. Mariano Rivera | $169.6 million
Dubbed "Mo" and "Sandman" by fans, Mariano Rivera played 19 seasons with the New York Yankees, acting mainly as the team’s relief pitcher. For 17 of those seasons, he served as the Bronx Bombers’ closer, which led him to lead the MLB in career saves, at 652, and games finished, at 952.
The 13-time All Star was inducted into the Baseball Hall of Fame in 2019 — for good reason. Not only does he hold several pitching records, but Rivera was also part of the Yankees’ winning formula. With a whopping five World Series titles under his belt, Mo’s highest single-season earnings came in at an impressive $15 million.
29. Torii Hunter | $172.3 million
Outfielder Torii Hunter played in the MLB from 1997 until 2015, taking the field for the Minnesota Twins, Los Angeles Angels (formerly Anaheim Angels) and the Detroit Tigers. After playing for the Twins for a decade, Hunter turned down the team’s three-year contract offer worth $45 million in 2007.
Instead, the five-time All Star joined the Angels, signing a five-year deal worth a whopping $90 million. By 2014, Hunter was back with the Twins, agreeing to a one-year deal worth $10.5 million. Although it was a far cry from $18.5 million a year, that deal — and the others over his 19-season run — netted him a whopping $172.3 million.
28. Ryan Braun | $174.8 million
Since 2007, Ryan Braun has played with the Milwaukee Brewers. Unlike his team affiliation, his position on the field hasn’t been as consistent, with Braun playing left field, right field, first base and, during his rookie season, third base. Another inconsistency? His sportsmanship.
Unfortunately, Braun was suspended without pay in 2013 for violating the MLB’s performance-enhancing drug policy. Prior to the suspension, he was a five-time All Star and often had a batting average over .300. Whether or not drug use was involved in all of the seasons that preceded 2013 is unclear. What is clear is the Brewers have been willing to sink $174.8 million into Braun, with his highest single-season earnings totaling $20 million.
27. Randy Johnson | $175.1 million
Celebrated for his fastball, Randy Johnson was a 10-time MLB All Star during his 22 seasons. Although he played for a total of six teams, "The Big Unit" is most often affiliated with the Seattle Mariners and Arizona Diamondbacks. With 303 career victories, he ranks fifth among left-handers for the most wins and holds five of the seven highest single-season strikeout totals among lefties.
The five-time Cy Young Award-winner became one of five pitchers to throw no-hitters in both leagues. In 2004, he became the oldest pitcher in MLB history to throw a perfect game — at the ripe old age of 40. It’s no surprise then that this World Series champ netted $175.1 million over his career, with his highest single-season earnings totaling $16 million.
26. Matt Kemp | $176 million
Outfielder Matt Kemp began his MLB career with the Los Angeles Dodgers, playing with them for eight seasons before hopping between several teams, including the San Diego Padres, the Atlanta Braves and the Cincinnati Reds. After the Dodgers lost the 2018 World Series to the Boston Red Sox, Kemp’s career became a bit uneven — and now he’s back in the minors.
Nonetheless, Kemp had an impressive run, nabbing two Gold Glove and two Silver Slugger Awards. His most impressive record? He became the first player since Hank Aaron to finish in the top two in both home runs and steals. The three-time All Star’s highest single-season earnings totaled $21 million. Clearly, it pays to be a Dodger.
25. Carl Crawford | $179.1 million
Nicknamed "The Perfect Storm," left fielder Carl Crawford bats and throws left-handed. When he last played, Crawford had more triples (123) than any other active player. During his 15 seasons, the four-time All Star played for the Tampa Bay Rays, Boston Red Sox and the Los Angeles Dodgers.
The four-time American League stolen base leader’s most notable contract was back in 2010, when he signed a seven-year deal with the Red Sox for $142 million, making his highest single-season earnings an impressive $21.9 million. Plagued by injuries during his time with the Dodgers, Crawford retired after 15 seasons.
24. Adrián González | $152.6 million
First baseman Adrián González played 15 seasons in the MLB and represented Mexico four times in the World Baseball Classic. The five-time All Star played for five franchises, most notably the San Diego Padres and the Los Angeles Dodgers. Despite never winning a World Series title, "A-Gon" carved out an impressive career.
After being named the Padres’ team MVP four times, González played with the Boston Red Sox for a short stint before joining up with the Dodgers. A-Gon’s highest single-season earnings came in at a truly staggering $27 million. However, he put all that Dodger money to good use by creating The Adrián and Betsy González Foundation, an endeavor focused on empowering underprivileged youth in areas like athletics and education.
23. David Wright | $182.1 million
Third baseman David Wright played his entire 14-year MLB career for the New York Mets, whose fans have dubbed him "Captain America." The seven-time All Star holds quite a few Mets franchise records, including most career RBIs, doubles, runs scored, sacrifice flies, double plays and hits — just to name a few.
Unfortunately, the latter half of Wright’s career was plagued by injuries and by a spinal stenosis diagnosis that ultimately led him to retire in 2018. As the face of the team, however, Wright made quite a bit of money while playing for the Mets, with his highest single-season earnings totaling $20 million. Alongside legends like Willie Mays and Hank Aaron, Wright is part of the 30-30 club, a status assigned to players who collect 30 homers and 30 stolen bases in a single season.
22. Johan Santana | $182.6 million
Starting pitcher Johan Santana first made a name for himself with the Minnesota Twins, a team he played for between 2000 and 2007. In 2006, he earned a pitching triple crown after leading the league in wins, strikeouts and earned run average (ERA). After nabbing two Cy Young Awards with the Twins, Santana played with the New York Mets for several seasons.
Although persistent injuries plagued the four-time All Star during his time in New York, he still managed some incredible feats in the latter half of his MLB career. In 2012, Santana threw a no-hitter against the St. Louis Cardinals — the only no-hitter in Mets history. In his 12 seasons of play, Santana’s highest single-season earnings reached an impressive $25.5 million.
21. David Price | $184 million
Pitcher David Price has played for five teams during his 12 seasons in the MLB, including the Tampa Bay Devil Rays, who selected him first overall in the 2007 MLB draft, and the Boston Red Sox. These days, Price is a Dodger, but even before donning the blue cap, the five-time All Star was raking in the big bucks.
In 2008, Price was the Rays’ relief pitcher during the playoffs and earned a save in Game 7 of the American League Championship Series (ALCS), which helped the Rays reach their first World Series. After that, he became a starting pitcher and went on to earn a Cy Young Award in 2012. In 2016, Price joined the Red Sox with a franchise record seven-year deal worth $217 million, which made his highest single-season earnings an impressive $31 million. For the Sox, that investment paid off when Price clinched Game 5 of the 2018 World Series against the Dodgers.
20. Barry Bonds | $188.2 million
Despite never winning a World Series title, Barry Bonds is one of the most legendary and beloved players in the MLB, even in light of his alleged involvement in the BALCO steroids scandal. During his 22 seasons, Bonds became the face of the San Francisco Giants and received a record seven National League MVP awards, eight Gold Glove awards and 12 Silver Slugger awards.
The 14-time All Star holds several MLB hitting records, including most career home runs, at a whopping 762. But his talent as a slugger wasn’t the only skill he brought to the league. With 514 stolen bases, he is the first — and only — MLB player to have more than 500 stolen bases and homers. Bonds’ highest single-season earnings came in at $22 million, all of which afforded him the opportunity to purchase the exclusive gated community of Beverly Park in California’s ritzy Beverly Hills.
19. Ryan Howard | $190.6 million
Nicknamed "The Big Piece," Ryan Howard spent all 13 of his MLB seasons playing for the Philadelphia Phillies. Not only does he hold several Phillies franchise records, but he is also the fastest player in the history of the sport to reach 1,000 RBIs and 100 home runs. Just one year after he earned the National League’s (NL) Rookie of the Year Award, Howard nabbed the NL MVP Award.
The three-time All Star has also earned a Silver Slugger Award and the Hank Aaron Award, and he is a two-time NL home run champ. On the other hand, when you swing big, sometimes you miss big too. Howard is also the record-holder for the most lifetime "Golden Sombrero" awards — a.k.a. he has accomplished the feat of striking out four times in a single game the most times. The World Series champ’s earnings are nothing to balk at: Howard’s highest single-season earnings reached an impressive $25 million.
18. Robinson Canó | $191.8 million
Second baseman Robinson Canó played for the New York Yankees from 2005 to 2013 and was a member of the franchise’s 2009 World Series championship team. The eight-time All Star has also nabbed five Silver Slugger Awards, two Golden Gloves and the 2011 Home Run Derby title. Needless to say, Canó probably doesn’t have a ton of room left on his mantel.
At the international level, he has represented the Dominican Republic, making him one of the first four players to have won both a World Series and World Baseball Classic. In 2013, Canó signed a 10-year, $240 million deal with the Seattle Mariners, but after a suspension in 2018 due to a violation of the MLB’s joint drug agreement, Canó was traded to the New York Mets.
17. Prince Fielder | $200.9 million
First baseman and designated hitter Prince Fielder has played for the Milwaukee Brewers, Detroit Tigers and Texas Rangers throughout his 12-season career. While playing for the Brewers, Fielder became the youngest National League (NL) player to hit 50 homers in a season, and he became the first Brewer to win the Home Run Derby in 2009.
Joining the likes of Ken Griffey Jr. and Yoenis Céspedes, Fielder won a second Home Run Derby in 2012 and became the first player to win as an American League (AL) and NL All Star. When his career came to a close in 2016, the slugger had a total of 319 home runs to his name. The six-time All Star also hit a homer when it came to salary, with his highest single-season earnings totaling an impressive $24.1 million.
16. Cole Hamels | $202.8 million
Cole Hamels carved out a name for himself as a pitcher playing for the Philadelphia Phillies between 2006 and 2015 before jumping around between the Texas Rangers, Chicago Cubs and, most recently, the Atlanta Braves. Drafted by the Phillies straight out of high school, Hamels became the team’s top pitcher by 2008.
During that season, he led the Phillies to a World Series victory over the Tampa Bay Rays, even winning the World Series MVP Award for his efforts. After some ups and downs, Hamels closed out his time with the Phillies on a high note, pitching a no-hitter against the Chicago Cubs at Wrigley Field. Although the four-time All Star’s highest single-season earnings totaled $25.5 million, he just signed an impressive one-year, $18 million free agent contract with the Braves.
15. Clayton Kershaw | $204.0 million
Left-handed pitcher Clayton Kershaw has played all 12 of his MLB seasons with the Los Angeles Dodgers. The World Series champ has won an impressive three National League (NL) Cy Young Awards, and for most of his time on the mound, commentators have called him the best pitcher in baseball.
At 20, Kershaw reached the majors, holding the title of youngest MLB player for a year. Just three years later, he earned a pitching Triple Crown and his first Cy Young Award, making him the youngest pitcher to do so since 1985. The seven-time All Star signed a staggering seven-year, $215 million contract extension with the Dodgers in 2013 — a franchise record at the time — which made Kershaw’s single season earnings an impressive $33 million.
14. Zack Greinke | $215.2 million
Zack Greinke has pitched for six different MLB teams, including the Kansas City Royals — the team that gave him his start — as well as the Los Angeles Dodgers and the Arizona Diamondbacks, who signed him to a six-year, $206.5 million contract in 2015. Before his contract was up, the Diamondbacks traded Greinke to the Houston Astros in 2019, paying out $24 million of his remaining $77 million salary.
Despite making his MLB debut in 2004, Greinke’s career was derailed in 2005 and 2006 due to his ongoing battles with depression and anxiety. By 2007, he returned to the Royals full-time as a relief pitcher before becoming one of the MLB’s top pitchers. Since then, he has been named an All Star five times and earned a Cy Young Award. Over the course of his 16 seasons, Greinke’s highest single-season earnings totaled a whopping $29 million.
13. Mark Teixeira | $217.7 million
Mark Teixeira played for four teams over his 14-season career, but he is most often remembered as a first baseman for the Texas Rangers — who gave him his MLB debut — and, of course, the New York Yankees. After leading the American League (AL) in homers and runs batted in (RBIs), the slugger was an essential member of the Yankees when the team nabbed its 27th World Series championship in 2009.
The three-time All Star has won three Silver Slugger Awards and five Gold Glove Awards. Teixeira is also known as one of the most prolific switch hitters in baseball history, becoming only the fifth switch hitter to hit 400 home runs and the record-holder for the most home runs hit from both sides of the plate. Lucrative deals with the Bronx Bombers saw Teixeira’s highest single-season earnings reach $23.1 million.
12. Adrián Beltré | $220.1 million
Although Adrián Beltré’s highest single-season earnings topped out at just $18 million — way less in comparison to some of the other players on the list — he has accumulated upwards of $220.1 million throughout his MLB career. How, you ask? Longevity. Beltré has played an impressive 21 seasons, taking the field for the Los Angeles Dodgers, Seattle Mariners, Boston Red Sox and Texas Rangers.
The third baseman became one of the most accomplished all-around players of all time. Not only did he reach 400 home runs and 1,500 runs batted in (RBIs), but Beltré also won the Rawlings Gold Glove Award five times. The four-time MLB All Star became the first major league player to hit 100 home runs for three separate teams and the first player from the Dominican Republic to reach 3,000 hits.
11. Félix Hernández | $221.3 million
Since 2005, Félix Hernández has played all 15 of his MLB seasons with the Seattle Mariners — until 2020, when he signed a $1 million deal to play in the minors for the Atlanta Braves. Nonetheless, Hernández — or King Félix, as he has been dubbed by fans — left his mark on Seattle, with the team dedicating a special cheering section, "King’s Court," to him at Safeco Field.
In 2012, King Félix threw the 23rd perfect game in MLB history, which marked the first perfect game in the history of the Mariners franchise. Despite not having a World Series title, the six-time All Star has won a Cy Young Award, and as one of the faces of the Mariners, his highest single-season earnings totaled a whopping $27.9 million.
10. Joe Mauer | $223.3 million
Unlike so many other players on the list, Joe Mauer never played for the Los Angeles Dodgers or the New York Yankees. Instead, he spent his entire 15-season career with the Minnesota Twins, acting as a catcher, designated hitter (DH) and first baseman for the team. During his tenure, Mauer became the only catcher to win a batting title in the American League (AL).
The six-time All Star missed out on a World Series title, but he did win three consecutive Gold Glove Awards and nabbed the AL’s MVP Award in 2009. In 2010, Mauer signed an eight-year contract extension worth a whopping $184 million. Not only was this the richest contract ever paid to an MLB catcher, but it also netted him his highest single-season earnings at $23 million.
9. Manny Ramirez | $223.4 million
Manny Ramirez played for five MLB teams over the course of his 19-season career, but he made a name for himself with Cleveland between 1993 and 2000 before becoming synonymous with the Boston Red Sox. Ramirez hit .300 when the Red Sox made the now-historic comeback against the New York Yankees in the 2004 play-offs, coming back from a 3-0 game deficit to clinch a spot in the World Series.
That year, the Red Sox put an end to the Curse of the Bambino, winning their first championship since 1918 by sweeping the St. Louis Cardinals 4-0. Thanks to his batting prowess, Ramirez was named World Series MVP. The 12-time All Star and two-time World Series champ was suspended for a time due to illegal steroid usage, but, nonetheless, he raked in an impressive salary, with his highest single-season earnings totaling $23.9 million.
8. Justin Verlander | $229.3 million
Although he currently plays for the rather fraught Houston Astros, Justin Verlander made a name for himself as a pitcher for the Detroit Tigers between 2005 and 2017. As one of the top pitchers in Tigers franchise history, Verlander led the team to four consecutive American League (AL) Central division championships and earned two AL Pennants.
The two-time Cy Young Award-winner won a World Series title in 2017, the first year he was playing with the Houston Astros, and, in 2019, he became the sixth pitcher in MLB history to throw three career no-hitters. The eight-time MLB All Star’s highest single-season earnings came in at an enviable $28 million. What’s not enviable is the cheating scandal that the Astros and Verlander now have on their hands.
7. Carlos Beltrán | $248.9 million
Speaking of that Houston Astros scandal, long-time MLB outfielder Carlos Beltrán is next on our list. With 20 seasons and 9 All Star appearances under his belt, he became the fourth switch hitter to reach 400 home runs in MLB history. Although he played for seven MLB teams — most notably the New York Mets — Beltrán retired after winning a World Series title with the Astros in 2017.
As one of the best postseason hitters, Beltrán has been nicknamed "The New Mr. October" and "Señor Octubre" by fans. His highest single-season earnings topped out at roughly $19.4 million, thanks to a seven-year, $119-million contract with the Mets — the biggest offer in the franchise’s history at the time. That same contract became only the 10th in MLB history to surpass $100 million. Notably, Beltrán has the highest success rate of any major leaguer when it comes to stealing bases. As of 2020, he has also been outed as a leader in the Astros’ illegal sign stealing scandal.
6. CC Sabathia | $264.8 million
With 19 seasons under his belt, CC Sabathia made a name for himself with Cleveland, the Milwaukee Brewers and, most notably, the New York Yankees. While with Cleveland, the team that provided him with his MLB debut, Sabathia earned the Cy Young Award in 2007 before being traded to the Brewers in 2008 — a move that helped them make the playoffs for the first time in more than 25 years.
Soon after, the six-time All Star accepted a seven-year, $161 million deal with the Yankees, which, at the time, was the largest contract ever signed by a pitcher. Thanks to this enviable contract, Sabathia’s highest single-season earnings totaled $25 million. In 2009 and 2010, he led all of the MLB in wins, which, in 2009, ended with a World Series victory and MVP Award as well.
5. Derek Jeter | $266.2 million
Shortstop Derek Jeter played his entire two-decade career with the New York Yankees, and as one of the most heavily marketed athletes of his time, Jeter became the face of the team on and off the field. The 14-time All Star was just elected to the Baseball Hall of Fame — 2020 was his first year of eligibility — after receiving an incredible 99.7% of the votes.
With five Gold Glove Awards, five Silver Slugger Awards, two Hank Aaron Awards and a whopping five World Series titles to his name, Jeter is one of the most successful players in MLB history. He signed a 10-year, $189 million contract with the Yankees before the 2001 season began, an impressive deal that made him the second-highest paid athlete across all team sports. These days, Jeter is CEO and part owner of the Miami Marlins.
4. Miguel Cabrera | $279.9 million
After playing for the Florida Marlins for a few seasons, Miguel Cabrera was traded to the Detroit Tigers in 2008 and ended up signing an eight-year, $152.3 million contract extension — the fourth largest deal in MLB history and the largest in Tigers franchise history at the time. The World Series champ’s highest single-season earnings reached an impressive $30 million.
In 2012, Cabrera became the first player to win the batting Triple Crown since 1967, meaning he led the American League (AL) in batting average, home runs and runs batted in (RBIs). The 11-time All Star has also earned the Hank Aaron Award twice and the Silver Slugger Award an impressive seven times. Despite back, hamstring and bicep injuries over the last few seasons, Cabrera plans on playing with the Tigers this season.
3. Albert Pujols | $298.5 million
During his 19 seasons in the MLB, first baseman and designated hitter (DH) Albert Pujols has played for just two teams, the St. Louis Cardinals and the Los Angeles Angels. The 10-time All Star has also won the National League’s (NL) MVP Award three times and contributed to two World Series titles with the Cardinals in 2006 and 2011.
After that second World Series victory, Pujols was a free agent and signed a 10-year deal with the Angels for $254 million — nearly $45 million more than what the Cardinals offered him. Pujols became the fourth player in MLB history to garner 3,000 hits and 600 home runs, which puts him in the company of greats like Willie Mays, Hank Aaron and Alex Rodriguez.
2. Alex Rodriguez | $450.2 million
Speaking of Alex Rodriguez, it’s shocking that the 14-time All Star isn’t No. 1 on the list, right? With 22 seasons played, A-Rod netted an enviable $450.2 million and until very, very recently had the distinction of being the MLB’s top earner. After seven seasons with the Seattle Mariners and a short stint with the Texas Rangers, A-Rod settled into 12 seasons with the New York Yankees.
With a .295 career batting average, 696 home runs, over 2,000 runs batted in (and scored), over 3,000 hits and over 300 stolen bases, A-Rod made MLB history. He also holds three American League (AL) MVP Awards, 10 Silver Slugger Awards and the record for most grand slams with 25. Despite controversy surrounding the use of performance-enhancing drugs, it remains true that A-Rod signed two of the most lucrative contracts in baseball — a 10-year, $252 million deal with the Rangers and a 10-year, $275 million deal with the Yankees.
1. Mike Trout | $507 million
Considered one of the best current players in the MLB — and one of the most outstanding younger players in MLB history — center fielder Mike Trout has played his entire professional career with the Los Angeles Angels. At just 28 years old, he is an eight-time MLB All Star, seven-time Silver Slugger Award-winner and three-time American League (AL) MVP.
Although the so-called "Millville Meteor" hasn’t earned out his current contract yet, he has an advantage over players of the past: His staggering contract is fully guaranteed. That means he’s set to make $507 million after signing a 12-year, $426 million contract with the Angels last year — a deal that marks the richest contract in the history of North American sports.