Jake Mailhot’s 2025 Tiered Ottoneu Rankings: Middle Infield

After starting off with the largest position group last week, Chad and I are back with tiered Ottoneu rankings for the second largest position group: the two middle infield positions.
Jake Mailhot’s Ottoneu Position Rankings: MI | OF
Chad Young’s Ottoneu Position Rankings: MI | OF
You can find all of the information about the format and methodology in Chad’s introduction to these rankings. I’ve matched his tiers so that it’s easy to compare across rankings and to provide a common language to discuss these rankings.
Here are few more notes about my process:
- Projected points. I’ve been building my own homebrewed projections for the past decade plus, ever since I started playing Ottoneu, and they form the basis for the rankings below. They’re nothing overly complicated; essentially just a MARCEL-esque projection using three years of historical data filtered through a rough aging curve and adjusted for the current run environment. I also include a collection of three public projection systems (ZiPS, Steamer, and PECOTA) to provide some additional context. That gives each player six data sources that form their projection. Currently, the projections below only include Steamer and the ZiPS25 projections that were posted last year, not the updated 2025 projections that Dan Szymborski is currently rolling out.
- P/G vs P/PA. Points per game played is the gold standard by which you should be evaluating players in Ottoneu. I won’t argue with that. That measure does have some drawbacks, particularly for players who pinch hit, pinch run, or are used as defensive substitutions often. Those limited appearances can skew a player’s P/G lower than what they’re producing when they’re getting three or four plate appearances when they start a game. To provide a little more context for these kinds of players, I’ve also included points per plate appearance below. That measure should give us a better idea of how a player produces no matter how he’s used by his team.
The two middle infield positions are really interesting beasts to tackle. They’re both extremely top heavy with some of the best players in the game populating the top of these ranks. There’s a very steep cliff down from the top to the middle class and then the positions get really deep in the bargain bin section. You’re very likely to find a replacement level MI on the waiver wire if you look hard enough, which is important if you didn’t secure one or two of those top options on your roster. Because these positions are so top heavy, I think I’m willing to invest a little more budget to ensure I get one of the top options which is reflected in my rankings being a little higher than Chad’s pretty much across the board.
Rather than give notes on every player like Chad, I’ll give my general thoughts on each tier below and discuss the outlier players I like more or less than his rankings. Let’s get into it.
Rank | Player | Ottoneu Pos. | Tier | Projected Pts | Projected Pts/G | Projected Pts/PA | Chad’s Tier |
---|---|---|---|---|---|---|---|
1 | Bobby Witt Jr. | SS | $55-$65 | 1087.90 | 6.95 | 1.59 | $45-$54 |
2 | Mookie Betts | 2B/SS/OF | $55-$65 | 978.90 | 7.09 | 1.58 | $45-$54 |
3 | Corey Seager | SS | $45-$54 | 845.50 | 6.72 | 1.53 | $36-$44 |
4 | Gunnar Henderson | SS | $36-$44 | 1006.10 | 6.63 | 1.50 | $36-$44 |
5 | Ketel Marte | 2B | $36-$44 | 913.80 | 6.40 | 1.48 | $28-$35 |
There are exactly six players with a points per game played projection higher than Witt and he’s younger than all of them. If I was starting a brand-new Ottoneu league today, Witt might be my number one target to build around. You’re going to pay a premium to get Betts’s positional flexibility, but it might be worth it to roster one of the best players in baseball and be able to line him up wherever you want. I went back and forth on ranking Betts and Witt number one, but ultimately decided on Witt’s youth as the separator.
I have Marte a tier higher than Chad because he’s clearly the top 2B in baseball now (if you’re playing Betts at shortstop) and all of his contact quality peripherals took a huge jump in 2024. This isn’t a repeat of his 2019 “breakout” with the rabbit ball; this is legit improvement across every significant batted ball metric fueling a dramatic increase in production.
Rank | Player | Ottoneu Pos. | Tier | Projected Pts | Projected Pts/G | Projected Pts/PA | Chad’s Tier |
---|---|---|---|---|---|---|---|
6 | Francisco Lindor | SS | $28-$35 | 944.40 | 6.12 | 1.38 | $28-$35 |
7 | Elly De La Cruz | SS | $28-$35 | 859.30 | 5.91 | 1.35 | $28-$35 |
8 | Trea Turner | SS | $28-$35 | 824.40 | 5.80 | 1.30 | $21-$27 |
9 | Matt McLain | Util | $21-$27 | 735.60 | 6.03 | 1.37 | $15-$20 |
10 | Jose Altuve | 2B | $21-$27 | 838.00 | 5.95 | 1.32 | $21-$27 |
11 | Ozzie Albies | 2B | $21-$27 | 711.00 | 5.52 | 1.25 | $21-$27 |
12 | Carlos Correa | SS | $21-$27 | 651.60 | 5.48 | 1.26 | $15-$20 |
13 | Oneil Cruz | SS/OF | $21-$27 | 756.40 | 5.33 | 1.27 | $21-$27 |
14 | Marcus Semien | 2B | $21-$27 | 829.70 | 5.26 | 1.16 | $21-$27 |
This second group of middle infielders all have their warts, though they’re still clearly a step above the pack. Whether it’s age (Altuve, Semien), injury (McLain, Correa), or inconsistent production (De Le Cruz, Cruz), it’s a lot harder to predict what you’re going to get from this cohort.
Turner is a tricky one to peg. He had the hiccup in 2023 in his first season in Philadelphia and then rebounded a bit in ‘24 thanks to a 20 point increase in his BABIP. Worryingly, his power output fell quite a bit and his contact quality wasn’t as sterling as it’s been in the past. The track record speaks for itself, but he just hasn’t been the same player as before since joining the Phillies.
Rank | Player | Ottoneu Pos. | Tier | Projected Pts | Projected Pts/G | Projected Pts/PA | Chad’s Tier |
---|---|---|---|---|---|---|---|
15 | Willy Adames | SS | $15-$20 | 797.80 | 5.19 | 1.21 | $15-$20 |
16 | Bo Bichette | SS | $15-$20 | 648.40 | 5.19 | 1.18 | $15-$20 |
17 | Jordan Westburg | 2B/3B | $15-$20 | 546.30 | 4.94 | 1.23 | $15-$20 |
18 | Xavier Edwards | SS | $10-$14 | 562.20 | 5.66 | 1.24 | $6-$9 |
19 | Luis Arraez | 1B/2B | $10-$14 | 790.90 | 5.31 | 1.21 | $6-$9 |
20 | Brandon Lowe | 1B/2B | $10-$14 | 558.90 | 5.04 | 1.21 | $10-$14 |
21 | Jonathan India | 2B | $10-$14 | 691.60 | 5.03 | 1.17 | $10-$14 |
22 | CJ Abrams | SS | $10-$14 | 703.50 | 5.02 | 1.17 | $10-$14 |
23 | Spencer Horwitz | 1B/2B | $10-$14 | 522.30 | 5.02 | 1.25 | $6-$9 |
24 | Brendan Donovan | 2B/3B/OF | $10-$14 | 683.20 | 4.97 | 1.18 | $10-$14 |
25 | Xander Bogaerts | 2B/SS | $10-$14 | 686.40 | 4.96 | 1.19 | $6-$9 |
I was really tempted to put Edwards in a higher tier because his projection is so rosy. So much of his success in 2024 was BABIP fueled, but he rode high BABIPs to great success as a minor leaguer. He’s got a great knack for squaring the ball up, even if he doesn’t have much oomph behind his swings, plus he’s got a great eye at the plate. It’s a volatile profile, but I think there’s value here.
Jordan Westburg has a weirdly low projection but his contact quality metrics are all solid. You’d obviously like to see a little higher walk rate from him, but he’s aggressive enough in the right counts to make the approach work. I originally had him in a tier lower, but I think his talent will push him into this higher tier once he gets a full season in the majors.
Rank | Player | Ottoneu Pos. | Tier | Projected Pts | Projected Pts/G | Projected Pts/PA | Chad’s Tier |
---|---|---|---|---|---|---|---|
26 | Gleyber Torres | 2B | $6-$9 | 738.20 | 4.83 | 1.13 | $10-$14 |
27 | Ezequiel Tovar | SS | $6-$9 | 738.50 | 4.80 | 1.12 | $10-$14 |
28 | Nico Hoerner | 2B/SS | $6-$9 | 698.60 | 4.80 | 1.12 | $3-$5 |
29 | Masyn Winn | SS | $6-$9 | 667.90 | 4.75 | 1.09 | $6-$9 |
30 | Luis Rengifo | 2B/3B | $6-$9 | 545.30 | 4.72 | 1.17 | $6-$9 |
31 | Zach Neto | SS | $6-$9 | 644.00 | 4.70 | 1.20 | $6-$9 |
32 | Connor Norby | 2B/3B/OF | $6-$9 | 496.40 | 4.70 | 1.05 | $3-$5 |
33 | Dansby Swanson | SS | $6-$9 | 686.20 | 4.58 | 1.11 | $6-$9 |
34 | Luis Garcia | 2B | $6-$9 | 593.20 | 4.51 | 1.16 | $10-$14 |
35 | Kristian Campbell | 2B/SS/OF | $3-$5 | 347.80 | 4.88 | 1.22 | $6-$9 |
36 | Tyler Fitzgerald | SS/OF | $3-$5 | 531.00 | 4.60 | 1.16 | $3-$5 |
38 | J.P. Crawford | SS | $3-$5 | 585.40 | 4.49 | 1.06 | $0-$1 |
39 | Jonathan Aranda | 1B/2B | $3-$5 | 261.00 | 4.39 | 1.13 | $6-$9 |
40 | Jake Cronenworth | 1B/2B | $3-$5 | 642.10 | 4.37 | 1.05 | $3-$5 |
41 | Bryson Stott | 2B/SS | $3-$5 | 641.80 | 4.34 | 1.10 | $3-$5 |
42 | Jeremy Pena | SS | $3-$5 | 655.00 | 4.31 | 1.05 | $3-$5 |
43 | Matt Shaw | 2B/SS/3B | $3-$5 | 527.80 | 4.29 | 1.12 | $6-$9 |
44 | Jeff McNeil | 2B/OF | $3-$5 | 598.60 | 4.25 | 1.08 | $3-$5 |
45 | Nick Gonzales | 2B/SS | $3-$5 | 417.30 | 4.25 | 1.05 | $3-$5 |
46 | Tommy Edman | SS/OF | $3-$5 | 529.90 | 4.25 | 1.09 | $3-$5 |
47 | Jacob Wilson윌슨 | SS | $3-$5 | 430.30 | 4.23 | 1.12 | $3-$5 |
48 | Josh Smith | SS/3B/OF | $3-$5 | 504.30 | 4.21 | 1.08 | $1-$2 |
49 | Andrés Giménez | 2B | $3-$5 | 628.40 | 4.18 | 1.03 | $6-$9 |
50 | Trevor Story | SS | $3-$5 | 430.80 | 4.13 | 0.97 | $3-$5 |
51 | Anthony Volpe | SS | $3-$5 | 644.10 | 4.10 | 0.98 | $6-$9 |
52 | Joey Ortiz | SS/3B | $3-$5 | 580.60 | 4.04 | 1.10 | $3-$5 |
53 | Christopher Morel | 2B/3B/OF | $3-$5 | 532.80 | 4.03 | 1.01 | $6-$9 |
54 | Colt Keith | 2B | $3-$5 | 563.80 | 4.02 | 1.04 | $6-$9 |
55 | Zack Gelof | 2B | $3-$5 | 513.30 | 3.94 | 0.98 | $1-$2 |
56 | Jackson Holliday | 2B | $3-$5 | 296.40 | 3.47 | 0.95 | $10-$14 |
Finally! Some guys I’m lower on than Chad! Torres gave back all the gains he made with his strikeout rate in 2023 and posted a disappointing final season in the Bronx. Now he’s in Detroit and I really don’t like that park fit. Tovar has the ideal park fit but his hyper aggressive approach is going to produce some really low slumps to go along with his altitude fueled production. I really like the improvements Garcia has made over the last few years, but I just don’t see the ceiling to pay double digits for him right now.
My perspective on prospects is pretty starkly shown in my ranking of Jackson Holliday. Yes, he has a very high ceiling and he only just turned old enough to drink last month, but his debut season in the big leagues was a disaster all around. There were a few encouraging things under the hood, but he really needs to prove it before I’m comfortable investing a significant portion of my budget on rostering him. Could I regret that stance in a few years when he’s established himself as a superstar? Maybe.
Rank | Player | Ottoneu Pos. | Tier | Projected Pts | Projected Pts/G | Projected Pts/PA | Chad’s Tier |
---|---|---|---|---|---|---|---|
57 | Will Wagner | 1B/2B | $1-$2 | 244.70 | 4.88 | 1.15 | $3-$5 |
37 | Ha-Seong Kim 김하성 | SS | $1-$2 | 599.40 | 4.51 | 1.14 | $1-$2 |
58 | Jordan Lawlar | Util | $1-$2 | 248.40 | 4.26 | 1.05 | $3-$5 |
59 | Willi Castro | 2B/SS/3B/OF | $1-$2 | 618.70 | 4.25 | 1.06 | $0-$1 |
60 | Nolan Gorman | 2B | $1-$2 | 426.30 | 4.21 | 1.11 | $3-$5 |
61 | Ronny Mauricio | Util | $1-$2 | 129.20 | 4.20 | 1.02 | $1-$2 |
62 | Nick Yorke | 2B/OF | $1-$2 | 359.40 | 4.19 | 1.06 | $1-$2 |
63 | Jorge Polanco | 2B | $1-$2 | 462.60 | 4.14 | 1.01 | $0-$1 |
64 | Thairo Estrada | 2B | $1-$2 | 456.10 | 4.08 | 1.00 | $3-$5 |
65 | Edouard Julien | 2B | $1-$2 | 387.30 | 4.00 | 1.09 | $0-$1 |
66 | Christian Moore | 2B | $1-$2 | 225.40 | 3.98 | 0.99 | $3-$5 |
67 | Otto Lopez | 2B/SS | $1-$2 | 455.00 | 3.94 | 1.05 | $0-$1 |
68 | Michael Massey | 2B | $1-$2 | 444.80 | 3.94 | 1.05 | $1-$2 |
69 | Juan Brito | 1B/2B/3B | $1-$2 | 263.00 | 3.87 | 0.98 | $0-$1 |
70 | Brice Turang | 2B | $1-$2 | 559.90 | 3.83 | 1.00 | $1-$2 |
71 | Brooks Lee | 2B/SS/3B | $1-$2 | 381.00 | 3.80 | 0.99 | $3-$5 |
72 | Maikel Garcia | 2B/3B | $1-$2 | 542.40 | 3.77 | 0.94 | $0-$1 |
73 | Gavin Lux | 2B | $1-$2 | 475.20 | 3.74 | 1.05 | $3-$5 |
74 | Luisangel Acuña | 2B/SS/OF | $1-$2 | 223.80 | 3.73 | 0.94 | $1-$2 |
75 | Ceddanne Rafaela | 2B/SS/OF | $1-$2 | 490.50 | 3.60 | 0.96 | $0-$1 |
76 | Jose Iglesias | 2B/3B | $0-$1 | 435.40 | 4.26 | 1.10 | $0-$1 |
77 | Brendan Rodgers | 2B | $0-$1 | 493.20 | 4.20 | 1.04 | $0 |
78 | Geraldo Perdomo | SS | $0-$1 | 455.60 | 3.68 | 1.03 | $0-$1 |
79 | Dylan Moore | 1B/2B/SS/3B/OF | $0-$1 | 453.00 | 3.67 | 1.05 | $0 |
80 | Orlando Arcia | SS | $0-$1 | 511.10 | 3.55 | 0.93 | $0-$1 |
81 | Brett Baty | 2B/3B | $0-$1 | 328.70 | 3.41 | 0.91 | $1-$2 |
82 | Trey Sweeney | SS | $0-$1 | 225.70 | 3.40 | 0.91 | $0-$1 |
83 | Vaughn Grissom | 2B | $0-$1 | 109.60 | 3.24 | 0.85 | $1-$2 |
84 | Carson Williams | SS | $0-$1 | 179.60 | 3.70 | 0.92 | $3-$5 |
85 | Sebastian Walcott | SS/3B | $0-$1 | N/A | N/A | N/A | $3-$5 |
86 | Travis Bazzana | 2B | $0-$1 | N/A | N/A | N/A | $3-$5 |
87 | Marcelo Mayer | SS | $0-$1 | N/A | N/A | N/A | $1-$2 |
88 | JJ Wetherholt | SS | $0-$1 | N/A | N/A | N/A | $0-$1 |
89 | Leodalis De Vries | SS | $0-$1 | N/A | N/A | N/A | $0-$1 |
90 | Aidan Miller | SS | $0-$1 | N/A | N/A | N/A | $1-$2 |
91 | Cole Young | 2B/SS | $0-$1 | 217.00 | 3.53 | 0.88 | $0 |
92 | Colt Emerson | SS | $0-$1 | N/A | N/A | N/A | $0-$1 |
93 | Colson Montgomery | SS | $0-$1 | 321.20 | 3.30 | 0.82 | $0-$1 |
94 | Jett Williams | SS | $0-$1 | N/A | N/A | N/A | $1-$2 |
95 | Adael Amador | 2B | $0-$1 | N/A | N/A | N/A | $0-$1 |
96 | Brandon Drury | 1B/2B/3B | $0 | 404.00 | 3.87 | 0.97 | $0-$1 |
97 | Amed Rosario | 2B/SS/3B/OF | $0 | 442.70 | 3.83 | 1.00 | $0 |
98 | Whit Merrifield | 2B/3B/OF | $0 | 432.70 | 3.82 | 0.97 | $0 |
99 | Richie Palacios | 2B/OF | $0 | 299.10 | 3.82 | 1.05 | $0-$1 |
100 | Shay Whitcomb | SS/3B | $0 | 129.60 | 3.81 | 0.95 | $0 |
101 | Angel Martínez | 2B/OF | $0 | 175.10 | 3.73 | 0.90 | $0 |
102 | José Tena | 2B/SS/3B | $0 | 272.20 | 3.72 | 0.96 | $0 |
103 | David Hamilton | 2B/SS | $0 | 317.90 | 3.70 | 1.13 | $0-$1 |
104 | Isiah Kiner-Falefa | 2B/SS/3B | $0 | 468.80 | 3.64 | 0.95 | $0-$1 |
105 | Hyeseong Kim 김혜성 | Util | $0 | N/A | N/A | N/A | $0 |
106 | Ernie Clement | SS/3B | $0 | 394.40 | 3.48 | 1.01 | $0-$1 |
107 | Weston Wilson | SS/3B/OF | $0 | 128.40 | 3.45 | 1.22 | $0 |
108 | Lenyn Sosa | 2B/3B | $0 | 310.30 | 3.39 | 0.89 | $0 |
109 | Ezequiel Duran | 1B/SS/3B/OF | $0 | 316.00 | 3.36 | 0.99 | $0 |
110 | Chris Taylor | 2B/3B/OF | $0 | 314.20 | 3.29 | 0.99 | $0 |
111 | Oswald Peraza | SS | $0 | 176.70 | 3.24 | 0.83 | $0 |
112 | Paul DeJong | SS/3B | $0 | 376.80 | 3.23 | 0.93 | $0 |
113 | Davis Schneider | 2B/OF | $0 | 358.20 | 3.22 | 0.93 | $1-$2 |
114 | Leo Jiménez | 2B/SS | $0 | 178.90 | 3.20 | 0.99 | $0 |
115 | Josh Rojas | 2B/3B | $0 | 387.50 | 3.19 | 0.93 | $0 |
116 | Mauricio Dubón | 1B/2B/3B/OF | $0 | 388.10 | 3.17 | 0.95 | $0 |
117 | Abraham Toro | 2B/3B | $0 | 273.40 | 3.16 | 0.84 | $0 |
118 | Jose Caballero | 2B/SS/3B | $0 | 369.20 | 3.14 | 0.93 | $0 |
119 | Edmundo Sosa | 2B/SS/3B | $0 | 272.30 | 3.13 | 1.08 | $0 |
120 | Miguel Rojas | 2B/SS/3B | $0 | 334.00 | 3.12 | 0.93 | $0 |
121 | Jared Triolo | 2B/SS/3B | $0 | 307.80 | 3.05 | 0.86 | $0 |
122 | Kyle Farmer | 2B/SS/3B | $0 | 325.40 | 3.02 | 0.99 | $0 |
123 | Enrique Hernández | 1B/2B/SS/3B/OF | $0 | 356.70 | 3.00 | 0.88 | $0-$1 |
124 | Javier Báez | SS | $0 | 316.80 | 3.00 | 0.76 | $0 |
125 | Santiago Espinal | 2B/3B | $0 | 312.90 | 3.00 | 0.92 | $0 |
126 | Andy Ibáñez | 1B/2B/3B | $0 | 279.40 | 2.98 | 1.00 | $0 |
127 | Brayan Rocchio | SS | $0 | 389.10 | 2.96 | 0.90 | $0-$1 |
128 | Blaze Alexander | 2B/SS/3B | $0 | 161.40 | 2.93 | 0.90 | $0 |
129 | Jorge Mateo | 2B | $0 | 276.50 | 2.92 | 0.93 | $0 |
130 | Kevin Newman | 1B/2B/SS | $0 | 265.70 | 2.91 | 0.96 | $0 |
131 | Max Schuemann | 2B/SS/3B/OF | $0 | 336.00 | 2.85 | 0.85 | $0 |
132 | Daniel Schneemann | SS/3B/OF | $0 | 182.00 | 2.84 | 0.93 | $0 |
133 | Cavan Biggio | 1B/2B/3B/OF | $0 | 244.00 | 2.82 | 0.95 | $0 |
134 | Zach McKinstry | 2B/SS/3B/OF | $0 | 328.60 | 2.81 | 0.89 | $0 |
135 | Adam Frazier | 2B/3B/OF | $0 | 323.10 | 2.79 | 0.86 | $0 |
136 | Tim Anderson | SS | $0 | 237.90 | 2.76 | 0.66 | $0 |
137 | Oswaldo Cabrera | 1B/2B/3B | $0 | 272.00 | 2.68 | 0.89 | $0-$1 |
138 | Austin Martin | 2B/OF | $0 | 216.80 | 2.67 | 0.94 | $0 |
139 | Tyler Freeman | SS/OF | $0 | 252.50 | 2.66 | 0.86 | $0 |
140 | Taylor Walls | SS | $0 | 246.80 | 2.65 | 0.79 | $0 |
141 | Enmanuel Valdez | 2B | $0 | 171.80 | 2.62 | 0.92 | $0 |
142 | Ildemaro Vargas | 2B/SS/3B/OF | $0 | 219.60 | 2.62 | 0.84 | $0 |
143 | Nick Madrigal | 2B/3B | $0 | 172.40 | 2.62 | 0.86 | $0 |
144 | Marco Luciano | 2B/SS | $0 | 72.30 | 2.59 | 0.74 | $0-$1 |
145 | Romy Gonzalez | 1B/2B/SS/3B | $0 | 178.90 | 2.53 | 1.08 | $0 |
146 | Nicky Lopez | 2B/SS | $0 | 274.70 | 2.52 | 0.73 | $0 |
147 | Curtis Mead | 2B/3B | $0 | 79.50 | 2.36 | 0.69 | $1-$2 |
148 | Casey Schmitt | 2B/SS/3B | $0 | 153.40 | 2.34 | 0.79 | $0 |
149 | Luis Guillorme | 2B/3B | $0 | 163.00 | 2.30 | 0.83 | $0 |
150 | Gabriel Arias | SS/3B | $0 | 187.50 | 2.26 | 0.81 | $0 |
151 | Trey Lipscomb | 2B/3B | $0 | 108.20 | 2.02 | 0.59 | $0 |
152 | Vidal Bruján | 2B/SS/3B/OF | $0 | 158.50 | 1.96 | 0.73 | $0 |
Jake Mailhot is a contributor to FanGraphs. A long-suffering Mariners fan, he also writes about them for Lookout Landing. Follow him on Twitter @jakemailhot.