2025 Positional Power Rankings: Summary

Over the past week and a half, we’ve published our annual season preview, ranking the league’s players by position and team based on a blend of our projections (a 50/50 split between ZiPS and Steamer) and our manually maintained RosterResource playing time estimates courtesy of Jason Martinez and Jon Becker. If you happen to have missed any of those installments, you can use the navigation widget above to catch up.
Today, I’m going to summarize the results. We’ll look at some tables and pick out a few interesting tidbits in a moment, but first, it’s important to remember that this exercise captures a snapshot of how we project teams to perform now. Teams aren’t static. Since we began publishing our rankings, the Rockies traded outfielder Nolan Jones back to the Guardians, the team that drafted and developed him. The Brewers traded Mark Canha and Manuel Margot. Evan Carter, who burned so bright for the Rangers late in 2023, has been optioned as he tries to regain his stroke after an injury-riddled 2024 season. Drake Baldwin, our no. 11 overall prospect, and Cam Smith, no. 70, officially made their respective team’s Opening Day roster, as did Ryan Johnson, a 22-year-old right-handed pitcher who was drafted in the second round last year and has never thrown a pitch in affiliated ball (he ranked 11th on our Angels list as a 40+ FV prospect). And in a depressing callback to this time last year, when his signed with the Diamondbacks mere hours after our starting pitcher rankings went live, about 25 minutes after we published this year’s installment, Jordan Montgomery announced that he’ll be getting Tommy John surgery.
This being baseball, players will tweak elbows and hamstrings, lose playing time to underperformance, and get traded. That’s why we maintain a Team WAR Totals page, which lists projected positional WAR by team and updates throughout the season as we learn more about who is likely to take the field every day and what shape they’ll be in when they do. It’s important to note that the WAR numbers you see on that page may differ from those you’ve seen on the positional power rankings, mostly because those figures are aware of the injuries and transactions that have altered our playing time estimates since the rankings went live; the Z-Scores I’ll include later also use the WAR figures that power the Team WAR Totals page.
But before we get to the Z-Scores, let’s take note of some general trends and fun factoids. First, we’ll look at each team’s positional ranks as of Tuesday at 3:40 p.m. ET. There are 11 positions, with each team’s pitching, batting, and overall WAR rank included in the final three columns. This table is sortable, so feel free to poke around:
| Team | C | 1B | 2B | 3B | SS | RF | CF | LF | DH | SP | RP | Pitch | Bat | WAR |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Dodgers | 12 | 3 | 24 | 14 | 3 | 12 | 14 | 23 | 1 | 1 | 4 | 1 | 2 | 1 |
| Braves | 10 | 5 | 10 | 2 | 29 | 4 | 2 | 22 | 7 | 3 | 6 | 3 | 6 | 2 |
| Yankees | 8 | 12 | 4 | 22 | 13 | 1 | 7 | 15 | 13 | 14 | 5 | 8 | 4 | 3 |
| Phillies | 22 | 2 | 11 | 13 | 7 | 29 | 18 | 17 | 5 | 2 | 3 | 2 | 12 | 4 |
| Mets | 13 | 7 | 20 | 8 | 4 | 2 | 24 | 9 | 11 | 20 | 8 | 14 | 3 | 5 |
| Orioles | 3 | 13 | 8 | 6 | 2 | 9 | 6 | 5 | 14 | 23 | 2 | 19 | 1 | 6 |
| Rangers | 18 | 19 | 1 | 15 | 5 | 19 | 9 | 3 | 4 | 11 | 12 | 10 | 7 | 7 |
| Blue Jays | 4 | 1 | 3 | 12 | 11 | 16 | 16 | 12 | 10 | 21 | 19 | 20 | 5 | 8 |
| Mariners | 1 | 20 | 22 | 24 | 19 | 13 | 1 | 11 | 22 | 7 | 14 | 7 | 10 | 9 |
| Twins | 16 | 22 | 17 | 10 | 8 | 11 | 4 | 20 | 15 | 6 | 1 | 4 | 14 | 10 |
| Astros | 9 | 6 | 16 | 4 | 18 | 28 | 15 | 4 | 2 | 15 | 13 | 16 | 8 | 11 |
| Red Sox | 28 | 8 | 9 | 7 | 27 | 15 | 12 | 13 | 6 | 4 | 9 | 5 | 19 | 12 |
| Cubs | 23 | 16 | 7 | 16 | 9 | 5 | 13 | 8 | 8 | 17 | 21 | 18 | 9 | 13 |
| Diamondbacks | 6 | 14 | 2 | 18 | 23 | 6 | 19 | 21 | 25 | 5 | 11 | 6 | 15 | 14 |
| Rays | 21 | 4 | 5 | 9 | 17 | 10 | 20 | 18 | 12 | 18 | 24 | 22 | 11 | 15 |
| Padres | 30 | 21 | 25 | 5 | 14 | 3 | 3 | 27 | 23 | 12 | 16 | 12 | 18 | 16 |
| Tigers | 7 | 15 | 12 | 26 | 26 | 25 | 22 | 1 | 17 | 8 | 18 | 9 | 21 | 17 |
| Guardians | 15 | 17 | 29 | 1 | 24 | 18 | 25 | 2 | 16 | 26 | 7 | 23 | 13 | 18 |
| Royals | 19 | 10 | 14 | 17 | 1 | 27 | 26 | 26 | 21 | 13 | 15 | 13 | 22 | 19 |
| Giants | 2 | 23 | 21 | 3 | 10 | 20 | 8 | 19 | 26 | 22 | 23 | 24 | 17 | 20 |
| Brewers | 5 | 28 | 18 | 29 | 25 | 14 | 23 | 6 | 9 | 16 | 10 | 15 | 23 | 21 |
| Cardinals | 17 | 9 | 13 | 11 | 16 | 23 | 30 | 7 | 19 | 19 | 22 | 21 | 24 | 22 |
| Reds | 11 | 25 | 6 | 28 | 6 | 26 | 27 | 24 | 24 | 10 | 26 | 17 | 25 | 23 |
| Angels | 14 | 24 | 27 | 20 | 15 | 7 | 21 | 14 | 18 | 25 | 20 | 25 | 20 | 24 |
| Athletics | 20 | 27 | 19 | 23 | 12 | 8 | 10 | 16 | 3 | 30 | 25 | 28 | 16 | 25 |
| Pirates | 24 | 18 | 23 | 21 | 28 | 17 | 5 | 29 | 28 | 9 | 17 | 11 | 27 | 26 |
| Nationals | 27 | 11 | 15 | 30 | 22 | 21 | 28 | 10 | 20 | 27 | 28 | 27 | 26 | 27 |
| Marlins | 25 | 29 | 26 | 27 | 20 | 22 | 29 | 28 | 29 | 24 | 27 | 26 | 29 | 28 |
| White Sox | 26 | 26 | 28 | 19 | 30 | 24 | 11 | 25 | 27 | 29 | 30 | 30 | 28 | 29 |
| Rockies | 29 | 30 | 30 | 25 | 21 | 30 | 17 | 30 | 30 | 28 | 29 | 29 | 30 | 30 |
A few things jump out here.
The Dodgers and Mariners are the only teams with multiple no. 1 position finishes (DH and the starting rotation for Los Angeles, catcher and center field for Seattle). The Braves and Dodgers each have five top-five position finishes, while the Orioles, Phillies, and Rangers each have four, and the Astros, Blue Jays, Padres, and Yankees each have three. The Braves have nine positions that rank in the top 10, while the Orioles have eight, the Mets and Red Sox six, and the Astros, Cubs, Dodgers, Phillies, Rangers, Twins, and Yankees five. The Orioles’ entire outfield ranks in the top 10, while the Braves and Orioles boast top-10 finishes at four of the five infield positions. Five teams (the Braves, Dodgers, Phillies, Red Sox, and Twins) have a rotation and bullpen that project in the top 10.
It’s interesting to look at the ways the top-10 teams by total WAR have gone about constructing their rosters. Like last year, the teams with the two best projected records in baseball, the Dodgers (97 wins) and the Braves (93), not only mostly avoid being bad — they each only have two bottom-10 finishes (second base and left field for Los Angeles, shortstop and left field for Atlanta) — but, as noted above, they’re frequently great. They each have five top-five finishes and strong representation in the top 10 (nine for the Braves, five for the Dodgers), including tremendous pitching. The Orioles aren’t far behind in terms of top-10 finishes, though where they’re weak says a lot about how they’ve built their team. As noted, their infield and outfield are both stout, and the return of Félix Bautista has their bullpen stuffed at no. 2, but their rotation ranks 23rd. It’s their lone position in the bottom 10, and their only one in the bottom 15, but it’s enough to drag them down to sixth in projected total WAR.
The Mariners and Mets are marked by their high highs and low lows. Seattle has those two first-place finishes, and its starters check in at no. 7, but the team also has four bottom-10 finishes (first, second and third base, as well as DH) and five in the bottom 15, each the most among the teams in the top 10 by total WAR. Meanwhile, the Mets’ eight top-10 finishes are counterbalanced somewhat by their three bottom-10 spots (second base, center field, and the rotation). The Phillies offer a version of this approach, with four top-five finishes, and five in the top 10, but no first-place finishes (though first base and the rotation are both no. 2), two in the bottom 10 (right field and catcher), and four in the bottom 15, including their entire outfield. The Twins and Blue Jays each have one first-place finish (first base for Toronto, the bullpen for Minnesota) and largely avoid the lowest lows (Minnesota has two bottom-10 positions, Toronto just one), though they both have four positions in the bottom 15, including the Jays’ starters and relievers.
The Rangers are no. 1 at second base, and then avoid having any positions in the bottom 10. The Yankees underwhelm at third base, checking in at no. 22, but that’s their lone bottom-10 placement, as well as their only position in the bottom 15.
It isn’t all good news. This is an exercise in ranking, which means someone has to be last, and as often happens, a few unfortunate clubs are bringing up the rear at multiple positions. The Rockies once again have five last-place finishes (first and second base, left and right field, and DH), and catcher and the bullpen both rank 29th, while the rotation ranks 28th. Woof. The Marlins have 11 bottom-10 finishes, the Rockies 10, the White Sox nine, the Nationals eight, the Reds seven, and the Angels, Giants, and Pirates six each. As you might have gleaned, all 11 positions for Colorado and Miami are in the bottom 15; the strength of Chicago’s center field ranking, courtesy of Luis Robert Jr., is the only thing saving the White Sox from a similar fate. Four teams – the Marlins, Nationals, Rockies and White Sox – have an average positional ranking of 20th or lower. Seven teams — the Angels, Athletics, Giants, Marlins, Nationals, Rockies, and White Sox — place in the bottom 10 for both their rotation and bullpen. Good teams can still have weak positions, of course; the Braves’ shortstop and Phillies’ right field spots both rank 29th, making them the worst positions among the teams in the top 10 by overall WAR.
Ordinal rankings do have their limitations, as some positions cluster tightly together. At many positions, fractions of wins are all that separate teams from each other. There’s basically a 5-WAR difference between the top and the bottom of the center field rankings, while many of the league’s bullpens are closely bunched behind the Twins in the top spot. As I mentioned in my introduction, it is important to look at the magnitude of the differences between the rankings, as well as the rankings themselves. Thinking about whether a team falls above or below the league average, and by how much, can be a more useful way of approaching things than obsessing over where your favorite team ranked. To that end, I calculated the Z-Scores of each team’s projected positional WAR (again, using the figures on Team WAR Totals page as of 3:40 p.m. ET yesterday) to show you the number of standard deviations away from league average each team is at each spot:
| Team | C | 1B | 2B | 3B | SS | RF | CF | LF | DH | SP | RP | WAR |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Dodgers | 0.26 | 2.06 | -0.77 | -0.05 | 1.59 | -0.02 | -0.09 | -0.65 | 3.24 | 2.18 | 1.04 | 1.84 |
| Braves | 0.36 | 1.08 | 0.38 | 1.63 | -1.49 | 1.41 | 2.13 | -0.63 | 0.48 | 1.77 | 0.94 | 1.45 |
| Yankees | 0.63 | 0.06 | 1.38 | -0.63 | 0.09 | 2.59 | 0.36 | 0.01 | 0.07 | 0.18 | 1.01 | 0.97 |
| Phillies | -0.25 | 2.23 | 0.27 | 0.02 | 0.59 | -1.38 | -0.27 | -0.35 | 0.69 | 1.87 | 1.14 | 0.95 |
| Mets | 0.15 | 0.73 | -0.61 | 0.67 | 1.53 | 2.13 | -0.65 | 0.74 | 0.23 | -0.21 | 0.88 | 0.94 |
| Orioles | 1.41 | 0.00 | 0.78 | 0.91 | 1.97 | 0.34 | 0.37 | 0.96 | -0.04 | -0.77 | 1.28 | 0.91 |
| Rangers | -0.07 | -0.39 | 1.94 | -0.24 | 1.27 | -0.33 | 0.12 | 1.62 | 0.72 | 0.36 | 0.24 | 0.75 |
| Blue Jays | 1.16 | 2.31 | 1.84 | 0.11 | 0.17 | -0.18 | -0.13 | 0.36 | 0.26 | -0.23 | -0.15 | 0.65 |
| Mariners | 1.90 | -0.39 | -0.73 | -0.70 | -0.33 | -0.02 | 3.34 | 0.41 | -0.64 | 0.64 | 0.12 | 0.61 |
| Twins | 0.02 | -0.52 | -0.37 | 0.65 | 0.58 | 0.08 | 0.57 | -0.51 | -0.05 | 0.65 | 1.96 | 0.60 |
| Astros | 0.44 | 0.94 | -0.29 | 1.16 | -0.32 | -1.16 | -0.12 | 1.40 | 2.19 | 0.01 | 0.20 | 0.59 |
| Red Sox | -1.57 | 0.53 | 0.50 | 0.91 | -1.27 | -0.15 | -0.02 | 0.27 | 0.67 | 1.13 | 0.83 | 0.38 |
| Cubs | -0.46 | -0.26 | 1.13 | -0.44 | 0.34 | 1.14 | -0.02 | 0.75 | 0.37 | 0.00 | -0.20 | 0.36 |
| Diamondbacks | 0.97 | -0.18 | 1.84 | -0.53 | -0.62 | 0.79 | -0.28 | -0.58 | -0.72 | 0.65 | 0.30 | 0.34 |
| Rays | -0.18 | 1.14 | 1.22 | 0.67 | -0.25 | 0.11 | -0.30 | -0.36 | 0.22 | -0.15 | -0.65 | 0.10 |
| Padres | -2.30 | -0.47 | -0.79 | 1.11 | 0.02 | 1.87 | 2.00 | -1.15 | -0.65 | 0.31 | 0.05 | 0.10 |
| Tigers | 0.69 | -0.23 | 0.18 | -0.96 | -1.26 | -0.78 | -0.33 | 2.02 | -0.16 | 0.58 | -0.13 | -0.02 |
| Guardians | 0.11 | -0.28 | -1.56 | 2.79 | -0.68 | -0.28 | -0.66 | 1.66 | -0.11 | -1.03 | 0.92 | -0.10 |
| Royals | -0.09 | 0.10 | -0.23 | -0.45 | 2.33 | -1.06 | -0.71 | -1.01 | -0.63 | 0.22 | 0.08 | -0.13 |
| Giants | 1.69 | -0.62 | -0.69 | 1.42 | 0.23 | -0.55 | 0.25 | -0.50 | -0.93 | -0.48 | -0.44 | -0.19 |
| Brewers | 1.02 | -1.22 | -0.39 | -1.36 | -0.86 | -0.13 | -0.43 | 0.91 | 0.30 | 0.01 | 0.34 | -0.20 |
| Cardinals | -0.04 | 0.19 | 0.02 | 0.39 | -0.18 | -0.72 | -1.82 | 0.82 | -0.30 | -0.18 | -0.29 | -0.37 |
| Reds | 0.33 | -0.74 | 1.21 | -1.27 | 0.89 | -1.05 | -0.73 | -0.93 | -0.70 | 0.43 | -1.09 | -0.48 |
| Angels | 0.13 | -0.72 | -1.11 | -0.58 | -0.01 | 0.62 | -0.32 | 0.07 | -0.17 | -0.97 | -0.20 | -0.55 |
| Athletics | -0.10 | -0.98 | -0.57 | -0.65 | 0.14 | 0.38 | 0.08 | -0.16 | 1.44 | -2.11 | -0.69 | -0.77 |
| Pirates | -0.71 | -0.31 | -0.76 | -0.59 | -1.44 | -0.25 | 0.47 | -1.55 | -1.17 | 0.44 | 0.03 | -0.78 |
| Nationals | -1.44 | 0.09 | -0.23 | -1.70 | -0.54 | -0.59 | -1.26 | 0.67 | -0.51 | -1.06 | -1.73 | -1.42 |
| Marlins | -0.93 | -1.38 | -0.83 | -0.99 | -0.44 | -0.65 | -1.38 | -1.38 | -1.45 | -0.88 | -1.18 | -1.80 |
| White Sox | -1.16 | -0.92 | -1.14 | -0.57 | -1.55 | -0.74 | 0.04 | -0.98 | -1.00 | -1.90 | -2.45 | -2.20 |
| Rockies | -1.97 | -1.86 | -1.62 | -0.71 | -0.49 | -1.46 | -0.20 | -1.94 | -1.62 | -1.45 | -2.17 | -2.54 |
This table is also sortable, which makes it easy to spot the outliers, good and bad. I won’t narrate the whole thing except to point out the top-five positions by Z-Score:
- +3.34, Mariners center field
- +3.24, Dodgers designated hitter
- +2.79, Guardians third base
- +2.59, Yankees right field
- +2.33, Royals shortstop
As well as the bottom five:
- -2.45, White Sox bullpen
- -2.30, Padres catcher
- -2.17, Rockies bullpen
- -2.11, Athletics rotation
- -1.97, Rockies catcher
This season will no doubt contain surprises. Some teams will disappoint, and others will exceed expectations. Last year, we went into the season thinking the Twins would win the AL Central. They did not do that, but their division produced three postseason teams, including a Tigers team that swept the Astros out of the playoffs and a Royals team that bounced the Orioles in two games. Last year, the Red Sox projected to be the worst team in the AL East with a sub .500 record; now they project as the second-best team in a tight division and have one of the best rotations in baseball after ranking 20th at this time in 2024. Two teams are about to play their home games in minor league parks! Juan Soto is a Met! Paul Skenes throws a cutter now! Baseball is different today than it was last March, and it’ll be different tomorrow than it is today.
That always makes the positional power rankings something of a strange exercise, because for as precise as we try to make them, we’re always at least a little bit wrong. I’m inclined think that’s a feature, not a bug. The season would be pretty boring if we knew in advance exactly who would win and how. Only the Dodgers and Braves project to win 90 or more games, but with 18 clubs forecast for between 80 and 90 wins, it seems likely that someone will emerge to give the heavy hitters a run for their money. A lot can change over the course of a season, with many teams a prospect breakout or a bad injury away from looking very different come October than they do now. And after an offseason marked by big contracts, big trades, and consternation over the Dodgers, tomorrow is Opening Day. We get to spend the next seven months figuring out who is good and just how wrong we were here. The FanGraphs staff will be there for the whole thing, and I hope you’ll join us. I can’t wait.
Meg is the editor-in-chief of FanGraphs and the co-host of Effectively Wild. Prior to joining FanGraphs, her work appeared at Baseball Prospectus, Lookout Landing, and Just A Bit Outside. You can follow her on Bluesky @megrowler.fangraphs.com.
Pretty impressive that the White Sox lost the most games in modern MLB history, made no meaningful upgrades, and yet their projections are still more optimistic than the Rockies. What the hell are they doing up there in Denver?
Providing a relatively affordable and enjoyable fan experience in a lovely stadium. Surely the baseball part will just work itself out, right?
My prop bet for the season is that the Dodgers win more games than a combination of the wins of the worst two of the Marlins, Rockies and White Sox. Looks like a lock.
Printing this out and putting it up on my locker to spit on each day as I proceed to put up IKF numbers (79 wRC+, 0.0 BsR 1.5 Def runs).
Maybe it’s because their pitching infrastructure seems better than their hitting infrastructure, but it *seems* like White Sox pitching should be better than their positional players. There’s not one pitcher or hitter that I can single out for having a bad projection–it just seems that way!
Maybe I’m being unduly influenced by their Cactus League performance wherein their runs against per game was middle of the pack and their runs scored per game was dead last. A classic blunder.
I’m obv biased as a fan, but I think CHW’s pitching will be respectable. The pitching dev is legitimately good, and they’re changing pitchers’ profiles faster than projection systems are going to trust/believe. I’m borderline delusional about how good Rule V pick Shane Smith is gonna be based on spring looks.
Yeah, it’s hard to say if the 97-98 is going to hold up over 5 innings, but throwing at max effort as a starter seemed to work out ok for Crochet.
Trying to Frankenstein a decent team out of the bottom 5 teams, looks like you could do this:
The Pirates contribute all the pitchers and catchers, plus Oneil Cruz.
The Nats contribute Nathaniel Lowe, Luis Garcia, and James Wood.
The White Sox contribute Miguel Vargas and Luis Robert.
The Marlins contribute Xavier Edwards.
Maybe CJ Abrams becomes a DH?
The Rockies…uh…
Rockies provide the stadium of course!
The pirates pitchers have left the chat
So, if you add up the WAR totals for all positions, the Rockies end up with 21.8 WAR and the White Sox end up with 23.4. Yet, the White Sox are projected to win less games at only 63 wins but the Rockies are projected to win 65. Not only that, but the White Sox strength of schedule is considerably easier as their division consists of the Twins, Tigers, Royals and Guardians (the 12th, 17th, 18th and 23rd best teams based on projected wins) whereas the Rockies division consists of the Dodgers, Diamondbacks, Padres and Giants (1st, 5th, 15th, and 20th).
So they’re projected for 1.6 more WAR and have an easier schedule but they’re going to lose 2 more games. If anything, they should be projected to win 3-5 more games. That’s a 5-7 game swing. Or perhaps the projected standings are based on a different system and this is a moot point but something’s not quite adding up to me.
I don’t have a specific quantitative point to make for or against your argument, but as always be very very wary of adding up WAR across a roster and trying to draw any meaningful conclusions from it.
I did heavily consider that before making the OP as Mr. Syzmoborski often provides that warning. However, that’s when he’s projected WAR totals with playing times independent of their team or current situation. Typically guys that are the 70th best hitter in the system are projected for 400+ ABs. In this scenario, playing time has all been factored in. I’m sure it’s not a perfect system but I would argue that adding up WAR totals should be applicable here.
Those Z Scores cannot be added up like projected WAR totals can. The projected WAR total for each team does not (I believe) appear in this article.
I believe I agree with you on all fronts. If by Z score you are referring to the ZIPs projected WAR totals for each player, then yes, agreed and that’s exactly what I stated above. I also agree that team projected WAR totals are not states in the article. However, since these articles do project WAR totals based on projected playing time, attempting to account for every at bat and inning pitched, I don’t know why adding up WAR totals wouldn’t work, aside from strength of schedule. In this case, a lower WAR total and easier strength of schedule resulting in a higher win total doesn’t make sense to me.
No, Z-Score has nothing to do with ZIPs in this context. Z-Scores are a mathematical function from outside the world of baseball. This is, in no way, a measure of WAR. It is a tally of how many standard deviations (another math concept that is ‘bigger than baseball’) the projected WAR for that position is above/below the the mean average for that same sample including that player. It cannot be converted to raw WAR without more information. These numbers are not WAR, they are not fractions of WAR, nor can you make a meaningful estimation of total projected team WAR based on them.
My Nats are projected to win fewer games than they did last year. Looking above, It really feels like we did not do what we needed to get better this offseason. But, if Wood and Crews take off sooner than expected, the pre injury Trevor Williams of 2024 gives us a full season, and we luck on health everywhere, then maybe all bets are off. There is always hope!
I find the Orioles a fascinating study this year. By WAR, they are one of the top 6 or so teams. But lots of systems and experts have them in ~85 win range. Losing Burnes was obviously a big loss, but this team is better with O’Neill than Santander, and while it might well be tested, I do think they have under-appreciated starting pitching depth. And if Felix is healthy, this bullpen could be great (or not—relievers!). It definitely feels like the narrative about needing an ‘ace’ is missing the forest for the tree.