The best single batting seasons by players 35 and over, 1871 to 2025, ranked by OPS+ (100 x OBP/lgOBP + SLG/lgSLG - 1, same league-season, no park adjustment). The top season: Barry Bonds, age 39, 2004 (OPS+ 275). Filter by era below; every row with a committed career page links to it, and players outside our top-3,500 career-page set render as plain names.
Showing 160 of 160 ranked seasons
| # | Player | Age | Year | Team | OPS+ | OBP | SLG | HR | RBI | SB | PA |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Barry Bonds | 39 | 2004 | SFN | 275 | .609 | .812 | 45 | 101 | 6 | 617 |
| 2 | Barry Bonds | 37 | 2002 | SFN | 270 | .582 | .799 | 46 | 110 | 9 | 612 |
| 3 | Barry Bonds | 36 | 2001 | SFN | 259 | .515 | .863 | 73 | 137 | 13 | 664 |
| 4 | Ted Williams | 38 | 1957 | BOS | 251 | .526 | .731 | 38 | 87 | 0 | 546 |
| 5 | Barry Bonds | 38 | 2003 | SFN | 239 | .529 | .749 | 45 | 90 | 7 | 550 |
| 6 | Ted Williams | 35 | 1954 | BOS | 224 | .513 | .635 | 29 | 89 | 0 | 526 |
| 7 | Babe Ruth | 36 | 1931 | NYA | 221 | .495 | .700 | 46 | 163 | 5 | 663 |
| 8 | Babe Ruth | 35 | 1930 | NYA | 214 | .493 | .732 | 49 | 153 | 10 | 676 |
| 9 | Hank Aaron | 37 | 1971 | ATL | 212 | .410 | .669 | 47 | 118 | 1 | 573 |
| 10 | Nap Lajoie | 35 | 1910 | CLE | 208 | .444 | .514 | 4 | 76 | 26 | 678 |
| 11 | Babe Ruth | 37 | 1932 | NYA | 205 | .489 | .661 | 41 | 137 | 2 | 589 |
| 12 | Cap Anson | 36 | 1888 | CHN | 194 | .400 | .499 | 12 | 84 | 28 | 563 |
| 13 | Ted Williams | 39 | 1958 | BOS | 194 | .458 | .584 | 26 | 85 | 1 | 517 |
| 14 | Ted Williams | 37 | 1956 | BOS | 193 | .479 | .605 | 24 | 82 | 0 | 503 |
| 15 | Tris Speaker | 35 | 1923 | CLE | 191 | .469 | .610 | 17 | 130 | 8 | 693 |
| 16 | Honus Wagner | 35 | 1909 | PIT | 191 | .420 | .489 | 5 | 100 | 35 | 591 |
| 17 | Hank Aaron | 35 | 1969 | ATL | 188 | .396 | .607 | 44 | 97 | 9 | 639 |
| 18 | Barry Bonds | 35 | 2000 | SFN | 188 | .440 | .688 | 49 | 106 | 11 | 607 |
| 19 | Mark McGwire | 35 | 1999 | SLN | 186 | .424 | .697 | 65 | 147 | 0 | 661 |
| 20 | Stan Musial | 36 | 1957 | SLN | 183 | .422 | .612 | 29 | 102 | 1 | 579 |
| 21 | Sam Thompson | 35 | 1895 | PHI | 183 | .430 | .654 | 18 | 165 | 27 | 576 |
| 22 | Bob Johnson | 38 | 1944 | BOS | 182 | .431 | .528 | 17 | 106 | 2 | 626 |
| 23 | Chipper Jones | 36 | 2008 | ATL | 181 | .470 | .574 | 22 | 75 | 4 | 534 |
| 24 | Hank Greenberg | 35 | 1946 | DET | 180 | .373 | .604 | 44 | 127 | 5 | 604 |
| 25 | Mel Ott | 35 | 1944 | NY1 | 179 | .423 | .544 | 26 | 82 | 2 | 494 |
| 26 | Babe Ruth | 38 | 1933 | NYA | 178 | .442 | .582 | 34 | 103 | 4 | 575 |
| 27 | Ty Cobb | 38 | 1925 | DET | 177 | .468 | .598 | 12 | 102 | 13 | 490 |
| 28 | Tris Speaker | 37 | 1925 | CLE | 175 | .479 | .578 | 12 | 87 | 5 | 518 |
| 29 | Victor Martinez | 35 | 2014 | DET | 174 | .409 | .565 | 32 | 103 | 3 | 641 |
| 30 | Ty Cobb | 35 | 1922 | DET | 174 | .462 | .565 | 4 | 99 | 9 | 612 |
| 31 | Larry Walker | 35 | 2002 | COL | 174 | .421 | .602 | 26 | 104 | 6 | 553 |
| 32 | David Ortiz | 40 | 2016 | BOS | 172 | .401 | .620 | 38 | 127 | 2 | 626 |
| 33 | Chipper Jones | 35 | 2007 | ATL | 170 | .425 | .604 | 29 | 102 | 5 | 600 |
| 34 | Lefty O'Doul | 35 | 1932 | BRO | 169 | .423 | .555 | 21 | 90 | 11 | 657 |
| 35 | Lance Berkman | 35 | 2011 | SLN | 169 | .412 | .547 | 31 | 94 | 2 | 587 |
| 36 | Honus Wagner | 37 | 1911 | PIT | 169 | .423 | .507 | 9 | 89 | 20 | 558 |
| 37 | Nelson Cruz | 39 | 2020 | MIN | 168 | .397 | .595 | 16 | 33 | 0 | 214 |
| 38 | Zack Wheat | 36 | 1924 | BRO | 167 | .428 | .549 | 14 | 97 | 3 | 624 |
| 39 | Nelson Cruz | 38 | 2019 | MIN | 167 | .392 | .639 | 41 | 108 | 0 | 520 |
| 40 | Johnny Mize | 35 | 1948 | NY1 | 166 | .395 | .564 | 40 | 125 | 4 | 658 |
| 41 | George Springer | 35 | 2025 | TOR | 166 | .399 | .560 | 32 | 84 | 18 | 579 |
| 42 | Willie Mays | 37 | 1968 | SFN | 166 | .372 | .488 | 23 | 79 | 12 | 573 |
| 43 | Willie Mays | 40 | 1971 | SFN | 166 | .425 | .482 | 18 | 61 | 23 | 537 |
| 44 | Mike Schmidt | 36 | 1986 | PHI | 165 | .390 | .547 | 37 | 119 | 1 | 657 |
| 45 | Andres Galarraga | 37 | 1998 | ATL | 165 | .397 | .595 | 44 | 121 | 7 | 648 |
| 46 | Gavvy Cravath | 36 | 1917 | PHI | 165 | .369 | .473 | 12 | 83 | 6 | 590 |
| 47 | Hank Aaron | 38 | 1972 | ATL | 165 | .390 | .514 | 34 | 77 | 4 | 544 |
| 48 | Cap Anson | 35 | 1887 | CHN | 165 | .422 | .517 | 7 | 102 | 27 | 533 |
| 49 | Joe Start | 35 | 1878 | CHN | 165 | .355 | .439 | 1 | 27 | 0 | 287 |
| 50 | David Ortiz | 37 | 2013 | BOS | 163 | .395 | .564 | 30 | 103 | 4 | 600 |
| 51 | Hank Aaron | 36 | 1970 | ATL | 163 | .385 | .574 | 38 | 118 | 9 | 598 |
| 52 | Norm Cash | 37 | 1971 | DET | 163 | .372 | .531 | 32 | 91 | 1 | 523 |
| 53 | Willie Mays | 35 | 1966 | SFN | 162 | .368 | .556 | 37 | 103 | 5 | 629 |
| 54 | Cap Anson | 37 | 1889 | CHN | 162 | .440 | .471 | 7 | 117 | 27 | 609 |
| 55 | Al Oliver | 35 | 1982 | MON | 161 | .392 | .514 | 22 | 109 | 5 | 687 |
| 56 | Cy Williams | 36 | 1924 | PHI | 161 | .403 | .552 | 24 | 93 | 7 | 636 |
| 57 | Frank Robinson | 35 | 1971 | BAL | 161 | .384 | .510 | 28 | 99 | 3 | 545 |
| 58 | Mel Ott | 36 | 1945 | NY1 | 161 | .411 | .499 | 21 | 79 | 1 | 532 |
| 59 | Mike Schmidt | 35 | 1985 | PHI | 160 | .375 | .532 | 33 | 93 | 1 | 645 |
| 60 | Jim Thome | 35 | 2006 | CHA | 160 | .416 | .598 | 42 | 109 | 0 | 610 |
| 61 | Andres Galarraga | 36 | 1997 | COL | 159 | .389 | .585 | 41 | 140 | 15 | 674 |
| 62 | Dwight Evans | 35 | 1987 | BOS | 159 | .417 | .569 | 34 | 123 | 4 | 657 |
| 63 | David Ortiz | 35 | 2011 | BOS | 159 | .398 | .554 | 29 | 96 | 1 | 605 |
| 64 | Gavvy Cravath | 35 | 1916 | PHI | 159 | .379 | .440 | 11 | 70 | 9 | 532 |
| 65 | Deacon White | 36 | 1884 | BFN | 159 | .370 | .442 | 5 | 74 | 0 | 484 |
| 66 | Dave Winfield | 36 | 1988 | NYA | 158 | .398 | .530 | 25 | 107 | 9 | 631 |
| 67 | Stan Musial | 37 | 1958 | SLN | 158 | .423 | .528 | 17 | 62 | 0 | 549 |
| 68 | Tommy Henrich | 35 | 1948 | NYA | 157 | .391 | .554 | 25 | 100 | 2 | 673 |
| 69 | Edgar Martinez | 35 | 1998 | SEA | 157 | .429 | .565 | 29 | 102 | 1 | 672 |
| 70 | George Harper | 35 | 1927 | NY1 | 157 | .435 | .495 | 16 | 87 | 7 | 593 |
| 71 | Tommy Henrich | 36 | 1949 | NYA | 157 | .416 | .526 | 24 | 85 | 2 | 502 |
| 72 | Nap Lajoie | 37 | 1912 | CLE | 157 | .414 | .462 | 0 | 90 | 18 | 500 |
| 73 | Tony Gwynn | 37 | 1997 | SDN | 156 | .409 | .547 | 17 | 119 | 12 | 651 |
| 74 | Joe DiMaggio | 35 | 1950 | NYA | 156 | .394 | .585 | 32 | 122 | 0 | 606 |
| 75 | Joey Votto | 37 | 2021 | CIN | 156 | .375 | .563 | 36 | 99 | 1 | 533 |
| 76 | Andres Galarraga | 35 | 1996 | COL | 155 | .357 | .601 | 47 | 150 | 18 | 691 |
| 77 | Mickey Vernon | 35 | 1953 | WS1 | 155 | .403 | .518 | 15 | 115 | 4 | 679 |
| 78 | Darrell Evans | 36 | 1983 | SFN | 155 | .378 | .516 | 30 | 82 | 6 | 611 |
| 79 | Edgar Martinez | 36 | 1999 | SEA | 155 | .447 | .554 | 24 | 86 | 7 | 608 |
| 80 | Jorge Posada | 36 | 2007 | NYA | 155 | .426 | .543 | 20 | 90 | 2 | 589 |
| 81 | George Gore | 36 | 1890 | NYP | 155 | .432 | .499 | 10 | 55 | 28 | 479 |
| 82 | Hank Sauer | 35 | 1952 | CHN | 154 | .361 | .531 | 37 | 121 | 1 | 649 |
| 83 | Dolph Camilli | 35 | 1942 | BRO | 154 | .372 | .471 | 26 | 109 | 10 | 625 |
| 84 | Mike Schmidt | 37 | 1987 | PHI | 154 | .388 | .548 | 35 | 113 | 2 | 613 |
| 85 | Cy Williams | 35 | 1923 | PHI | 154 | .371 | .576 | 41 | 114 | 11 | 604 |
| 86 | Edgar Martinez | 38 | 2001 | SEA | 154 | .423 | .543 | 23 | 116 | 4 | 581 |
| 87 | Roberto Clemente | 36 | 1971 | PIT | 154 | .370 | .502 | 13 | 86 | 1 | 553 |
| 88 | Jim Thome | 36 | 2007 | CHA | 154 | .410 | .563 | 35 | 96 | 0 | 536 |
| 89 | Willie Stargell | 35 | 1975 | PIT | 154 | .375 | .516 | 22 | 90 | 0 | 526 |
| 90 | Charlie Gehringer | 36 | 1939 | DET | 154 | .423 | .544 | 16 | 86 | 4 | 486 |
| 91 | Rafael Palmeiro | 37 | 2002 | TEX | 153 | .391 | .571 | 43 | 105 | 2 | 663 |
| 92 | Jim O'Rourke | 39 | 1890 | NYP | 153 | .410 | .515 | 9 | 115 | 23 | 519 |
| 93 | Edgar Martinez | 37 | 2000 | SEA | 152 | .423 | .579 | 37 | 145 | 3 | 665 |
| 94 | Cap Anson | 38 | 1890 | CHN | 152 | .443 | .401 | 7 | 107 | 29 | 623 |
| 95 | Mickey Mantle | 35 | 1967 | NYA | 152 | .391 | .434 | 22 | 55 | 1 | 553 |
| 96 | Pete Rose | 35 | 1976 | CIN | 151 | .404 | .450 | 10 | 63 | 9 | 759 |
| 97 | George Brett | 37 | 1990 | KCA | 151 | .387 | .515 | 14 | 87 | 9 | 607 |
| 98 | Andre Dawson | 35 | 1990 | CHN | 151 | .358 | .535 | 27 | 100 | 16 | 581 |
| 99 | Ken Griffey | 35 | 2005 | CIN | 151 | .369 | .576 | 35 | 92 | 0 | 555 |
| 100 | Harmon Killebrew | 36 | 1972 | MIN | 151 | .367 | .450 | 26 | 74 | 0 | 532 |
| 101 | Ezra Sutton | 35 | 1885 | BSN | 151 | .338 | .425 | 4 | 47 | 0 | 474 |
| 102 | George Brett | 35 | 1988 | KCA | 150 | .389 | .509 | 24 | 103 | 14 | 681 |
| 103 | Jimmy Ryan | 35 | 1898 | CHN | 150 | .405 | .446 | 4 | 79 | 29 | 657 |
| 104 | Honus Wagner | 38 | 1912 | PIT | 150 | .395 | .496 | 7 | 102 | 26 | 634 |
| 105 | Tris Speaker | 36 | 1924 | CLE | 150 | .432 | .510 | 9 | 65 | 5 | 575 |
| 106 | Stan Musial | 35 | 1956 | SLN | 149 | .386 | .522 | 27 | 109 | 2 | 682 |
| 107 | Luis Gonzalez | 35 | 2003 | ARI | 149 | .402 | .532 | 26 | 104 | 5 | 679 |
| 108 | Luke Appling | 36 | 1943 | CHA | 149 | .419 | .407 | 3 | 80 | 27 | 677 |
| 109 | Harmon Killebrew | 35 | 1971 | MIN | 149 | .386 | .464 | 28 | 119 | 3 | 624 |
| 110 | Adrian Beltre | 35 | 2014 | TEX | 149 | .388 | .492 | 19 | 77 | 1 | 614 |
| 111 | Hank Sauer | 37 | 1954 | CHN | 149 | .375 | .563 | 41 | 103 | 2 | 605 |
| 112 | Jason Giambi | 35 | 2006 | NYA | 149 | .413 | .558 | 37 | 113 | 2 | 579 |
| 113 | Earl Averill | 36 | 1938 | CLE | 149 | .429 | .535 | 14 | 93 | 5 | 567 |
| 114 | Eric Davis | 36 | 1998 | BAL | 149 | .388 | .582 | 28 | 89 | 7 | 508 |
| 115 | Frank Thomas | 35 | 2003 | CHA | 148 | .390 | .562 | 42 | 105 | 0 | 662 |
| 116 | Jake Beckley | 36 | 1904 | SLN | 148 | .375 | .403 | 1 | 67 | 17 | 610 |
| 117 | Willie Mays | 39 | 1970 | SFN | 148 | .390 | .506 | 28 | 83 | 5 | 566 |
| 118 | Hal McRae | 36 | 1982 | KCA | 147 | .369 | .542 | 27 | 133 | 4 | 676 |
| 119 | Zack Wheat | 37 | 1925 | BRO | 147 | .403 | .541 | 14 | 103 | 3 | 670 |
| 120 | Honus Wagner | 36 | 1910 | PIT | 147 | .390 | .432 | 4 | 81 | 24 | 640 |
| 121 | Paul Konerko | 35 | 2011 | CHA | 147 | .388 | .517 | 31 | 105 | 1 | 639 |
| 122 | Eddie Collins | 36 | 1923 | CHA | 147 | .455 | .453 | 5 | 67 | 48 | 632 |
| 123 | Reggie Jackson | 36 | 1982 | CAL | 147 | .375 | .532 | 39 | 101 | 4 | 621 |
| 124 | David Ortiz | 39 | 2015 | BOS | 147 | .360 | .553 | 37 | 108 | 0 | 614 |
| 125 | Ty Cobb | 40 | 1927 | PHA | 146 | .440 | .482 | 5 | 93 | 22 | 574 |
| 126 | Mickey Mantle | 36 | 1968 | NYA | 146 | .385 | .398 | 18 | 54 | 6 | 547 |
| 127 | Ken Williams | 37 | 1927 | SLA | 146 | .403 | .525 | 17 | 74 | 9 | 496 |
| 128 | Joe Start | 36 | 1879 | PRO | 146 | .333 | .404 | 2 | 37 | 0 | 324 |
| 129 | Sam Crawford | 35 | 1915 | DET | 145 | .367 | .431 | 4 | 112 | 24 | 694 |
| 130 | Todd Helton | 35 | 2009 | COL | 145 | .416 | .489 | 15 | 86 | 0 | 645 |
| 131 | Jayson Werth | 35 | 2014 | WAS | 145 | .394 | .455 | 16 | 82 | 9 | 629 |
| 132 | Paul Molitor | 36 | 1993 | TOR | 144 | .402 | .509 | 22 | 111 | 22 | 725 |
| 133 | Jose Cruz | 36 | 1984 | HOU | 144 | .381 | .462 | 12 | 95 | 22 | 685 |
| 134 | Hardy Richardson | 35 | 1890 | BSP | 144 | .384 | .511 | 16 | 152 | 44 | 622 |
| 135 | Jake Beckley | 35 | 1903 | CIN | 144 | .384 | .447 | 2 | 81 | 23 | 512 |
| 136 | Joe Start | 39 | 1882 | PRO | 144 | .349 | .407 | 0 | 48 | 0 | 367 |
| 137 | Jose Cruz | 35 | 1983 | HOU | 143 | .385 | .463 | 14 | 92 | 30 | 664 |
| 138 | Fred Clarke | 36 | 1909 | PIT | 143 | .384 | .373 | 3 | 68 | 31 | 660 |
| 139 | Dwight Evans | 37 | 1989 | BOS | 143 | .397 | .463 | 20 | 100 | 3 | 630 |
| 140 | John Titus | 36 | 1912 | PHI | 143 | .416 | .446 | 5 | 70 | 11 | 609 |
| 141 | Tom Daly | 35 | 1901 | BRO | 143 | .371 | .444 | 3 | 90 | 31 | 576 |
| 142 | Joe Morgan | 38 | 1982 | SFN | 143 | .400 | .438 | 14 | 61 | 24 | 554 |
| 143 | Nap Lajoie | 38 | 1913 | CLE | 143 | .398 | .404 | 1 | 68 | 17 | 525 |
| 144 | Dave Winfield | 40 | 1992 | TOR | 142 | .377 | .491 | 26 | 108 | 2 | 670 |
| 145 | Roger Connor | 37 | 1895 | SLN | 142 | .421 | .504 | 8 | 78 | 9 | 468 |
| 146 | Frank Robinson | 37 | 1973 | CAL | 141 | .372 | .489 | 30 | 97 | 1 | 630 |
| 147 | Rico Carty | 36 | 1976 | CLE | 141 | .379 | .442 | 13 | 83 | 1 | 628 |
| 148 | Dan Brouthers | 36 | 1894 | BLN | 141 | .425 | .560 | 9 | 128 | 38 | 615 |
| 149 | Pete Rose | 38 | 1979 | PHI | 140 | .418 | .430 | 4 | 59 | 20 | 730 |
| 150 | Dwight Evans | 36 | 1988 | BOS | 140 | .375 | .487 | 21 | 111 | 5 | 645 |
| 151 | George Van Haltren | 35 | 1901 | NY1 | 140 | .396 | .405 | 1 | 47 | 24 | 605 |
| 152 | George Gore | 35 | 1889 | NY1 | 140 | .416 | .420 | 7 | 54 | 28 | 580 |
| 153 | Norm Cash | 38 | 1972 | DET | 140 | .338 | .445 | 22 | 61 | 0 | 501 |
| 154 | Jim O'Rourke | 35 | 1886 | NY1 | 140 | .365 | .402 | 1 | 34 | 14 | 479 |
| 155 | Tommy Leach | 35 | 1913 | CHN | 139 | .391 | .421 | 6 | 32 | 21 | 540 |
| 156 | Jimmy Ryan | 39 | 1902 | WS1 | 138 | .384 | .448 | 6 | 44 | 10 | 540 |
| 157 | Cap Anson | 39 | 1891 | CHN | 136 | .378 | .409 | 8 | 120 | 17 | 616 |
| 158 | Joe Start | 38 | 1881 | PRO | 136 | .345 | .397 | 0 | 29 | 0 | 357 |
| 159 | Fred Clarke | 35 | 1908 | PIT | 135 | .349 | .363 | 2 | 53 | 24 | 644 |
| 160 | Honus Wagner | 41 | 1915 | PIT | 133 | .325 | .422 | 6 | 78 | 22 | 625 |
Single seasons with PA >= 3.1 x the league's scheduled games that year (the batting-title rule shape, applied era-consistently). Season age = age as of June 30 of the season year (the Baseball-Reference convention); a July-or-later birthday means one less. Era adjustment is league-season normalization only, not park-adjusted. Unrecorded early-era stats (HBP, SF, RBI) display an em dash exactly as the source records them.
A season's age is the player's age as of June 30 of the season year, the Baseball-Reference convention. Players with no recorded birth year are excluded rather than guessed. The board shows the union of the all-time top 60 seasons and the top 20 of each era, so every era filter has rows.
Batting boards cover every batting line regardless of position, so two-way seasons (Babe Ruth 1919, Shohei Ohtani 2021) count their batting lines. Pitching boards qualify a season on the starter bar (an inning per scheduled team game) or the reliever bar (a third of that).
The records come from the SABR / Sean Lahman baseball database (2025 edition), used under Creative Commons Attribution-ShareAlike 3.0. See the sources page for every dataset behind Legends Deck.