In recent weeks, we have been taking a look back at the best and brightest Major League Baseball had to offer over the past 20 years.
We've already run down our top 25 starting pitchers, top 25 first basemen, top 25 second basemen, top 25 shortstops and top 25 third basemen since 2000.
Now it's time for the catchers.
A player's peak performance, his full statistical body of work since 2000 and his postseason production were all factored when determining the final rankings.
While no single stat was the end-all, be-all, OPS+ and WAR/500 are two important ones to know.
OPS+ is simply a hitter's on-base percentage plus slugging percentage, adjusted to take into account the ballparks in which he is hitting. An OPS+ of 100 is league-average, while each number above 100 represents one percentage point better than the league average.
WAR/500 is a stat of my own creation. It's a hitter's WAR total divided by his total plate appearances and then multiplied by 500, thus giving us his WAR per 500 plate appearances. The idea is to make it easier to contextualize WAR totals across different sample sizes.
Let's kick things off with some honorable mentions.
Honorable Mentions
These players received serious consideration for the final list but came up short:
- Welington Castillo
- Jason Castro
- Robinson Chirinos
- Willson Contreras
- Yan Gomes
- Chris Iannetta
- Bengie Molina
- Geovany Soto
- Kurt Suzuki
25. Gary Sanchez
Stats: 1,576 PA, .246/.328/.518 (121 OPS+), 105 HR, 262 RBI, 11.2 WAR
Postseason: 111 PA, .176/.225/.382, 6 HR, 16 RBI
WAR/500: 3.55
With just 372 games of big league action under his belt, it's hard to compare Gary Sanchez to catchers who spent a decade or more in the majors.
However, there is also no ignoring the impact he has made in a short time.
The 27-year-old already has two All-Star appearances and two 30-homer seasons to his credit, and he finished runner-up to Michael Fulmer in 2016 AL Rookie of the Year voting.
Staying healthy and improving his receiving skills are the keys to climbing up this list in the years to come, but for now, the No. 25 spot seems appropriate for his abbreviated body of work.
24. Alex Avila
Stats: 3,465 PA, .235/.348/.396 (102 OPS+), 103 HR, 386 RBI, 15.7 WAR
Postseason: 124 PA, .153/.236/.252, 3 HR, 7 RBI
WAR/500: 2.27
In his first full season as a starter in 2011, Alex Avila looked like a star in the making for the Detroit Tigers.
The 24-year-old hit .295/.389/.506 (142 OPS+) with 33 doubles, 19 home runs and 82 RBI to finish 12th in AL MVP voting for a Tigers team that reached the American League Championship Series. That season was worth 5.1 WAR, which accounts for nearly one-third of his career value.
In the years since, he's been a steady semiregular option behind the plate, providing strong receiving skills, solid on-base numbers and some occasional pop.
As recently as 2017, he hit .264/.387/.447 (120 OPS+) with 14 home runs and 49 RBI, which made him a hot commodity at the trade deadline. Serving in a platoon with Carson Kelly for the Arizona Diamondbacks last year, he logged a .353 on-base percentage in 63 games while throwing out an impressive 52 percent of would-be base stealers.
23. Ramon Hernandez
Stats: 5,543 PA, .263/.326/.418 (96 OPS+), 166 HR, 736 RBI, 21.4 WAR
Postseason: 86 PA, .211/.286/.289, 1 HR, 6 RBI
WAR/500: 1.93
Ramon Hernandez made his MLB debut in 1999 while serving as the backup to AJ Hinch, but he quickly played his way into a large role. Hinch was eventually traded to the Kansas City Royals in a three-team, seven-player blockbuster that brought Johnny Damon and Mark Ellis to Oakland.
Hernandez hit his stride in 2003 when he made his lone All-Star appearance and hit .273/.331/.458 with 21 home runs and 78 RBI. Over the four-year stretch from 2003 through 2006, he posted a 111 OPS+ while averaging 24 doubles, 19 home runs and 73 RBI as one of the better offensive catchers in baseball.
Prior to the 2006 season, he signed a four-year, $27.5 million contract with the Baltimore Orioles in free agency, and after a productive first season with the team, his numbers started to decline.
His time in Baltimore was followed by a three-year stint with the Cincinnati Reds, during which he served in a quietly effective platoon with defensive-minded Ryan Hanigan.
All told, he finished his career with eight seasons of at least 10 home runs and eight seasons of at least 50 RBI, quietly producing an an above-average level for a backstop throughout his 15 years in the majors.
22. Wilson Ramos
Stats: 3,468 PA, .275/.322/.436 (104 OPS+), 123 HR, 499 RBI, 15.4 WAR
Postseason: 19 PA, .118/.167/.118, 0 HR, 0 RBI
WAR/500: 2.22
Originally signed by the Minnesota Twins as an amateur free agent, Wilson Ramos was traded to the Washington Nationals in a lopsided deal at the 2010 deadline in exchange for closer Matt Capps.
The following season he took over as the team's starting catcher and posted a 113 OPS+ with 15 home runs and 52 RBI to finish fourth in National League Rookie of the Year voting.
He then elevated his game during a contract year in 2016, hitting .307/.354/.496 (121 OPS+) with 22 home runs and 80 RBI. That earned him an All-Star nod and Silver Slugger honors, but he suffered a torn ACL on Sept. 26 that sent his free-agent stock tumbling.
The 32-year-old has since returned to full health to post a 113 OPS+ while averaging 13 home runs and 59 RBI over the past three seasons.
While his offensive game has always driven his value, he's also tallied 11 DRS while throwing out 28 percent of base stealers in his career.
21. Francisco Cervelli
Stats: 2,556 PA, .269/.358/.380 (101 OPS+), 38 HR, 268 RBI, 13.4 WAR
Postseason: 10 PA, .125/.300/.125, 0 HR, 0 RBI, WS winner
WAR/500: 2.62
Francisco Cervelli spent the first seven seasons of his career with the New York Yankees, serving as a backup to the likes of Jorge Posada, Russell Martin and Brian McCann.
The Yankees traded him to the Pittsburgh Pirates in exchange for reliever Justin Wilson following the 2014 season, and he finally received a chance at a starting job.
He hit .295/.370/.401 (113 OPS+) with 29 extra-base hits in a 3.4 WAR season and turned in a strong showing again the following campaign to earn a three-year, $31 million extension.
All told, his five seasons in Pittsburgh produced 8.7 WAR, and he became a fan favorite in the process.
One of the better defensive catchers in baseball at his peak, Cervelli has tallied 23 DRS while ranking as a significant asset in the pitch-framing department. His well-rounded game earns him a spot ahead of a few more one-dimensional, offensive-minded guys on this list.
20. Matt Wieters
Stats: 4,387 PA, .250/.313/.411 (93 OPS+), 146 HR, 546 RBI, 18.2 WAR
Postseason: 51 PA, .111/.216/.133, 0 HR, 0 RBI
WAR/500: 2.07
There was no shortage of hype surrounding Matt Wieters before he made his MLB debut.
He was the No. 5 overall pick in the 2007 draft after a storied career at Georgia Tech and the No. 1 prospect in baseball entering the 2009 season, according to Baseball America.
From that standpoint, it's tempting to call his career a disappointment.
However, he's still a four-time All-Star and two-time Gold Glove winner, and at his peak, he was undoubtedly one of the best all-around backstops in the game. From 2011 through 2013, he hit .249/.315/.434 (102 OPS+) while averaging 28 doubles, 22 home runs, 77 RBI and 3.5 WAR for the Baltimore Orioles.
Injuries limited him to just 101 total games the next two seasons, and he never quite returned to his pre-injury level of production. That said, he remains a useful backup who slugged 11 home runs in 183 plate appearances for the St. Louis Cardinals last year.
19. Paul Lo Duca
Stats: 4,178 PA, .287/.338/.411 (98 OPS+), 77 HR, 469 RBI, 17.9 WAR
Postseason: 46 PA, .275/.333/.325, 0 HR, 6 RBI
WAR/500: 2.14
Paul Lo Duca was a 25th-round pick in 1993, and he toiled in the minor leagues for eight years before becoming the Los Angeles Dodgers' starting catcher in 2001.
That year, he hit .320/.374/.543 (142 OPS+) with 28 doubles, 25 home runs and 90 RBI in a 4.6 WAR season to finish 19th in NL MVP voting.
While that proved to be his offensive peak, he went to make four All-Star appearances over the next five years, hitting .288/.338/.402 with 13.7 WAR during that span.
His late start in the majors made for a relatively short window of productivity, but he made the most of his time once he arrived.
18. Miguel Montero
Stats: 4,343 PA, .256/.340/.411 (100 OPS+), 126 HR, 550 RBI, 14.3 WAR
Postseason: 67 PA, .200/.284/.283, 1 HR, 8 RBI, WS winner
WAR/500: 1.65
Miguel Montero overtook longtime starter Chris Snyder behind the plate for the Arizona Diamondbacks in 2009, hitting .294/.355/.478 (113 OPS+) with 30 doubles, 16 home runs and 59 RBI in his first season with more than 250 plate appearances.
During the 2011 and 2012 seasons, he was one of the best catchers in baseball and one of the faces of the D-backs roster:
- 2011: .282/.351/.469 (121 OPS+), 36 2B, 18 HR, 86 RBI, 4.4 WAR
- 2012: .286/.391/.438 (123 OPS+), 25 2B, 15 HR, 88 RBI, 4.5 WAR
His production leveled off from there, and he was traded to the Chicago Cubs after the 2014 campaign, serving as the starting catcher in 2015 and helping bridge the gap to current backstop Willson Contreras.
Moved into a part-time role in 2016, he hit one of the biggest home runs in Cubs franchise history when he launched a pinch-hit, go-ahead grand slam in Game 1 of the NLCS against the Los Angeles Dodgers.
17. Jason Kendall
Stats: 6,698 PA, .281/.356/.357 (88 OPS+), 44 HR, 537 RBI, 26.2 WAR
Postseason: 51 PA, .224/.255/.245, 0 HR, 3 RBI
WAR/500: 1.96
Jason Kendall was an All-Star as a rookie in 1996. The first four seasons of his career were among his best, so he may slightly lower on this list than expected.
That said, he still possessed a rare mix of batting average, on-base ability and speed at the catcher position, making him a valuable table-setter for the Pittsburgh Pirates and Oakland Athletics.
He hit .320/.412/.470 (124 OPS+) with a career-high 14 home runs and 22 steals in 2000 to earn his third and final All-Star selection.
After strong seasons in 2003 and 2004, when he hit a combined .322/.399/.403, Kendall was traded to Oakland for Mark Redman, Arthur Rhodes and cash. That same offseason, the A's shipped out Tim Hudson and Mark Mulder in separate trades, and Kendall helped anchor a young starting staff in the wake of those moves.
He wrapped up his time in MLB with the Chicago Cubs, Milwaukee Brewers and Kansas City Royals and finished his 15-year career with 2,195 hits, 189 steals and a .366 on-base percentage.
16. A.J. Pierzynski
Stats: 7,778 PA, .280/.318/.420 (94 OPS+), 188 HR, 905 RBI, 23.6 WAR
Postseason: 121 PA, .292/.367/.500, 5 HR, 18 RBI, WS winner
WAR/500: 1.52
A.J. Pierzynski hit .301/.341/.447 over his first six seasons in the majors, and he was an All-Star in 2002. But his days were numbered the second the Minnesota Twins chose Joe Mauer with the No. 1 overall pick in the 2001 draft.
He was traded to the San Francisco Giants prior to the 2004 season in an infamously lopsided deal that sent Francisco Liriano, Joe Nathan and Boof Bonser to Minnesota.
Despite solid numbers, he was non-tendered after just one season when the Giants signed Mike Matheny in free agency.
He quickly landed on his feet with the Chicago White Sox and went on to spend eight seasons on the South Side, hitting .279/.318/.424 while making another All-Star appearance in 2006 and winning Silver Slugger honors in 2012.
He hit .262/.340/.571 with three home runs and nine RBI in 12 games during the team's run to a World Series title in 2005, and he caught more than 75 percent of the innings during the season for a team that was anchored by its strong pitching staff.
15. Carlos Ruiz
Stats: 4,069 PA, .264/.350/.391 (100 OPS+), 71 HR, 415 RBI, 22.5 WAR
Postseason: 184 PA, .255/.377/.425, 5 HR, 19 RBI, WS winner
WAR/500: 2.76
Carlos Ruiz had big shoes to fill after replacing Mike Lieberthal, who was a two-time All-Star and slugged 150 home runs in 13 seasons with the Philadelphia Phillies.
While he was never much of a power threat with just 71 career home runs, Ruiz was a stellar defensive catcher, and his batting average and on-base ability more than made up for his lack of pop.
From 2009 through 2014, he hit .282/.366/.423 (114 OPS+) while averaging 25 doubles, eight home runs and 45 RBI. His 18.8 WAR during that stretch trailed only Joe Mauer (26.8), Yadier Molina (25.8) and Buster Posey (23.1) among catchers.
His peak came in 2012, when he hit .325/.394/.540 (149 OPS+) with 16 home runs and 68 RBI in a 4.6 WAR season to earn his only All-Star selection and garner some down-ballot MVP support.
On top of his strong regular-season numbers, he went 6-for-16 with two doubles and one home run during the 2008 World Series to help the Phillies win a title. He was also 6-for-18 with four extra-base hits in the following year's Fall Classic, when they came up short against the New York Yankees.
14. Jonathan Lucroy
Stats: 4,568 PA, .274/.335/.416 (102 OPS+), 108 HR, 545 RBI, 17.8 WAR
Postseason: 52 PA, .235/.250/.353, 1 HR, 6 RBI
WAR/500: 1.95
At his peak, Jonathan Lucroy was a legitimate NL MVP candidate.
During the 2014 season, he hit .301/.373/.465 (131 OPS+) with an MLB-leading 53 doubles, 13 home runs, 69 RBI and 73 runs scored. Coupled with his stellar defensive work (23 DRS), he was a 6.4 WAR player en route to finishing fourth in NL MVP balloting.
A broken toe limited him to 103 games the following season, but he returned to form to make his second All-Star Game appearance in 2016.
With free agency fast approaching, the Milwaukee Brewers sold high that summer and shipped him and Jeremy Jeffress to the Texas Rangers for prospects Lewis Brinson, Luis Ortiz and Ryan Cordell.
In the three years since, he's hit just .248/.315/.350 for a 77 OPS+ with minus-1.1 WAR, so it appears his days as an impact player have come to an end.
Still, he was arguably the top backstop in baseball at one time.
13. Javy Lopez
Stats: 3,312 PA, .285/.336/.482 (110 OPS+), 141 HR, 486 RBI, 17.2 WAR
Postseason: 63 PA, .246/.270/.443, 3 HR, 6 RBI
WAR/500: 2.60
Javy Lopez was already well-established as one of the best offensive catchers in baseball when the 2000 season arrived. He was 29 years old with 119 home runs and two All-Star appearances in eight seasons for the Atlanta Braves.
He spent the first four years of the new millennium in Atlanta, posting a 111 OPS+ while averaging 24 home runs and 79 RBI. That includes a massive walk year in 2003, when he hit .328/.378/.687 with 43 home runs and 109 RBI to finish fifth in NL MVP voting.
That earned him a three-year, $22.5 million contract from the Baltimore Orioles in free agency.
He hit .316/.370/.503 with 23 home runs and 86 RBI in his first year with the Orioles, but his production dropped significantly in the last two years of the deal, and he retired once that contract was up.
Nevertheless, his production over that five-year stretch at the beginning of the 2000s is impossible to ignore.
12. Yasmani Grandal
Stats: 3,292 PA, .241/.348/.446 (115 OPS+), 141 HR, 416 RBI, 17.2 WAR
Postseason: 96 PA, .115/.274/.244, 3 HR, 8 RBI
WAR/500: 2.61
The Cincinnati Reds selected Yasmani Grandal with the No. 12 pick in the 2010 draft, and he quickly developed into one of the top prospects in baseball.
However, the same was true of 2007 first-round pick Devin Mesoraco. In the end, the Reds chose Mesoraco as the long-term option at the position, and they traded Grandal to the San Diego Padres along with three others in exchange for Mat Latos.
After three seasons in San Diego, including one as the team's starting catcher, he was traded again to the Los Angeles Dodgers in the five-player deal that saw Matt Kemp shipped out of Los Angeles following the 2014 campaign.
During his time with the Dodgers, he emerged as one of the game's most productive catchers, hitting .238/.337/.453 (113 OPS+) while averaging 22 home runs, 61 RBI and 2.6 WAR.
He settled for a one-year deal with the Brewers in free agency prior to last season and posted a 119 OPS+ with career highs in home runs (28) and walks (109) en route to a stellar .380 on-base percentage.
That earned him a four-year, $73 million contract from the Chicago White Sox in his second trip to the open market, and he stands as a key piece of their rebuilding efforts.
11. Mike Piazza
Stats: 3,670 PA, .285/.360/.512 (127 OPS+), 187 HR, 567 RBI, 18.0 WAR
Postseason: 72 PA, .270/.361/.571, 4 HR, 8 RBI
WAR/500: 2.45
For the first three seasons of the 2000s, Mike Piazza remained the Hall of Fame slugger he was throughout the 1990s.
He hit .301/.380/.577 (147 OPS+) while averaging 36 home runs and 102 RBI while hitting in the middle of the New York Mets lineup, leading the team to the NL pennant in 2000.
A groin injury limited him to just 68 games in 2003, and that was the beginning of the end.
In his final three seasons with the Mets, he posted a 111 OPS+ while averaging 17 home runs and 50 RBI in 103 games per campaign before he departed in free agency after seven-plus years with the team.
He spent one season (2006) with the San Diego Padres, serving as the team's primary catcher at the age of 37 and hitting .283/.342/.501 (122 OPS+) with 22 home runs and 68 RBI, and then closed out his career as a part-time DH with the Athletics.
10. Salvador Perez
Stats: 3,737 PA, .266/.297/.442 (98 OPS+), 141 HR, 503 RBI, 22.1 WAR
Postseason: 124 PA, .233/.282/.397, 5 HR, 14 RBI, WS winner
WAR/500: 2.96
Salvador Perez made his MLB debut at the age of 21 in 2011 and quickly emerged as a rising star for the Kansas City Royals.
Starting in 2013, he made six straight AL All-Star teams.
During that span, he averaged 21 home runs and 74 RBI while winning five Gold Glove Awards and two Silver Slugger Awards. The 6,434.2 innings he spent behind the plate over that six-year stretch was second only to Yadier Molina (6,558.1) in terms of overall workload.
While his on-base skills have always been suspect, with a .297 on-base percentage for his career, his power and elite defense have made him one of the most important players on the Kansas City roster.
Still just 29 years old, he missed the 2019 season following Tommy John surgery, but he still has two years remaining on his current five-year, $52.5 million deal.
9. J.T. Realmuto
Stats: 2,745 PA, .278/.327/.452 (110 OPS+), 84 HR, 326 RBI, 18.4 WAR
Postseason: N/A
WAR/500: 3.35
How high should the best catcher in baseball right now rank on this list?
J.T. Realmuto has rattled off three straight seasons with at least 4.0 WAR, including a 2019 campaign in which he hit .275/.328/.493 (108 OPS+) while setting career highs in doubles (36), home runs (25) and RBI (83) while winning his first Gold Glove Award.
The 29-year-old is in his final year of arbitration and headed for a massive payday next offseason.
With back-to-back trips to the All-Star Game and consecutive Silver Slugger Awards, he's now the consensus top player at the position, and his defensive game has continued to develop.
In 2019, he tallied 12 DRS, graded out as an above-average pitch-framer and threw out an MLB-leading 46.7 percent of base stealers.
His limited body of work relative to the guys ahead of him is the only thing that keeps him from ranking any higher.
8. Jason Varitek
Stats: 5,047 PA, .255/.343/.431 (99 OPS+), 166 HR, 648 RBI, 22.3 WAR
Postseason: 204 PA, .240/.300/.443, 9 HR, 28 RBI, Two-time WS winner
WAR/500: 2.21
In one of the greatest heists in baseball history, the Boston Red Sox acquired Jason Varitek and Derek Lowe from the Seattle Mariners in exchange for reliever Heathcliff Slocumb at the 1997 trade deadline.
Two years later, he became the team's starting catcher, and he ended up playing his entire 15-year career in a Red Sox uniform.
He enjoyed an impressive three-year peak from 2003 through 2005, during which time he hit .283/.369/.494 (121 OPS+) while averaging 30 doubles, 22 home runs, 76 RBI and 3.7 WAR.
However, his impact stretched beyond his on-field performance.
He was named team captain prior to the 2005 season, making him just the fourth Red Sox player since 1923 to receive that honor.
Behind the plate, he was in the crouch for a record-setting four no-hitters, a mark that was later tied by Philadelphia Phillies backstop Carlos Ruiz.
7. Russell Martin
Stats: 6,648 PA, .248/.349/.397 (101 OPS+), 191 HR, 771 RBI, 38.7 WAR
Postseason: 235 PA, .191/.306/.327, 6 HR, 22 RBI
WAR/500: 2.91
A rare athlete at the catcher position, Russell Martin posted a 103 OPS+ while averaging 12 home runs and 15 steals over his first four seasons in the majors with the Los Angeles Dodgers.
He developed into more of a power hitter after joining the New York Yankees in free agency, averaging 20 home runs and 59 RBI in his two seasons with the team (2011, 2012).
The Pittsburgh Pirates took a rare dive into the deeper end of the free-agent pool when Martin hit the open market again prior to the 2013 season, signing him to a two-year, $17 million deal.
The franchise snapped a 20-year postseason drought in the first year of that contract and returned to the playoffs again the next season. He posted a 116 OPS+ while averaging 13 home runs, 61 RBI and 4.9 WAR while also establishing himself as one of the league's elite defensive backstops with 21 DRS both years.
That earned him a massive five-year, $82 million contract from the Toronto Blue Jays in free agency, and he was good for 8.2 WAR over the life of that deal.
6. Brian McCann
Stats: 6,850 PA, .262/.337/.452 (110 OPS+), 282 HR, 1,018 RBI, 31.9 WAR
Postseason: 143 PA, .172/.252/.297, 4 HR, 16 RBI, WS winner
WAR/500: 2.33
Brian McCann made his MLB debut for the Atlanta Braves at the age of 21 during the 2005 season, and he showed enough in a 59-game audition that the front office shipped out incumbent starter Johnny Estrada that winter.
In his first year as an everyday player, McCann hit .333/.388/.572 (143 OPS+) with 24 home runs and 93 RBI, earning the first of what would be six straight All-Star appearances.
During that span, he hit .287/.359/.491 (123 OPS+) while averaging 32 doubles, 22 home runs and 86 RBI and racking up 20.1 WAR.
His production declined over the second half of his career, but he remained an elite power threat at the position, rattling off nine straight 20-homer seasons from 2008 to 2016.
He's one of just 12 players in MLB history who spent the majority of their careers at catcher and finished with over 1,000 RBI, and his 282 career home runs are good for eighth at the position.
5. Ivan Rodriguez
Stats: 5,507 PA, .293/.330/.463 (106 OPS+), 167 HR, 711 RBI, 31.1 WAR
Postseason: 129 PA, .252/.318/.417, 4 HR, 22 RBI, WS winner
WAR/500: 2.82
Ivan Rodriguez was fresh off 1999 AL MVP honors when the new millennium began.
Already 28 years old, he still had six more All-Star selections and five more Gold Glove Awards forthcoming before he retired in 2011 at the age of 39.
He hit .322/.357/.579 (136 OPS+) while averaging 24 home runs over his final three seasons with the Texas Rangers before hitting the free-agent market.
Despite his impressive track record, questions about his long-term health after he dealt with a herniated disc in his back limited his market, and he signed a one-year, $10 million contract with a young Florida Marlins team on the rise.
He hit .297/.369/.474 (120 OPS+) with 16 home runs and 85 RBI during the regular season and then posted a gaudy .313/.390/.522 line with three home runs and 17 RBI in 17 games during the playoffs. He won NLCS MVP honors and helped lead the Marlins to an unexpected World Series title.
The Detroit Tigers gave him a five-year, $53 million contract during the offseason, and he went on to make four All-Star teams and post 13.4 WAR over the life of that contract, which ran through his age-36 season.
He hung around for three more years in a backup role before closing out a Hall of Fame career.
4. Jorge Posada
Stats: 6,065 PA, .277/.379/.483 (125 OPS+), 240 HR, 920 RBI, 38.4 WAR
Postseason: 438 PA, .254/.363/.381, 8 HR, 35 RBI, Two-time WS winner
WAR/500: 3.17
After splitting time with veteran Joe Girardi behind the plate for the 1998 and 1999 teams that won World Series titles, Jorge Posada took over as the New York Yankees' primary catcher in 2000.
That season he made the first of his five All-Star appearances, hitting .287/.417/.527 (139 OPS+) with 35 doubles, 28 home runs and 86 RBI in a 5.5 WAR campaign.
From 2000 through 2007, Posada was a picture of durability, averaging 143 games per season while hitting .283/.389/.492 (130 OPS+) and averaging 31 doubles, 23 home runs and 90 RBI.
His 35.6 WAR during that stretch ranked 16th among all position players and tops among catchers.
Even in the later stages of his career, he remained productive, posting a 115 OPS+ with 18 home runs and 57 RBI over 451 plate appearances in his age-38 season.
It's a bit surprising that he did not receive more than 3.8 percent of the vote in his one and only year on the Hall of Fame ballot.
3. Joe Mauer
Stats: 7,960 PA, .306/.388/.439 (124 OPS+), 143 HR, 923 RBI, 55.3 WAR
Postseason: 44 PA, .275/.341/.300, 0 HR, 1 RBI
WAR/500: 3.47
Despite spending the last five seasons of his 15-year career exclusively manning first base, Joe Mauer is still more than deserving of a spot among the elite catchers of the past 20 years.
The No. 1 overall pick in the 2001 draft reached the majors at age 21 and immediately flashed the elite hit tool that would come to be his calling card.
In his second full season, he became just the third catcher in MLB history to win a batting title. He hit .347/.429/.507 (144 OPS+) with 13 home runs and 84 RBI to finish sixth in AL MVP voting.
He added two more batting titles in 2008 (.328) and 2009 (.365), and the 2009 season also netted him AL MVP honors as he led the AL in on-base percentage (.444), slugging (.587), OPS (1.031) and OPS+ (171) en route to a career-high 7.8 WAR.
On top of his elite offensive production at his peak, he also won three Gold Glove Awards and threw out 33 percent of base stealers in his career.
The eight-year, $184 million contract extension he signed prior to the 2010 season still stands as the richest contract ever given to a catcher.
2. Yadier Molina
Stats: 7,655 PA, .282/.333/.405 (98 OPS+), 156 HR, 916 RBI, 40.1 WAR
Postseason: 380 PA, .273/.327/.356, 4 HR, 34 RBI, Two-time WS winner
WAR/500: 2.62
Hard statistics will never tell the full story of the value Yadier Molina has brought to the St. Louis Cardinals during his 16-year career.
That said, he's still put up some pretty stellar numbers over the years.
The nine-time All-Star has taken home nine Gold Glove Awards and four Platinum Glove Awards while logging a staggering 16,327.2 innings behind the plate and throwing out an impressive 40 percent of base stealers over the years.
Despite the wear and tear that kind of workload has on a player, he's still managed to make an impact with the bat.
At his peak from 2011 through 2013, he hit .313/.361/.481 (130 OPS+) while averaging 16 home runs and 74 RBI, earning a pair of top-five finishes in NL MVP voting.
The 37-year-old is still going strong as he puts the finishing touches on a Hall of Fame career.
1. Buster Posey
Stats: 5,153 PA, .302/.370/.456 (128 OPS+), 140 HR, 673 RBI, 41.8 WAR
Postseason: 232 PA, .248/.323/.325, 4 HR, 23 RBI, Three-time WS winner
WAR/500: 4.06
Buster Posey exploded onto the scene as a 23-year-old rookie in 2010, hitting .305/.357/.505 (133 OPS+) with 23 doubles, 18 home runs and 67 RBI in 108 games to help lead the San Francisco Giants to an unexpected World Series title.
Two years later, he became just the fourth catcher in MLB history to win a batting title, hitting .336/.408/.549 (171 OPS+) with career highs in home runs (24) and RBI (103) to take home NL MVP honors en route to a second World Series win.
He added a third title and another top-10 MVP finish in 2014, hitting .311/.364/.490 (143 OPS+) with 22 home runs and 89 RBI, then he posted a 6.0-WAR season the following year.
The homegrown superstar is a six-time All-Star and four-time Silver Slugger winner, and if he weren't playing in the same league as Yadier Molina, he would have far more than one Gold Glove Award on his mantle.
He's the best two-way catcher of his era and one of the true faces of the sport over the last 20 years.
All stats courtesy of Baseball Reference and FanGraphs, unless otherwise noted.
Read 130 Comments
Download the app for comments Get the B/R app to join the conversation