MLB · 2026
Season grade leaderboard
Runs each player adds above an average player, from how every plate appearance ended, adjusted for the parks he played in. How is this calculated?
Qualified: 40 innings over a full season (205 players). Show everyone · 2026
Mason Miller
San Diego Padres · RP
Louis Varland
Toronto Blue Jays · RP
Adrian Morejon
San Diego Padres · RP
| # | Player | Team | Season | Runs | Grade |
|---|---|---|---|---|---|
| 1 | Mason MillerRP · SD | Padres | 70.0 IP · 1.67 ERA · 129 K | +22.9 | 99.8 |
| 2 | Louis VarlandRP · TOR | Blue Jays | 78.0 IP · 1.27 ERA · 97 K | +20.5 | 99.3 |
| 3 | Adrian MorejonRP · SD | Padres | 86.0 IP · 2.83 ERA · 107 K | +18.9 | 98.8 |
| 4 | Jhoan DuranRP · PHI | Phillies | 59.1 IP · 1.82 ERA · 84 K | +17.7 | 98.3 |
| 5 | Trevor MegillRP · MIL | Brewers | 61.2 IP · 2.63 ERA · 69 K | +17.6 | 97.8 |
| 6 | Cade SmithRP · CLE | Guardians | 74.0 IP · 1.95 ERA · 107 K | +16.9 | 97.3 |
| 7 | Spencer MilesRP · TOR | Blue Jays | 95.2 IP · 2.73 ERA · 93 K | +16.6 | 96.8 |
| 8 | Mason MontgomeryRP · PIT | Pirates | 68.2 IP · 2.88 ERA · 105 K | +15.1 | 96.3 |
| 9 | Tanner ScottRP · LAD | Dodgers | 63.2 IP · 2.69 ERA · 82 K | +15.0 | 95.9 |
| 10 | Dylan LeeRP · ATL | Braves | 67.0 IP · 3.09 ERA · 77 K | +14.9 | 95.4 |
| 11 | Jacob LatzRP · TEX | Rangers | 72.0 IP · 2.13 ERA · 83 K | +14.9 | 94.9 |
| 12 | Grant TaylorRP · CHW | White Sox | 84.0 IP · 2.25 ERA · 106 K | +13.1 | 94.4 |
| 13 | Ben BrownRP · CHC | Cubs | 68.0 IP · 1.85 ERA · 65 K | +12.9 | 93.9 |
| 14 | David BednarRP · NYY | Yankees | 69.1 IP · 2.47 ERA · 76 K | +12.8 | 93.4 |
| 15 | Didier FuentesRP · ATL | Braves | 73.1 IP · 2.45 ERA · 92 K | +12.8 | 92.9 |
| 16 | Brent HeadrickRP · NYY | Yankees | 78.1 IP · 2.18 ERA · 98 K | +12.6 | 92.4 |
| 17 | Garrett WhitlockRP · BOS | Red Sox | 52.1 IP · 1.72 ERA · 59 K | +12.6 | 92.0 |
| 18 | Josh HaderRP · HOU | Astros | 44.2 IP · 1.01 ERA · 55 K | +12.4 | 91.5 |
| 19 | Jeff HoffmanRP · MIN | Twins | 66.0 IP · 3.55 ERA · 102 K | +12.1 | 91.0 |
| 20 | Kevin KellyRP · TB | Rays | 73.2 IP · 2.44 ERA · 63 K | +11.4 | 90.5 |
| 21 | Bradgley RodriguezRP · SD | Padres | 74.0 IP · 2.19 ERA · 81 K | +11.2 | 90.0 |
| 22 | Juan MorilloRP · ARI | Diamondbacks | 64.1 IP · 2.24 ERA · 74 K | +11.1 | 89.5 |
| 23 | Yohan RamirezRP · PIT | Pirates | 85.0 IP · 2.86 ERA · 102 K | +10.9 | 89.0 |
| 24 | Edgardo HenriquezRP · LAD | Dodgers | 60.0 IP · 2.85 ERA · 71 K | +10.9 | 88.5 |
| 25 | Abner UribeRP · MIL | Brewers | 59.1 IP · 1.97 ERA · 62 K | +10.9 | 88.0 |
| 26 | Jonathan LoaisigaRP · ARI | Diamondbacks | 67.0 IP · 2.42 ERA · 48 K | +10.7 | 87.6 |
| 27 | Brandyn GarciaRP · ARI | Diamondbacks | 51.1 IP · 1.93 ERA · 60 K | +10.4 | 87.1 |
| 28 | Aaron AshbyRP · MIL | Brewers | 89.1 IP · 3.12 ERA · 116 K | +10.1 | 86.6 |
| 29 | Aroldis ChapmanRP · BOS | Red Sox | 51.2 IP · 1.92 ERA · 71 K | +9.8 | 86.1 |
| 30 | Calvin FaucherRP · MIA | Marlins | 68.1 IP · 3.56 ERA · 73 K | +9.7 | 85.6 |
| 31 | Bryan BakerRP · TB | Rays | 62.1 IP · 1.44 ERA · 63 K | +9.6 | 85.1 |
| 32 | Alex VesiaRP · LAD | Dodgers | 58.0 IP · 2.64 ERA · 74 K | +9.5 | 84.6 |
| 33 | Sean NewcombRP · CHW | White Sox | 90.1 IP · 3.09 ERA · 84 K | +9.2 | 84.1 |
| 34 | Tyler RogersRP · TOR | Blue Jays | 71.0 IP · 1.77 ERA · 40 K | +9.0 | 83.7 |
| 35 | Luke WeaverRP · PIT | Pirates | 60.1 IP · 2.69 ERA · 65 K | +8.8 | 83.2 |
| 36 | Michael PetersenRP · MIA | Marlins | 65.2 IP · 3.02 ERA · 81 K | +8.6 | 82.7 |
| 37 | Yennier CanoRP · BAL | Orioles | 49.2 IP · 2.90 ERA · 45 K | +8.4 | 82.2 |
| 38 | Erik SabrowskiRP · CLE | Guardians | 48.1 IP · 2.61 ERA · 76 K | +8.2 | 81.7 |
| 39 | Tyron GuerreroRP · BOS | Red Sox | 40.2 IP · 3.10 ERA · 41 K | +8.1 | 81.2 |
| 40 | Steven OkertRP · HOU | Astros | 67.2 IP · 2.13 ERA · 68 K | +8.1 | 80.7 |
| 41 | Tyler WellsRP · TB | Rays | 72.0 IP · 2.38 ERA · 72 K | +8.0 | 80.2 |
| 42 | Andrew MorrisRP · MIN | Twins | 73.2 IP · 4.40 ERA · 69 K | +7.9 | 79.8 |
| 43 | Jack DreyerRP · LAD | Dodgers | 64.2 IP · 3.20 ERA · 73 K | +7.2 | 79.3 |
| 44 | Cam BooserRP · TB | Rays | 41.0 IP · 1.98 ERA · 45 K | +7.0 | 78.8 |
| 45 | Gregory SotoRP · PIT | Pirates | 67.0 IP · 3.63 ERA · 79 K | +7.0 | 78.3 |
| 46 | Raisel IglesiasRP · ATL | Braves | 60.0 IP · 2.55 ERA · 64 K | +7.0 | 77.8 |
| 47 | Colin HoldermanRP · CLE | Guardians | 52.2 IP · 2.73 ERA · 50 K | +6.9 | 77.3 |
| 48 | Tyler AlexanderRP · TEX | Rangers | 73.0 IP · 3.70 ERA · 60 K | +6.8 | 76.8 |
| 49 | Grant WolframRP · BAL | Orioles | 52.1 IP · 4.30 ERA · 61 K | +6.7 | 76.3 |
| 50 | Tim MayzaRP · PHI | Phillies | 67.1 IP · 3.48 ERA · 64 K | +6.6 | 75.9 |
| 51 | Brennan BernardinoRP · COL | Rockies | 64.0 IP · 2.81 ERA · 49 K | +6.4 | 75.4 |
| 52 | Paul BlackburnRP · NYY | Yankees | 85.0 IP · 1.59 ERA · 69 K | +6.0 | 74.9 |
| 53 | Brock BurkeRP · CIN | Reds | 74.1 IP · 2.30 ERA · 74 K | +6.0 | 74.4 |
| 54 | Jonathan BowlanRP · PHI | Phillies | 56.1 IP · 3.36 ERA · 73 K | +6.0 | 73.9 |
| 55 | Gordon GraceffoRP · STL | Cardinals | 81.0 IP · 2.67 ERA · 63 K | +5.8 | 73.4 |
| 56 | Brent SuterRP · ATL | Braves | 91.0 IP · 3.36 ERA · 78 K | +5.6 | 72.9 |
| 57 | Bryan HudsonRP · CHW | White Sox | 67.1 IP · 3.74 ERA · 59 K | +5.5 | 72.4 |
| 58 | Carmen MlodzinskiRP · PIT | Pirates | 123.0 IP · 3.95 ERA · 97 K | +5.5 | 72.0 |
| 59 | Erik MillerRP · BOS | Red Sox | 51.1 IP · 2.98 ERA · 74 K | +5.5 | 71.5 |
| 60 | Kevin GinkelRP · ARI | Diamondbacks | 67.2 IP · 4.12 ERA · 72 K | +5.4 | 71.0 |
| 61 | Antonio SenzatelaRP · MIL | Brewers | 73.1 IP · 4.05 ERA · 60 K | +5.3 | 70.5 |
| 62 | Ryan YarbroughRP · NYY | Yankees | 63.1 IP · 3.69 ERA · 49 K | +5.1 | 70.0 |
| 63 | Luis MedinaRP · ATH | Athletics | 73.0 IP · 3.08 ERA · 93 K | +5.0 | 69.5 |
| 64 | Rico GarciaRP · BAL | Orioles | 67.0 IP · 3.09 ERA · 68 K | +4.9 | 69.0 |
| 65 | Anthony NunezRP · BAL | Orioles | 59.2 IP · 4.07 ERA · 66 K | +4.8 | 68.5 |
| 66 | Taylor ClarkeRP · ARI | Diamondbacks | 73.0 IP · 2.96 ERA · 45 K | +4.7 | 68.0 |
| 67 | Ty MaddenRP · DET | Tigers | 47.0 IP · 3.26 ERA · 46 K | +4.6 | 67.6 |
| 68 | Mason FluhartyRP · TOR | Blue Jays | 62.2 IP · 3.30 ERA · 65 K | +4.6 | 67.1 |
| 69 | Ryan ZeferjahnRP · CHC | Cubs | 69.2 IP · 3.88 ERA · 94 K | +4.6 | 66.6 |
| 70 | Wilber DotelRP · PIT | Pirates | 42.1 IP · 4.46 ERA · 41 K | +4.3 | 66.1 |
| 71 | Huascar BrazobanRP · CHW | White Sox | 67.0 IP · 2.96 ERA · 56 K | +4.2 | 65.6 |
| 72 | Kirby YatesRP · PIT | Pirates | 42.1 IP · 3.19 ERA · 49 K | +4.2 | 65.1 |
| 73 | Cole SulserRP · TB | Rays | 56.1 IP · 4.31 ERA · 56 K | +4.1 | 64.6 |
| 74 | DL HallRP · MIL | Brewers | 61.1 IP · 1.91 ERA · 64 K | +3.9 | 64.1 |
| 75 | Andres MunozRP · SEA | Mariners | 57.1 IP · 4.24 ERA · 89 K | +3.9 | 63.7 |
| 76 | Cal QuantrillRP · TEX | Rangers | 110.0 IP · 2.86 ERA · 81 K | +3.9 | 63.2 |
| 77 | Kody FunderburkRP · MIN | Twins | 51.0 IP · 3.71 ERA · 49 K | +3.7 | 62.7 |
| 78 | Eric OrzeRP · MIN | Twins | 41.1 IP · 5.66 ERA · 36 K | +3.6 | 62.2 |
| 79 | Devin WilliamsRP · NYM | Mets | 40.2 IP · 4.43 ERA · 52 K | +3.6 | 61.7 |
| 80 | Dylan DoddRP · ATL | Braves | 49.2 IP · 2.54 ERA · 53 K | +3.5 | 61.2 |
| 81 | Ryan WatsonRP · LAA | Angels | 72.0 IP · 4.00 ERA · 65 K | +3.5 | 60.7 |
| 82 | Enmanuel De JesusRP · DET | Tigers | 42.1 IP · 3.83 ERA · 39 K | +3.4 | 60.2 |
| 83 | Kyle HartRP · SD | Padres | 64.0 IP · 4.92 ERA · 59 K | +3.4 | 59.8 |
| 84 | Tejay AntoneRP · CIN | Reds | 55.0 IP · 3.11 ERA · 57 K | +3.4 | 59.3 |
| 85 | Jordan HicksRP · CHW | White Sox | 48.0 IP · 3.94 ERA · 64 K | +3.1 | 58.8 |
| 86 | Ian SeymourSP · TB | Rays | 132.2 IP · 4.21 ERA · 158 K | +3.1 | 58.3 |
| 87 | Kyle HurtRP · LAD | Dodgers | 45.2 IP · 4.14 ERA · 58 K | +3.1 | 57.8 |
| 88 | Alex HoppeRP · BAL | Orioles | 42.2 IP · 4.43 ERA · 47 K | +3.0 | 57.3 |
| 89 | Matt FestaRP · CLE | Guardians | 66.2 IP · 3.78 ERA · 69 K | +3.0 | 56.8 |
| 90 | Will KleinRP · LAD | Dodgers | 41.2 IP · 3.67 ERA · 49 K | +3.0 | 56.3 |
| 91 | Brayan BelloSP · BOS | Red Sox | 116.1 IP · 4.33 ERA · 92 K | +2.6 | 55.9 |
| 92 | Jakob JunisRP · TEX | Rangers | 54.1 IP · 3.64 ERA · 38 K | +2.5 | 55.4 |
| 93 | Tommy NanceRP · MIN | Twins | 59.2 IP · 3.92 ERA · 68 K | +2.5 | 54.9 |
| 94 | Greg WeissertRP · BOS | Red Sox | 60.2 IP · 3.26 ERA · 60 K | +2.4 | 54.4 |
| 95 | Riley O'BrienRP · STL | Cardinals | 64.0 IP · 4.08 ERA · 64 K | +2.4 | 53.9 |
| 96 | Andrew KittredgeRP · BAL | Orioles | 48.1 IP · 3.54 ERA · 40 K | +2.3 | 53.4 |
| 97 | Yuki MatsuiRP · SD | Padres | 64.0 IP · 1.83 ERA · 68 K | +2.3 | 52.9 |
| 98 | Jovani MoranRP · BOS | Red Sox | 65.2 IP · 3.15 ERA · 73 K | +2.2 | 52.4 |
| 99 | Caleb KilianRP · PHI | Phillies | 47.2 IP · 4.91 ERA · 56 K | +2.2 | 52.0 |
| 100 | Jose FerminRP · LAA | Angels | 53.2 IP · 3.86 ERA · 62 K | +2.1 | 51.5 |
| 101 | Justin BruihlRP · STL | Cardinals | 77.2 IP · 3.59 ERA · 53 K | +2.0 | 51.0 |
| 102 | Orlando RibaltaRP · WSH | Nationals | 43.0 IP · 3.77 ERA · 42 K | +2.0 | 50.5 |
| 103 | Hunter GaddisRP · CLE | Guardians | 60.1 IP · 2.98 ERA · 57 K | +1.9 | 50.0 |
| 104 | Trevor RichardsRP · CHW | White Sox | 83.0 IP · 3.69 ERA · 73 K | +1.9 | 49.5 |
| 105 | Gabe SpeierRP · SEA | Mariners | 46.0 IP · 2.93 ERA · 45 K | +1.9 | 49.0 |
| 106 | Juan MejiaRP · COL | Rockies | 70.0 IP · 5.27 ERA · 66 K | +1.9 | 48.5 |
| 107 | JoJo RomeroRP · MIL | Brewers | 56.1 IP · 3.36 ERA · 54 K | +1.8 | 48.0 |
| 108 | Lake BacharRP · PIT | Pirates | 86.2 IP · 3.43 ERA · 93 K | +1.7 | 47.6 |
| 109 | Chase SilsethRP · TEX | Rangers | 60.0 IP · 3.60 ERA · 74 K | +1.4 | 47.1 |
| 110 | Keaton WinnRP · SF | Giants | 43.0 IP · 3.35 ERA · 33 K | +1.4 | 46.6 |
| 111 | Brandon EisertRP · PIT | Pirates | 44.0 IP · 5.52 ERA · 49 K | +1.4 | 46.1 |
| 112 | Evan SiskRP · PIT | Pirates | 44.2 IP · 3.02 ERA · 50 K | +1.4 | 45.6 |
| 113 | Victor VodnikRP · MIA | Marlins | 58.2 IP · 4.91 ERA · 44 K | +1.3 | 45.1 |
| 114 | Jacob WebbRP · CHC | Cubs | 67.0 IP · 3.36 ERA · 73 K | +1.3 | 44.6 |
| 115 | Kenley JansenRP · DET | Tigers | 45.0 IP · 3.20 ERA · 51 K | +1.3 | 44.1 |
| 116 | Tim HerrinRP · CLE | Guardians | 56.2 IP · 3.02 ERA · 54 K | +1.2 | 43.7 |
| 117 | Hogan HarrisRP · ATH | Athletics | 70.1 IP · 3.33 ERA · 88 K | +1.2 | 43.2 |
| 118 | Ryan RolisonRP · CHC | Cubs | 63.0 IP · 3.14 ERA · 55 K | +1.2 | 42.7 |
| 119 | Jose AlvaradoRP · PHI | Phillies | 58.1 IP · 5.86 ERA · 70 K | +1.2 | 42.2 |
| 120 | Cade GibsonRP · MIA | Marlins | 50.1 IP · 5.36 ERA · 44 K | +1.1 | 41.7 |
| 121 | Nate PearsonRP · KC | Royals | 46.0 IP · 4.11 ERA · 41 K | +1.1 | 41.2 |
| 122 | Emilio PaganRP · CIN | Reds | 42.2 IP · 3.38 ERA · 45 K | +1.1 | 40.7 |
| 123 | Cooper CriswellRP · SEA | Mariners | 40.2 IP · 3.32 ERA · 31 K | +1.1 | 40.2 |
| 124 | Brad LordRP · WSH | Nationals | 83.1 IP · 3.78 ERA · 77 K | +1.1 | 39.8 |
| 125 | Brooks RaleyRP · PHI | Phillies | 52.2 IP · 3.25 ERA · 51 K | +1.0 | 39.3 |
| 126 | Peyton GrayRP · TEX | Rangers | 56.0 IP · 3.86 ERA · 60 K | +1.0 | 38.8 |
| 127 | Casey LeguminaRP · TB | Rays | 71.2 IP · 3.77 ERA · 55 K | +0.9 | 38.3 |
| 128 | Chase DollanderRP · COL | Rockies | 44.0 IP · 3.89 ERA · 47 K | +0.9 | 37.8 |
| 129 | Ryan ThompsonRP · ARI | Diamondbacks | 40.2 IP · 4.43 ERA · 29 K | +0.8 | 37.3 |
| 130 | Jacob WaguespackRP · DET | Tigers | 47.0 IP · 2.49 ERA · 35 K | +0.8 | 36.8 |
| 131 | Tyler HoltonRP · DET | Tigers | 72.0 IP · 2.75 ERA · 55 K | +0.8 | 36.3 |
| 132 | Craig KimbrelRP · KC | Royals | 46.0 IP · 4.50 ERA · 40 K | +0.7 | 35.9 |
| 133 | Brady BassoRP · ATH | Athletics | 43.0 IP · 6.07 ERA · 31 K | +0.7 | 35.4 |
| 134 | Taylor RogersRP · MIN | Twins | 60.1 IP · 4.33 ERA · 54 K | +0.6 | 34.9 |
| 135 | Travis AdamsRP · MIN | Twins | 59.0 IP · 4.58 ERA · 62 K | +0.5 | 34.4 |
| 136 | Will DionRP · WSH | Nationals | 49.2 IP · 3.62 ERA · 55 K | +0.5 | 33.9 |
| 137 | Enyel De Los SantosRP · HOU | Astros | 71.1 IP · 4.79 ERA · 67 K | +0.5 | 33.4 |
| 138 | Michael RuckerRP · SEA | Mariners | 43.2 IP · 5.56 ERA · 50 K | +0.5 | 32.9 |
| 139 | Chad PatrickRP · MIL | Brewers | 106.0 IP · 3.40 ERA · 93 K | +0.4 | 32.4 |
| 140 | Fernando CruzRP · NYY | Yankees | 54.2 IP · 3.13 ERA · 67 K | +0.4 | 32.0 |
| 141 | Braydon FisherRP · TOR | Blue Jays | 75.2 IP · 3.21 ERA · 74 K | +0.4 | 31.5 |
| 142 | Garrett CleavingerRP · TB | Rays | 41.1 IP · 4.79 ERA · 54 K | +0.4 | 31.0 |
| 143 | Grant AndersonRP · MIL | Brewers | 59.0 IP · 3.36 ERA · 52 K | +0.3 | 30.5 |
| 144 | Orion KerkeringRP · PHI | Phillies | 58.0 IP · 4.97 ERA · 63 K | +0.3 | 30.0 |
| 145 | Camilo DovalRP · SF | Giants | 60.2 IP · 4.15 ERA · 66 K | −0.0 | 29.5 |
| 146 | Albert SuarezRP · BAL | Orioles | 63.0 IP · 3.86 ERA · 46 K | −0.0 | 29.0 |
| 147 | Sam MollRP · CIN | Reds | 56.1 IP · 4.79 ERA · 56 K | −0.1 | 28.5 |
| 148 | Wandy PeraltaRP · SD | Padres | 77.1 IP · 3.61 ERA · 50 K | −0.2 | 28.0 |
| 149 | Jose SuarezSP · ATH | Athletics | 61.1 IP · 5.87 ERA · 61 K | −0.3 | 27.6 |
| 150 | Cole WinnRP · TEX | Rangers | 48.0 IP · 5.63 ERA · 49 K | −0.3 | 27.1 |
| 151 | A.J. MinterRP · MIN | Twins | 45.2 IP · 2.56 ERA · 41 K | −0.3 | 26.6 |
| 152 | JT BrubakerRP · SF | Giants | 60.1 IP · 3.58 ERA · 39 K | −0.3 | 26.1 |
| 153 | Austin WarrenRP · NYM | Mets | 50.1 IP · 4.11 ERA · 55 K | −0.3 | 25.6 |
| 154 | Drew AndersonRP · DET | Tigers | 108.0 IP · 3.67 ERA · 114 K | −0.3 | 25.1 |
| 155 | Yoendrys GomezRP · MIN | Twins | 67.0 IP · 4.30 ERA · 65 K | −0.5 | 24.6 |
| 156 | Julian GarciaRP · CIN | Reds | 46.0 IP · 3.13 ERA · 41 K | −0.6 | 24.1 |
| 157 | John SchreiberRP · NYY | Yankees | 60.1 IP · 3.28 ERA · 40 K | −0.6 | 23.7 |
| 158 | AJ BlubaughRP · HOU | Astros | 96.0 IP · 3.66 ERA · 94 K | −0.8 | 23.2 |
| 159 | Daniel Lynch IVRP · KC | Royals | 86.0 IP · 4.08 ERA · 56 K | −0.9 | 22.7 |
| 160 | Seranthony DominguezRP · SEA | Mariners | 62.0 IP · 3.63 ERA · 65 K | −1.1 | 22.2 |
| 161 | John KingRP · MIA | Marlins | 49.2 IP · 3.99 ERA · 33 K | −1.1 | 21.7 |
| 162 | Pete FairbanksRP · MIA | Marlins | 41.1 IP · 6.31 ERA · 57 K | −1.2 | 21.2 |
| 163 | Hoby MilnerRP · SEA | Mariners | 42.0 IP · 3.64 ERA · 25 K | −1.3 | 20.7 |
| 164 | Elvis AlvaradoRP · ATH | Athletics | 55.1 IP · 3.90 ERA · 65 K | −1.3 | 20.2 |
| 165 | Jose FerrerRP · SEA | Mariners | 64.2 IP · 4.18 ERA · 54 K | −1.5 | 19.8 |
| 166 | Cionel PerezRP · NYM | Mets | 45.1 IP · 4.76 ERA · 44 K | −1.6 | 19.3 |
| 167 | Ryne StanekRP · STL | Cardinals | 62.2 IP · 4.02 ERA · 65 K | −1.7 | 18.8 |
| 168 | Zach AgnosRP · COL | Rockies | 91.0 IP · 5.93 ERA · 58 K | −1.8 | 18.3 |
| 169 | Chase ShugartRP · PHI | Phillies | 53.2 IP · 4.02 ERA · 59 K | −1.9 | 17.8 |
| 170 | Caleb ThielbarRP · CHC | Cubs | 50.0 IP · 4.86 ERA · 60 K | −2.0 | 17.3 |
| 171 | Pierce JohnsonRP · CIN | Reds | 48.2 IP · 4.62 ERA · 42 K | −2.1 | 16.8 |
| 172 | Matt SvansonRP · STL | Cardinals | 43.1 IP · 7.27 ERA · 41 K | −2.3 | 16.3 |
| 173 | Tobias MyersRP · NYM | Mets | 53.2 IP · 5.53 ERA · 41 K | −3.1 | 15.9 |
| 174 | Bryan AbreuRP · HOU | Astros | 62.2 IP · 3.73 ERA · 80 K | −3.4 | 15.4 |
| 175 | Tyler KinleyRP · DET | Tigers | 57.1 IP · 3.45 ERA · 48 K | −3.5 | 14.9 |
| 176 | George SorianoRP · STL | Cardinals | 66.0 IP · 4.23 ERA · 66 K | −3.5 | 14.4 |
| 177 | Matt WaldronSP · WSH | Nationals | 42.2 IP · 6.54 ERA · 33 K | −3.5 | 13.9 |
| 178 | Sam BachmanRP · LAA | Angels | 48.2 IP · 4.81 ERA · 49 K | −3.6 | 13.4 |
| 179 | Paul SewaldRP · TOR | Blue Jays | 53.1 IP · 4.72 ERA · 53 K | −3.9 | 12.9 |
| 180 | Clayton BeeterRP · WSH | Nationals | 48.0 IP · 4.50 ERA · 47 K | −4.3 | 12.4 |
| 181 | Mitch FarrisRP · LAA | Angels | 60.0 IP · 4.05 ERA · 63 K | −4.4 | 12.0 |
| 182 | Bryan KingRP · HOU | Astros | 60.2 IP · 5.19 ERA · 51 K | −4.5 | 11.5 |
| 183 | Trent ThorntonRP · CHC | Cubs | 48.1 IP · 3.35 ERA · 31 K | −4.8 | 11.0 |
| 184 | Steven CruzRP · KC | Royals | 58.2 IP · 4.30 ERA · 65 K | −4.8 | 10.5 |
| 185 | Dennis SantanaRP · ARI | Diamondbacks | 56.2 IP · 5.56 ERA · 49 K | −5.2 | 10.0 |
| 186 | Jimmy HergetRP · COL | Rockies | 53.2 IP · 5.70 ERA · 47 K | −5.5 | 9.5 |
| 187 | Joel KuhnelRP · SF | Giants | 45.0 IP · 4.40 ERA · 28 K | −5.5 | 9.0 |
| 188 | Kai-Wei TengRP · HOU | Astros | 73.2 IP · 4.76 ERA · 73 K | −5.7 | 8.5 |
| 189 | Justin SternerRP · ATH | Athletics | 42.2 IP · 6.12 ERA · 40 K | −5.7 | 8.0 |
| 190 | Eduard BazardoRP · SEA | Mariners | 67.1 IP · 4.01 ERA · 70 K | −5.9 | 7.6 |
| 191 | Javier AssadRP · CHC | Cubs | 94.1 IP · 3.63 ERA · 63 K | −6.1 | 7.1 |
| 192 | Steven MatzRP · TB | Rays | 80.1 IP · 5.49 ERA · 61 K | −6.1 | 6.6 |
| 193 | Lucas ErcegRP · KC | Royals | 48.1 IP · 5.59 ERA · 34 K | −7.0 | 6.1 |
| 194 | Aaron CivaleRP · CHC | Cubs | 111.1 IP · 4.20 ERA · 91 K | −7.5 | 5.6 |
| 195 | Griffin CanningSP · SD | Padres | 88.2 IP · 5.68 ERA · 87 K | −8.3 | 5.1 |
| 196 | Jesse ScholtensRP · TB | Rays | 47.2 IP · 4.34 ERA · 37 K | −8.4 | 4.6 |
| 197 | Jack PerkinsSP · ATH | Athletics | 121.0 IP · 6.10 ERA · 140 K | −8.4 | 4.1 |
| 198 | Tim HillRP · NYY | Yankees | 58.2 IP · 4.60 ERA · 25 K | −9.1 | 3.7 |
| 199 | Kyle FinneganRP · DET | Tigers | 60.2 IP · 4.30 ERA · 47 K | −9.3 | 3.2 |
| 200 | Ron MarinaccioRP · CIN | Reds | 57.2 IP · 6.09 ERA · 48 K | −10.6 | 2.7 |
| 201 | Tony SantillanRP · CIN | Reds | 40.2 IP · 6.42 ERA · 36 K | −11.4 | 2.2 |
| 202 | Alex LangeRP · KC | Royals | 60.0 IP · 6.75 ERA · 60 K | −11.6 | 1.7 |
| 203 | Kodai SengaRP · NYM | Mets | 61.1 IP · 7.34 ERA · 75 K | −12.5 | 1.2 |
| 204 | Mason BarnettRP · ATH | Athletics | 50.0 IP · 7.02 ERA · 50 K | −12.8 | 0.7 |
| 205 | Miles MikolasSP · WSH | Nationals | 116.0 IP · 5.82 ERA · 58 K | −19.7 | 0.2 |
How MLB grades work
An MLB grade measures runs above an average player. Every way a plate appearance can end has a run value: what it does, on average, to the runs a team can expect to score in the rest of the inning. A home run is worth about 1.39 runs, a double 0.75, a single 0.47, a walk 0.32, and an out costs 0.27. We worked these out from every play of the 2023 to 2025 seasons, the years since the pitch clock and the shift ban. A player is credited with how far his results beat what an average player would have done in the same plate appearances, and parks are taken into account: a hitter at Coors Field has it harder to stand out than one at T-Mobile Park.
- Hitters are graded on every plate appearance except intentional walks and sacrifice bunts, plus stolen bases and times caught stealing. Reaching on an error counts as the out it should have been.
- Pitchers' game grades count everything the batters they faced did. Season grades count strikeouts, walks, hit batters and home runs in full but balls in play only a quarter for how they turned out, because over a season those depend mostly on the fielders and on luck. Tested on 2022 to 2025, that blend predicted the next season's runs allowed almost as well as ignoring balls in play entirely, and far better than a pitcher's own runs allowed did.
- Season grades rank runs above average per game a player's team has played, so they count how much he plays as well as how well, against this season's qualified players in his role: hitters with 3.1 plate appearances per team game, starters with an inning per team game, relievers with 40 innings over a full season.
- Game grades need 3 plate appearances or batters faced, and rank one game against every such game of the regular season. Starters are ranked against starts and relievers against relief outings.
- Defense isn't in it. The play-by-play we use names fielders only in words, so a great shortstop's glove doesn't show.
Scores, box scores and play-by-play from ESPN. The run values and park factors behind the grades were worked out from Retrosheet's play-by-play: the information used here was obtained free of charge from and is copyrighted by Retrosheet. Interested parties may contact Retrosheet at www.retrosheet.org.