Barry Bonds vs Frank Thomas: Career Stats Comparison

Barry Bonds has the better career line of the two, leading 13 of the 14 scored categories on this page (1 further counting total is shown but not scored). Barry Bonds played 1986–2007 as a hitter; Frank Thomas played 1990–2008 as a hitter.

AVG (Batting Average):
Hits divided by at bats. .300 is the traditional mark of an excellent hitter.
HR (Home Runs):
Hits on which the batter circled the bases and scored, almost always by clearing the outfield fence.
RBI (Runs Batted In):
Runs that scored as a direct result of a batter's plate appearance.
OPS (On-Base Plus Slugging):
On-base percentage plus slugging percentage, the quickest single summary of offensive value. .900 or better is star-level.

Data updated

Barry Bonds (1986–2007) and Frank Thomas (1990–2008) — they broke in during the 1980s and the 1990s respectively, which makes the side-by-side worth doing carefully. Barry Bonds finished with 2,935 hits and 762 home runs; Frank Thomas finished with 2,468 hits and 521 home runs. Below is the full career table, PIV adjustment, peak seasons, and a verdict.

Quick answer

  • Who hit more home runs? Barry Bonds, with 762 to Frank Thomas's 521.
  • Who had the higher OPS? Barry Bonds, with 1.051 to Frank Thomas's .974.
  • Who had the higher batting average? Frank Thomas, with .301 to Barry Bonds's .298.
  • Who had more hits? Barry Bonds, with 2,935 to Frank Thomas's 2,468.
  • Who drove in more runs? Barry Bonds, with 1,996 to Frank Thomas's 1,704.
  • Who has the higher career PIV? Barry Bonds, with 96,025 career PIV to Frank Thomas's 56,456.
  • Who won more championships? Frank Thomas, with 1 World Series title to Barry Bonds's 0.
Leads Barry Bonds 13 of 14 scored categories
PIV edge Barry Bonds +39,569
Read the verdict ↓

Barry Bonds

Hitter · 1986–2007
Games
2,986
Hits
2,935
Home Runs
762
RBI
1,996
Avg
.298
OPS
1.051
View Barry Bonds's full profile →

Frank Thomas

Hitter · 1990–2008
Games
2,322
Hits
2,468
Home Runs
521
RBI
1,704
Avg
.301
OPS
.974
View Frank Thomas's full profile →

Career Stats Side-by-Side

Every cell below is a career total or career rate for Barry Bonds and Frank Thomas. Cells highlighted in green mark the category leader. 14 of the 15 lines below are scored; the other one is a counting total on which fewer is not an achievement, so no one is awarded it. Counting stats reward longevity, and strikeouts are left unmarked because a longer career accumulates more of them. Rate stats are not era-adjusted, and the 1980s and the 1990s were different run environments, so read them against their eras, or use the PIV card below, which is adjusted.

Barry Bonds vs Frank Thomas: Career Stats Comparison — Career Stats Side-by-Side
Statistic Barry Bonds Frank Thomas
Games Leads: 2,986 2,322
At-Bats Leads: 9,847 8,199
Runs Leads: 2,227 1,494
Hits Leads: 2,935 2,468
Doubles Leads: 601 495
Triples Leads: 77 12
Home Runs Leads: 762 521
RBI Leads: 1,996 1,704
Walks Leads: 2,558 1,667
Strikeouts not scored 1,539 1,397
Stolen Bases Leads: 514 32
Batting Avg .298 Leads: .301
On-Base % Leads: .444 .419
Slugging % Leads: .607 .555
OPS Leads: 1.051 .974

PIV Comparison through 2025

By PIV (Player Impact Value), Barry Bonds outpaces Frank Thomas 96,025 to 56,456 — driven by both sides of the ledger: 4,365 PIV per season to 2,823, across 22 seasons to 20. PIV adjusts each season to league baselines, so it's the cleanest way to compare careers across eras.

PIV is computed through the 2025 season. The career totals on this page include 2026 to date, so PIV does not yet reflect the 2026 season.

Barry Bonds
96,025
Career PIV · 4,365 per season (22 seasons)
Frank Thomas
56,456
Career PIV · 2,823 per season (20 seasons)

How PIV is calculated →

Peak Seasons

The best single seasons each player produced, ranked by OPS among qualified workloads (300+ at-bats).

Barry Bonds — top 3 seasons by OPS

20041.422 OPS45 HR, 101 RBI, .362 avg
20021.381 OPS46 HR, 110 RBI, .370 avg
20011.379 OPS73 HR, 137 RBI, .328 avg

Frank Thomas — top 3 seasons by OPS

19941.217 OPS38 HR, 101 RBI, .353 avg
19961.085 OPS40 HR, 134 RBI, .349 avg
19971.067 OPS35 HR, 125 RBI, .347 avg

Verdict

On the head-to-head card, Barry Bonds leads in hits, home runs, RBI, and runs, while Frank Thomas owns batting average. That doesn't settle the era debate, but on the raw scoreboard the edge goes to Barry Bonds. PIV agrees: Barry Bonds grades out higher across their careers. Click through to each profile for the full season-by-season breakdown.

Related Matchups

How the Barry Bonds and Frank Thomas careers compare

The careers of Barry Bonds (1986–2007) and Frank Thomas (1990–2008) overlapped from 1990 to 2007, so for those seasons they faced the same league conditions. The two careers are close in length, 2,986 games for Barry Bonds and 2,322 for Frank Thomas across 22 and 20 PIV seasons, so the totals compare on fairly even terms. Where Frank Thomas comes out ahead, it is in batting average (.301 to .298). Barry Bonds walked more often than struck out (2,558 walks, 1,539 strikeouts); Frank Thomas walked more often than struck out (1,667 walks, 1,397 strikeouts).

Barry Bonds vs Frank Thomas: Frequently Asked Questions

Who was better, Barry Bonds or Frank Thomas?
By the career statistics compared on this page, Barry Bonds leads Frank Thomas in 13 of the 14 scored categories.
Did Barry Bonds or Frank Thomas hit more home runs?
Barry Bonds, with 762 to Frank Thomas's 521.
Who had the higher OPS?
Barry Bonds, with 1.051 to Frank Thomas's .974.
Who had the higher batting average?
Frank Thomas, with .301 to Barry Bonds's .298.
Who had more hits?
Barry Bonds, with 2,935 to Frank Thomas's 2,468.

See These Players in Another Era