OPS in Baseball Explained: Formula, Scale & Leaders

OPS stands for On-base Plus Slugging, and it might be the single most useful offensive stat in baseball. Add a hitter’s on-base percentage to their slugging percentage and you get one number that tells you almost everything about their offensive value: how often they reach base and how much damage they do when they hit it. The scale is intuitive once you know it. Babe Ruth, the all-time leader, had a career OPS of 1.1636. League average for a full-time MLB hitter is around .730. Anything above .900 is elite. Anything above 1.000 is historic.

This guide covers everything: how OPS is calculated, what counts as a good OPS at every level, the all-time career leaders, the most dominant single-season records, and why modern analysts often use OPS+ instead of raw OPS for cross-generation comparisons.

The OPS quality scale
What different OPS values actually mean for a hitter
OPS Range
Quality
What it means
1.000+
Historic
All-time legendary territory. Only 10 players in MLB history have a career OPS over 1.000. MVP-caliber seasons live here.
.900-.999
Excellent
Elite hitter. MVP candidate territory. Probably hitting .300+ with 30+ home runs and high walk rate.
.834-.899
Very Good
All-Star caliber. Strong middle-of-the-order bat. Driving in runs and getting on base consistently.
.767-.833
Above Average
Solid contributor. Above-average MLB hitter. Useful starter on a contending team.
.700-.766
Average
League-average MLB hitter. Roughly the median for full-time players.
.634-.699
Below Average
Replacement-level offense. Generally a glove-first player or in a part-time role.
Below .634
Poor
Defensive specialist or struggling. Likely getting limited playing time.
Top 30 career OPS leaders all-time
Minimum 3,000 career plate appearances. Through April 2026.
#
Player
Career OPS
Career PA
Era
1
Babe Ruth
1.1636
10,628
1914-1935
2
Ted Williams
1.1155
9,792
1939-1960
3
Lou Gehrig
1.0798
9,665
1923-1939
4
Oscar Charleston
1.0639
3,885
Negro Leagues
5
Barry Bonds
1.0512
12,606
1986-2007
6
Jimmie Foxx
1.0376
9,677
1925-1945
7
Turkey Stearnes
1.0325
4,279
Negro Leagues
8
Mule Suttles
1.0176
4,127
Negro Leagues
9
Hank Greenberg
1.0169
6,096
1930-1947
10
Rogers Hornsby
1.0103
9,481
1915-1937
11
Aaron Judge
.9933
5,106
2016-active
12
Mike Trout
.9890
6,932
2011-active
13
Manny Ramirez
.9960
9,774
1993-2011
14
Mark McGwire
.9823
7,660
1986-2001
15
Frank Thomas
.9740
10,075
1990-2008
16
Joe DiMaggio
.9776
7,673
1936-1951
17
Stan Musial
.9755
12,721
1941-1963
18
Mickey Mantle
.9773
9,907
1951-1968
19
Albert Pujols
.9398
12,896
2001-2022
20
Shohei Ohtani
.9224
3,892
2018-active
21
Joey Votto
.9207
8,255
2007-2023
22
Frank Robinson
.9263
11,743
1956-1976
23
Hank Aaron
.9279
13,941
1954-1976
24
Willie Mays
.9408
12,496
1948-1973
25
Miguel Cabrera
.8812
11,392
2003-2023
26
Juan Soto
.9476
4,562
2018-active
27
Vladimir Guerrero
.9314
9,059
1996-2011
28
Edgar Martinez
.9326
8,672
1987-2004
29
Larry Walker
.9646
8,030
1989-2005
30
Ken Griffey Jr.
.9069
11,304
1989-2010
Top 10 single-season OPS in MLB history
The most dominant individual offensive seasons ever recorded
#
Player
Year
OPS
Notes
1
Barry Bonds
2004
1.4217
232 walks (record). Baseball’s most dominant offensive season.
2
Barry Bonds
2002
1.3807
.582 OBP — also an all-time record.
3
Barry Bonds
2001
1.3785
73 home runs. The famous record-setting season.
4
Babe Ruth
1920
1.3791
First year with the Yankees. 54 HR transformed the game.
5
Babe Ruth
1921
1.3586
59 HR. Considered Ruth’s peak season by many.
6
Ted Williams
1941
1.2867
.406 batting average — last .400 hitter in MLB.
7
Ted Williams
1957
1.2566
.388 batting average at age 38. Insane longevity.
8
Babe Ruth
1923
1.3091
First year at Yankee Stadium. Won World Series.
9
Aaron Judge
2024
1.1591
Highest single-season OPS since Bonds in 2004.
10
Mark McGwire
1998
1.2218
70 home runs. The famous Sosa-McGwire chase season.
Common OPS values by player type
What different OPS profiles tell you about a hitter
Player Type
Typical OBP
Typical SLG
Typical OPS
Example
Power slugger
.340
.560
.900
Aaron Judge, Giancarlo Stanton
Five-tool star
.380
.580
.960
Mike Trout, Mookie Betts (peak)
High-OBP table-setter
.400
.430
.830
Joey Votto (career), Wade Boggs
Contact hitter
.350
.420
.770
Tony Gwynn, Ichiro Suzuki
Average MLB hitter
.320
.410
.730
League median for full-time players
Glove-first starter
.300
.370
.670
Defensive specialist (catcher, SS)
Pitcher hitting
.150
.180
.330
Pre-universal-DH era only
OPS vs OPS+ — what’s the difference?
OPS+ adjusts for era and ballpark, making cross-generation comparisons fair
Stat
What it tells you
OPS
Raw on-base percentage plus slugging percentage. Doesn’t account for era, league, or ballpark. A .900 OPS in Coors Field 1999 is not the same as a .900 OPS in pitcher-friendly San Francisco 1968.
OPS+
Era and park-adjusted OPS where 100 is league average. A 150 OPS+ means 50% above league average. Babe Ruth’s career 206 OPS+ means he was 106% above his era’s league average — the all-time record.
Why it matters
Aaron Judge’s career 178 OPS+ ranks 6th all-time despite his career raw OPS being lower than several Hall of Famers. The adjustment recognizes how dominant he is relative to current pitching.
The takeaway
OPS combines two of the most important things a hitter can do: get on base and hit for power. The scale is intuitive once you know it — anything over .900 is excellent, .767 is the threshold for good, .700 is league average. The all-time leaders are concentrated in two eras: the live-ball era (Ruth, Williams, Gehrig, Foxx) and the steroid era (Bonds, McGwire, Manny). Modern hitters like Judge, Trout, Soto, and Ohtani are pushing back against pitching dominance, but only Bonds in 2001-2004 ever reached the OPS heights of Ruth’s prime.
Sources: Baseball-Reference.com career leaders, Wikipedia OPS leaders. Through April 2026.

How OPS is calculated

OPS is the sum of two component stats:

On-Base Percentage (OBP) = (Hits + Walks + Hit-By-Pitches) ÷ (At-Bats + Walks + Hit-By-Pitches + Sacrifice Flies)

OBP measures how often a hitter reaches base. It includes hits, walks, and hit-by-pitches, but doesn’t count errors or fielder’s choice plays. The denominator includes everything that counts as a “plate appearance” except sacrifice bunts.

Slugging Percentage (SLG) = (Singles + 2×Doubles + 3×Triples + 4×Home Runs) ÷ At-Bats

Slugging measures total bases per at-bat. Each hit type is weighted by its base value — a single counts as 1, a double as 2, a triple as 3, a home run as 4. Walks and hit-by-pitches don’t count for slugging because they don’t generate bases beyond first.

OPS = OBP + SLG

That’s it. The two numbers get added together. The result is a single statistic that captures both a hitter’s discipline at the plate and their power production. The simplicity is part of why OPS became popular in the 2000s as analytics took over baseball — it’s not as elegant as wOBA or as comprehensive as WAR, but it’s easy to calculate, easy to explain, and tells you 90% of what you need to know about a hitter’s offensive value.

What is a good OPS in baseball?

The OPS scale follows a fairly clear hierarchy in MLB:

  • 1.000+ — Historic. Only 10 players in MLB history have a career OPS above 1.000.
  • .900-.999 — Excellent. MVP candidate territory. Probably hitting .300+ with 30+ home runs.
  • .834-.899 — Very Good. All-Star caliber. Strong middle-of-the-order bat.
  • .767-.833 — Above Average. Solid contributor on a contending team.
  • .700-.766 — Average. Roughly the median for full-time MLB players.
  • .634-.699 — Below Average. Replacement-level offense, usually a glove-first player.
  • Below .634 — Poor. Defensive specialist or struggling.

The .767 threshold for “good” comes from combining what’s considered above-average for both component stats: a .360 OBP is good, a .450 SLG is the league-average baseline, and adding them gives you .810 — well clear of the .767 minimum. League-average MLB hitters land around .730 OPS in a normal season.

The all-time OPS leaders

The career OPS list is dominated by two eras: the live-ball era of the 1920s-1940s (Ruth, Gehrig, Williams, Foxx) and the steroid era of the late 1990s-2000s (Bonds, McGwire, Manny Ramirez). The chart above includes the top 30, but here’s the headline: only 10 MLB players in history have a career OPS above 1.000.

Babe Ruth’s 1.1636 career OPS is the all-time record, and it’s untouchable. Ruth combined 714 home runs (untouched until 1974) with a .474 on-base percentage that ranks 2nd all-time behind Ted Williams. Across 22 seasons, Ruth never had a year where his OPS dropped below .900 once he became a full-time hitter in 1919. The closest active player to Ruth’s career OPS is Aaron Judge at .9933, and even Judge would need to maintain his current pace for another decade to approach Ruth’s career mark.

Among purely modern players, Mike Trout (.989), Aaron Judge (.993), and Juan Soto (.948) lead the active leaderboards. Shohei Ohtani at .922 ranks 20th all-time despite being just a few thousand plate appearances into his career — a remarkable mark considering he’s also one of the best pitchers in baseball.

The most dominant single-season OPS records

Single-season OPS records belong to Barry Bonds, full stop. Bonds owns the top three single-season OPS marks in MLB history:

  • 2004: 1.4217 OPS (all-time record)
  • 2002: 1.3807 OPS
  • 2001: 1.3785 OPS (the famous 73-home-run season)

Bonds’ 2004 season is the most extreme offensive season in modern baseball history. He drew 232 walks (a record), posted a .609 on-base percentage, and was intentionally walked 120 times — pitchers literally chose not to throw him strikes more than 7% of the time he stepped to the plate. The OPS reflects a player so dominant that the league’s strategic response was to refuse to compete with him.

Babe Ruth’s 1920 (1.379) and 1921 (1.359) seasons are the closest pre-steroid-era marks. Ted Williams’ 1941 season (.406 batting average, 1.287 OPS) is the highest OPS by anyone other than Ruth or Bonds in the post-1900 era.

Among active players, Aaron Judge’s 2024 season at 1.159 OPS is the highest single-season mark since Bonds in 2004 — a 20-year gap that says everything about how rare those extreme offensive seasons are.

OPS vs OPS+: which is better?

For comparing players across eras, OPS+ is the smarter stat. OPS+ is era and park-adjusted, expressed as a number where 100 represents league average. A 150 OPS+ means 50% better than league average; a 200 OPS+ means 100% better.

This adjustment matters because the league environment changes dramatically over time. The 1968 “Year of the Pitcher” had completely different offensive context than 1999 at Coors Field. A .900 OPS in 1968 was far more valuable than a .900 OPS during the steroid era. OPS+ accounts for this.

The all-time OPS+ leaders are: Babe Ruth (206), Ted Williams (191), Oscar Charleston (184), Barry Bonds (182), Lou Gehrig (179), Aaron Judge (178), Turkey Stearnes (177), Rogers Hornsby (175). Notice how Aaron Judge ranks 6th all-time on OPS+ despite his raw OPS not being top-10 — the adjustment recognizes how dominant he’s been against modern pitching.

For everyday conversation, raw OPS is fine. For deep analytical comparisons across eras, OPS+ tells the more accurate story.

Is OPS better than batting average?

For evaluating a hitter’s offensive contribution to a team’s runs, yes — OPS is significantly better than batting average. The reasoning is straightforward: a single, double, triple, and home run all count equally toward batting average, but they don’t all produce equal offensive value. A double drives in twice as many runs as a single, on average. A home run is roughly four times more valuable.

OPS captures this through the slugging component. A player who hits .280 with 35 home runs and 80 walks creates more offensive value than a player hitting .310 with 5 home runs and 25 walks, even though the second player has the higher batting average. The OPS comparison usually clarifies which player actually helps the team score more runs.

Batting average isn’t useless — it tells you how often a player makes contact and produces hits. But OPS gives you the full picture: contact, walks, power, and the value of each at-bat outcome wrapped into a single number.

The shift toward OPS in mainstream coverage is part of the broader analytical revolution in baseball. Traditional triple-crown stats (batting average, home runs, RBI) still appear on broadcasts, but front offices, fantasy baseball players, and serious fans increasingly default to OPS as the cleaner measure of offensive value. The current MVPs of MLB are evaluated on OPS more than batting average, and the all-time greats — Ruth, Williams, Bonds — are remembered by their OPS marks because that’s what defines their offensive dominance.


— Drew, Legion Report