For the 20th consecutive season, the ZiPS projection system is unleashing a full set of prognostications. For more information on the ZiPS projections, please consult this year’s introduction and MLB’s glossary entry. The team order is selected by lot, and the next team up is the Chicago Cubs.
Batters
Are the Cubs back to their mid-2010s form? That’s a bit of a stretch, but these Cubs showed they have a live pulse, not falling out of playoff contention until the final week of the 2023 season. Cody Bellinger, one of the reasons the offense was so potent (third in the National League in runs scored), turned out to be one of the best pillow-contract signings of all time. Perhaps a little too good, as it was enough for Bellinger to decline his side of a $25 million mutual option for 2024. The Cubs could still sign Bellinger, but even if they do, it’s not a great bet they’ll get the same production as last year. ZiPS is a bit more optimistic than Steamer, but it still projects a returning Bellinger to “give back” some of his contact and a significant chunk of his power.
Still, losing that offense hurts. The Cubs haven’t directly replaced it, but they’ve at least avoided any gaping holes. If the season started today, you’d probably see a lot of Pete Crow-Armstrong in center, and while ZiPS doesn’t project him to match Bellinger’s output, it’s a respectable projection that cushions the blow of a Bellinger loss. Dansby Swanson and Nico Hoerner combine to form one of the best middle infields in baseball — and a surprisingly underrated one. ZiPS is also surprisingly bullish on third base, regardless of whatever combination of Nick Madrigal, Patrick Wisdom, and Michael Busch end up playing there.
First base was a tricky spot, and I’ve gotten the distinct impression that the Cubs aren’t particularly wedded to the idea of just sticking Matt Mervis there for 140 games. I expect he’ll get his chances, but in a more complementary role that shields him from lefties as much as possible. The late trade for Busch lends credence to the notion that they didn’t feel Mervilous (sorry) about their situation at the cold corner, as do the rumors of them exploring first base options like Rhys Hoskins.
ZiPS doesn’t see any offensive prospects roaring to make a big impact this year. The computer likes Kevin Alcántara over the long haul, projecting a 25-WAR career, but it doesn’t see him breaking through and earning much of that in 2024. ZiPS is less into James Triantos, but he’s also young and the long-term error bars in the projections are massive.
Pitchers
This section looks a lot sunnier than it did last week! Shōta Imanaga is my favorite signing of this offseason and I think it’s probably the computer’s favorite as well (ZiPS utilizes DeltaGraphs stats for NPB players). I suspect some teams are going to kick themselves that the Cubs got Imanaga this cheaply — and if my suspicion is wrong, I’m sure someone will remind me in a year or two! ZiPS is projecting a skosh of regression from Justin Steele, but some of that is simply the realities of projecting pitchers; both Imanaga and Steele fall just out of the top 10 in NL starter projections, but with inning counts that are a little behind the league’s elite.
Jameson Taillon and Kyle Hendricks both project as useful, but they’re hardly forecast as significant pluses. I feel like the Cubs must still be planning on an addition to the rotation. I’m not sure that means Jordan Montgomery, who I expect is going to get a pretty healthy contract, but unlike with the position players, there are still some interesting pitchers out there.
The bullpen projects as very middle-of-the-road in 2024. Steamer’s more positive, with the bigger differences being that ZiPS is giving a little more side-eye to Mark Leiter Jr. and Luke Little. Adbert Alzolay’s projection breaks down as a 3.00 ERA as a reliever and a 4.43 ERA as a starter.
I’m considering adding another table next offseason for the pitchers who ZiPS projects with time as both a starter and a reliever. Along these lines, one guy where you might want to look past the projection is Ben Brown. ZiPS thinks that Brown would be a dynamite late reliever, projecting a 3.20 ERA if he were used that way. He’s probably the eighth or ninth starter in the rotation right now, and a more focused relief role might help him shore up his command.
There’s still a lot of winter to go, but ZiPS sees the Cubs as most likely finishing in the 83-88 win range or thereabouts. Chicago is the last NL Central team to go and, probably to nobody’s surprise, ZiPS doesn’t see a big dog in the division. As of right now, it sees the Cardinals as a very slight favorite, the Brewers and Cubs close behind, the Reds a few games back of that, and the Pirates in the mid-to-high-70s in wins, though not so far behind that it would be the craziest thing in the world for them to contend in the division.
Ballpark graphic courtesy Eephus League. Depth charts constructed by way of those listed here. Size of player names is very roughly proportional to Depth Chart playing time.
Batters – Standard
Player
B
Age
PO
PA
AB
R
H
2B
3B
HR
RBI
BB
SO
SB
CS
Dansby Swanson
R
30
SS
633
566
85
144
28
2
22
77
58
153
9
3
Nico Hoerner
R
27
2B
607
551
77
152
25
3
11
66
40
73
29
5
Cody Bellinger
L
28
CF
544
487
80
130
24
2
19
73
44
92
14
4
Ian Happ
B
29
LF
620
538
76
135
32
3
21
79
73
146
10
3
Michael Busch
L
26
3B
564
495
81
123
28
2
22
75
55
148
3
1
Seiya Suzuki
R
29
RF
562
492
74
134
27
4
22
72
61
125
6
6
Christopher Morel
R
25
CF
546
492
77
119
22
5
26
82
45
168
10
4
Nick Madrigal
R
27
3B
351
321
43
90
16
3
2
32
18
31
8
2
Mike Tauchman
L
33
CF
427
366
63
86
19
1
8
45
54
100
8
1
Pete Crow-Armstrong
L
22
CF
531
483
83
116
20
6
14
70
34
151
23
9
Miles Mastrobuoni
L
28
3B
429
383
55
98
17
4
5
40
43
95
15
3
Matt Mervis
L
26
1B
540
483
69
121
26
1
21
76
45
135
1
1
Chase Strumpf
R
26
3B
432
373
51
75
17
1
13
53
47
160
2
1
Patrick Wisdom
R
32
3B
391
345
52
73
15
0
23
60
39
143
5
2
Yan Gomes
R
36
C
347
320
36
80
15
1
9
42
17
70
1
1
Yonathan Perlaza
B
25
LF
520
468
65
112
28
2
15
66
47
135
7
4
Luis Vazquez
R
24
SS
493
448
51
104
18
1
10
54
31
128
6
6
David Bote
R
31
SS
374
332
39
74
17
1
9
41
31
100
3
1
Kevin Alcantara
R
21
CF
472
435
62
101
18
3
12
55
29
143
8
3
Joe Hudson
R
33
C
244
213
24
43
7
0
7
25
26
83
1
1
Jake Slaughter
R
27
3B
433
391
48
87
15
1
12
57
28
132
11
5
Miguel Amaya
R
25
C
260
223
26
49
11
0
7
31
25
71
1
1
Alexander Canario
R
24
RF
416
382
48
84
17
2
17
57
29
140
6
2
BJ Murray Jr.
B
24
3B
507
449
54
100
24
2
9
54
52
138
7
2
Hayden Cantrelle
B
25
2B
366
307
43
57
12
2
4
34
47
104
9
3
Jorge Alfaro
R
31
C
317
297
26
70
14
1
7
39
12
95
4
1
Matt Shaw
R
22
SS
179
169
21
45
7
2
6
26
6
32
8
2
Moises Ballesteros
L
20
C
476
432
51
106
22
0
13
54
39
98
2
1
Eric Hosmer
L
34
1B
402
369
37
98
18
0
9
46
29
75
2
1
Brennen Davis
R
24
RF
372
334
40
72
18
0
8
51
25
112
6
3
Caleb Knight
R
28
C
104
89
10
19
3
0
1
11
9
23
0
1
Brian Serven
R
29
C
257
237
22
47
8
1
6
25
13
78
0
1
Ezequiel Pagan
L
23
RF
437
400
49
99
14
3
6
46
24
82
6
5
Joshua Rivera
R
23
SS
116
108
13
22
4
1
2
11
6
40
1
1
Edwin Ríos
L
30
3B
258
230
29
47
11
0
9
29
21
94
0
1
Darius Hill
L
26
RF
430
399
49
104
19
2
4
42
24
74
3
2
Tyler Payne
R
31
C
203
190
17
44
10
1
2
21
9
54
0
1
Bryce Windham
L
27
C
251
223
26
52
8
1
2
20
22
49
2
1
Bradlee Beesley
R
26
CF
311
281
36
58
13
3
6
34
22
103
13
2
Jake Washer
R
28
C
183
175
17
35
7
0
5
19
7
65
1
1
D.J. Artis
L
27
LF
201
176
27
35
5
1
3
19
18
63
8
2
Owen Caissie
L
21
RF
529
471
59
101
21
1
14
64
50
186
5
6
Felix Stevens
R
24
1B
430
397
47
82
19
1
18
60
27
174
3
2
Liam Spence
R
26
2B
149
132
15
24
4
0
1
10
14
47
1
1
Haydn McGeary
R
24
1B
519
457
48
104
19
1
12
58
51
141
3
2
Fabian Pertuz
R
23
3B
362
339
36
68
12
2
5
32
16
106
8
3
Zach Davis
B
30
CF
186
167
23
33
4
0
0
14
14
59
12
2
Luis Verdugo
R
23
3B
344
319
31
68
17
0
4
30
21
86
2
1
James Triantos
R
21
2B
431
398
50
99
15
3
4
41
25
69
9
3
Pablo Aliendo
R
23
C
377
340
38
70
16
1
8
44
25
123
2
1
Christian Franklin
R
24
CF
370
321
49
66
11
2
8
42
35
116
7
5
Nelson Maldonado
R
27
1B
355
324
35
76
18
1
6
38
25
82
1
1
Casey Opitz
B
25
C
246
219
21
40
6
0
3
19
23
92
1
1
Scott McKeon
R
26
2B
242
221
27
39
9
2
2
20
12
102
7
1
Cole Roederer
L
24
LF
353
318
32
66
11
1
7
36
28
113
5
2
Jordan Nwogu
R
25
LF
380
347
39
67
9
2
10
43
23
148
9
4
Batters – Advanced
Player
PA
BA
OBP
SLG
OPS+
ISO
BABIP
Def
WAR
wOBA
RC
Dansby Swanson
633
.254
.327
.428
104
.173
.312
11
4.1
.327
82
Nico Hoerner
607
.276
.335
.392
98
.116
.302
15
3.9
.318
80
Cody Bellinger
544
.267
.327
.441
108
.175
.295
3
2.7
.328
75
Ian Happ
620
.251
.344
.439
112
.188
.307
4
2.6
.338
84
Michael Busch
564
.248
.333
.446
111
.198
.311
-2
2.5
.337
75
Seiya Suzuki
562
.272
.352
.478
124
.205
.325
-1
2.4
.354
87
Christopher Morel
546
.242
.309
.465
108
.224
.312
-4
2.0
.331
74
Nick Madrigal
351
.280
.333
.368
92
.087
.306
8
1.8
.310
42
Mike Tauchman
427
.235
.337
.358
91
.123
.302
5
1.8
.310
46
Pete Crow-Armstrong
531
.240
.301
.393
88
.153
.321
6
1.7
.302
66
Miles Mastrobuoni
429
.256
.330
.360
89
.104
.329
2
1.4
.307
50
Matt Mervis
540
.251
.322
.439
106
.188
.306
2
1.3
.327
69
Chase Strumpf
432
.201
.306
.357
81
.155
.310
7
1.3
.295
41
Patrick Wisdom
391
.212
.300
.455
103
.243
.279
-3
1.1
.323
49
Yan Gomes
347
.250
.297
.388
85
.138
.295
0
0.8
.296
37
Yonathan Perlaza
520
.239
.312
.404
94
.165
.305
3
0.8
.311
62
Luis Vazquez
493
.232
.292
.344
73
.112
.303
5
0.8
.280
49
David Bote
374
.223
.300
.361
80
.139
.291
0
0.7
.292
37
Kevin Alcantara
472
.232
.284
.370
77
.138
.318
4
0.7
.284
49
Joe Hudson
244
.202
.295
.333
72
.131
.293
3
0.6
.281
22
Jake Slaughter
433
.223
.291
.358
76
.136
.304
3
0.6
.286
45
Miguel Amaya
260
.220
.320
.363
87
.143
.290
-3
0.5
.305
27
Alexander Canario
416
.220
.279
.408
85
.188
.298
5
0.5
.296
46
BJ Murray Jr.
507
.223
.310
.345
79
.122
.301
-2
0.5
.292
50
Hayden Cantrelle
366
.186
.310
.277
63
.091
.266
2
0.1
.273
29
Jorge Alfaro
317
.236
.278
.360
73
.125
.323
-3
0.1
.278
31
Matt Shaw
179
.266
.302
.438
99
.172
.298
-7
0.1
.315
25
Moises Ballesteros
476
.245
.307
.387
88
.141
.290
-14
0.0
.302
52
Eric Hosmer
402
.266
.321
.388
93
.122
.312
-2
0.0
.308
47
Brennen Davis
372
.216
.293
.341
73
.126
.299
5
0.0
.283
36
Caleb Knight
104
.213
.327
.281
69
.067
.277
-1
0.0
.285
9
Brian Serven
257
.198
.250
.316
54
.118
.268
3
-0.1
.249
19
Ezequiel Pagan
437
.248
.303
.343
76
.095
.298
4
-0.1
.285
45
Joshua Rivera
116
.204
.250
.315
53
.111
.303
1
-0.2
.247
9
Edwin Ríos
258
.204
.283
.370
77
.165
.299
-3
-0.2
.286
24
Darius Hill
430
.261
.307
.348
79
.088
.312
1
-0.2
.288
44
Tyler Payne
203
.232
.272
.326
63
.095
.313
-2
-0.3
.263
17
Bryce Windham
251
.233
.302
.305
67
.072
.291
-5
-0.4
.273
21
Bradlee Beesley
311
.206
.283
.338
69
.132
.302
-6
-0.4
.276
30
Jake Washer
183
.200
.235
.326
51
.126
.286
-2
-0.5
.244
14
D.J. Artis
201
.199
.294
.290
61
.091
.291
-2
-0.6
.267
17
Owen Caissie
529
.214
.295
.352
77
.138
.321
-1
-0.6
.287
53
Felix Stevens
430
.207
.265
.395
78
.189
.312
0
-0.6
.285
43
Liam Spence
149
.182
.264
.235
38
.053
.274
-1
-0.7
.231
9
Haydn McGeary
519
.228
.314
.352
82
.125
.303
-4
-0.7
.296
52
Fabian Pertuz
362
.201
.246
.292
47
.091
.276
5
-0.7
.238
27
Zach Davis
186
.198
.270
.222
37
.024
.306
-1
-0.7
.230
13
Luis Verdugo
344
.213
.262
.304
55
.091
.279
1
-0.7
.251
26
James Triantos
431
.249
.299
.332
73
.083
.292
-9
-0.7
.279
43
Pablo Aliendo
377
.206
.275
.329
65
.124
.297
-9
-0.8
.269
32
Christian Franklin
370
.206
.304
.327
73
.121
.294
-9
-0.8
.285
35
Nelson Maldonado
355
.235
.294
.352
76
.117
.297
-2
-0.8
.284
34
Casey Opitz
246
.183
.265
.251
43
.068
.298
-4
-0.9
.238
15
Scott McKeon
242
.176
.231
.262
35
.086
.316
-1
-1.1
.221
15
Cole Roederer
353
.208
.275
.314
61
.107
.298
-1
-1.1
.262
29
Jordan Nwogu
380
.193
.256
.317
56
.124
.302
1
-1.3
.254
32
Batters – Top Near-Age Offensive Comps
Batters – 80th/20th Percentiles
Player
80th BA
80th OBP
80th SLG
80th OPS+
80th WAR
20th BA
20th OBP
20th SLG
20th OPS+
20th WAR
Dansby Swanson
.281
.350
.480
123
5.6
.227
.297
.377
85
2.7
Nico Hoerner
.305
.364
.433
117
5.2
.249
.310
.355
82
2.5
Cody Bellinger
.291
.353
.498
127
4.0
.241
.303
.400
90
1.4
Ian Happ
.275
.368
.500
133
4.1
.227
.320
.390
94
1.1
Michael Busch
.271
.359
.504
130
3.9
.224
.309
.394
92
1.3
Seiya Suzuki
.301
.377
.535
145
3.8
.248
.327
.425
105
1.2
Christopher Morel
.269
.337
.532
132
3.6
.215
.282
.409
88
0.7
Nick Madrigal
.309
.361
.406
111
2.6
.252
.307
.325
75
1.0
Mike Tauchman
.260
.365
.396
107
2.7
.206
.307
.305
70
0.6
Pete Crow-Armstrong
.265
.326
.445
107
2.9
.216
.277
.354
72
0.5
Miles Mastrobuoni
.286
.359
.400
108
2.3
.225
.299
.315
68
0.2
Matt Mervis
.274
.347
.500
127
2.7
.223
.296
.388
86
0.0
Chase Strumpf
.226
.330
.412
101
2.3
.173
.277
.300
58
0.1
Patrick Wisdom
.242
.325
.526
126
2.3
.187
.277
.386
81
0.1
Yan Gomes
.282
.326
.440
103
1.7
.218
.272
.335
64
0.0
Yonathan Perlaza
.265
.338
.465
114
2.1
.212
.283
.357
74
-0.5
Luis Vazquez
.256
.315
.388
92
1.9
.207
.269
.310
60
-0.1
David Bote
.252
.329
.414
99
1.6
.197
.274
.315
61
-0.3
Kevin Alcantara
.258
.310
.417
94
1.7
.207
.260
.330
58
-0.4
Joe Hudson
.232
.327
.392
92
1.2
.174
.264
.281
52
0.0
Jake Slaughter
.249
.315
.406
95
1.7
.198
.261
.304
55
-0.5
Miguel Amaya
.249
.350
.418
110
1.2
.191
.295
.305
66
-0.1
Alexander Canario
.249
.311
.467
107
1.7
.192
.253
.353
63
-0.6
BJ Murray Jr.
.247
.335
.396
98
1.6
.197
.285
.302
62
-0.7
Hayden Cantrelle
.211
.337
.324
82
1.0
.159
.282
.231
44
-0.7
Jorge Alfaro
.264
.308
.410
92
0.9
.210
.253
.319
57
-0.6
Matt Shaw
.296
.330
.500
121
0.6
.240
.275
.382
78
-0.4
Moises Ballesteros
.275
.335
.440
107
1.1
.220
.276
.342
68
-1.2
Eric Hosmer
.294
.346
.429
110
1.0
.232
.291
.339
71
-1.1
Brennen Davis
.242
.314
.377
88
0.7
.191
.267
.295
55
-0.9
Caleb Knight
.250
.356
.329
89
0.2
.181
.290
.239
51
-0.3
Brian Serven
.231
.282
.380
77
0.7
.171
.223
.276
36
-0.7
Ezequiel Pagan
.276
.326
.391
94
0.9
.221
.275
.308
61
-1.1
Joshua Rivera
.231
.281
.366
74
0.1
.177
.221
.267
32
-0.5
Edwin Ríos
.235
.310
.423
97
0.5
.180
.258
.316
58
-0.8
Darius Hill
.292
.333
.387
97
0.8
.229
.274
.311
59
-1.3
Tyler Payne
.264
.304
.368
83
0.2
.206
.247
.286
46
-0.8
Bryce Windham
.272
.336
.352
90
0.3
.202
.273
.265
50
-1.0
Bradlee Beesley
.232
.311
.382
86
0.3
.178
.255
.297
52
-1.1
Jake Washer
.235
.272
.389
77
0.1
.169
.204
.276
30
-1.0
D.J. Artis
.227
.325
.332
79
-0.1
.172
.267
.256
44
-1.0
Owen Caissie
.242
.324
.401
97
0.6
.188
.269
.296
55
-2.0
Felix Stevens
.234
.297
.456
99
0.5
.179
.243
.340
57
-1.7
Liam Spence
.213
.294
.278
58
-0.3
.153
.232
.195
20
-1.0
Haydn McGeary
.253
.341
.400
101
0.5
.202
.289
.310
65
-1.8
Fabian Pertuz
.228
.272
.340
64
0.1
.172
.219
.253
29
-1.5
Zach Davis
.228
.301
.257
56
-0.3
.169
.241
.193
23
-1.1
Luis Verdugo
.239
.288
.351
72
0.0
.184
.232
.262
36
-1.6
James Triantos
.276
.325
.379
90
0.2
.220
.277
.292
57
-1.6
Pablo Aliendo
.238
.308
.375
86
0.2
.182
.252
.294
50
-1.5
Christian Franklin
.232
.333
.372
89
0.1
.180
.279
.285
56
-1.5
Nelson Maldonado
.261
.322
.403
97
0.1
.210
.266
.310
59
-1.5
Casey Opitz
.212
.295
.302
61
-0.4
.151
.234
.208
24
-1.5
Scott McKeon
.204
.256
.310
53
-0.6
.150
.204
.219
17
-1.7
Cole Roederer
.233
.301
.353
77
-0.4
.184
.253
.267
44
-1.9
Jordan Nwogu
.221
.279
.365
73
-0.4
.169
.231
.274
37
-2.2
Batters – Projected Splits
Player
BA vs. L
OBP vs. L
SLG vs. L
BA vs. R
OBP vs. R
SLG vs. R
Dansby Swanson
.259
.337
.437
.252
.323
.424
Nico Hoerner
.280
.338
.386
.273
.333
.395
Cody Bellinger
.257
.314
.434
.272
.333
.445
Ian Happ
.247
.339
.416
.253
.345
.448
Michael Busch
.233
.319
.413
.260
.343
.471
Seiya Suzuki
.282
.374
.497
.267
.340
.467
Christopher Morel
.245
.319
.473
.240
.302
.461
Nick Madrigal
.283
.338
.375
.279
.330
.363
Mike Tauchman
.232
.327
.347
.236
.341
.362
Pete Crow-Armstrong
.234
.300
.377
.243
.302
.401
Miles Mastrobuoni
.244
.314
.346
.264
.341
.370
Matt Mervis
.240
.312
.402
.257
.328
.461
Chase Strumpf
.198
.307
.370
.204
.305
.346
Patrick Wisdom
.215
.306
.469
.209
.296
.447
Yan Gomes
.262
.310
.393
.244
.290
.385
Yonathan Perlaza
.238
.312
.404
.240
.311
.404
Luis Vazquez
.233
.295
.349
.232
.290
.340
David Bote
.227
.306
.361
.221
.297
.362
Kevin Alcantara
.236
.295
.385
.230
.277
.360
Joe Hudson
.200
.305
.333
.203
.288
.333
Jake Slaughter
.232
.301
.367
.215
.283
.350
Miguel Amaya
.232
.333
.379
.211
.311
.352
Alexander Canario
.219
.286
.427
.221
.273
.392
BJ Murray Jr.
.219
.309
.338
.225
.310
.349
Hayden Cantrelle
.180
.313
.287
.189
.307
.270
Jorge Alfaro
.240
.280
.380
.234
.276
.350
Matt Shaw
.271
.311
.429
.263
.295
.444
Moises Ballesteros
.233
.290
.350
.250
.313
.401
Eric Hosmer
.250
.302
.345
.273
.330
.407
Brennen Davis
.221
.302
.359
.212
.286
.328
Caleb Knight
.225
.340
.250
.204
.316
.306
Brian Serven
.198
.250
.333
.199
.250
.305
Ezequiel Pagan
.236
.296
.333
.253
.306
.347
Joshua Rivera
.205
.255
.364
.203
.246
.281
Edwin Ríos
.200
.274
.338
.206
.286
.382
Darius Hill
.250
.297
.324
.267
.312
.363
Tyler Payne
.235
.287
.346
.229
.261
.312
Bryce Windham
.219
.284
.288
.240
.311
.313
Bradlee Beesley
.207
.281
.345
.206
.284
.333
Jake Washer
.207
.244
.317
.194
.227
.333
D.J. Artis
.196
.297
.268
.200
.292
.300
Owen Caissie
.200
.277
.309
.222
.305
.376
Felix Stevens
.204
.271
.395
.208
.261
.396
Liam Spence
.179
.270
.214
.184
.259
.250
Haydn McGeary
.224
.317
.339
.230
.313
.360
Fabian Pertuz
.207
.255
.300
.196
.239
.286
Zach Davis
.205
.275
.233
.191
.267
.213
Luis Verdugo
.219
.275
.321
.209
.253
.291
James Triantos
.253
.307
.352
.246
.294
.318
Pablo Aliendo
.213
.280
.333
.200
.271
.326
Christian Franklin
.210
.319
.339
.203
.295
.320
Nelson Maldonado
.239
.306
.373
.231
.284
.335
Casey Opitz
.179
.273
.244
.184
.261
.255
Scott McKeon
.174
.232
.272
.178
.230
.256
Cole Roederer
.204
.269
.296
.209
.278
.323
Jordan Nwogu
.195
.260
.318
.192
.252
.316
Pitchers – Advanced
Player
IP
K/9
BB/9
HR/9
BB%
K%
BABIP
ERA+
FIP
ERA-
WAR
Shota Imanaga
137.0
9.6
2.6
1.0
7.0%
25.6%
.301
117
3.55
86
2.9
Justin Steele
153.3
8.2
2.6
1.0
7.0%
21.5%
.295
114
3.90
88
2.9
Marcus Stroman
137.3
7.3
2.9
1.0
7.7%
18.9%
.292
105
4.13
95
2.3
Jameson Taillon
136.7
7.8
2.4
1.4
6.4%
20.7%
.289
94
4.43
107
1.5
Kyle Hendricks
132.7
7.0
2.2
1.4
5.7%
18.4%
.296
94
4.52
107
1.4
Jordan Wicks
110.3
7.7
3.2
1.1
8.2%
19.7%
.291
94
4.37
106
1.2
Adbert Alzolay
74.7
9.4
2.4
1.2
6.6%
25.6%
.281
111
3.91
90
1.2
Ben Brown
95.7
9.0
3.9
1.1
9.9%
23.1%
.291
98
4.29
102
1.2
Javier Assad
114.3
7.2
3.5
1.2
9.1%
18.3%
.289
96
4.73
105
1.1
Walker Powell
95.3
6.4
2.1
1.2
5.5%
16.9%
.294
95
4.39
105
1.1
Drew Smyly
121.0
8.6
3.0
1.5
7.8%
22.2%
.299
91
4.63
110
1.0
Thomas Pannone
106.7
7.0
2.4
1.4
6.3%
18.1%
.300
91
4.55
110
0.9
Hayden Wesneski
101.7
8.3
3.3
1.2
8.5%
21.6%
.289
92
4.41
109
0.9
Caleb Kilian
108.7
7.2
3.5
1.0
8.8%
18.1%
.304
88
4.41
114
0.8
Cade Horton
86.0
7.4
2.9
1.3
7.7%
19.5%
.279
92
4.43
109
0.8
Nick Neidert
94.7
6.2
2.9
1.2
7.5%
15.8%
.291
87
4.87
115
0.7
Chris Clarke
80.3
6.4
2.4
1.2
6.0%
16.4%
.302
90
4.55
111
0.6
Mark Leiter Jr.
73.0
9.2
3.6
1.2
9.3%
24.0%
.284
96
4.46
104
0.6
Keegan Thompson
74.0
8.8
4.3
1.2
10.8%
22.3%
.282
95
4.65
106
0.6
Richard Gallardo
92.3
6.0
3.2
1.3
8.1%
15.3%
.293
83
5.01
120
0.5
Porter Hodge
81.7
8.8
5.1
1.1
12.4%
21.6%
.293
85
4.87
117
0.4
Julian Merryweather
56.7
11.9
3.8
1.3
10.0%
31.1%
.303
104
3.82
96
0.3
Michael Fulmer
53.7
10.1
4.0
1.2
10.2%
25.5%
.305
95
4.22
105
0.3
Luke Little
56.7
11.1
4.6
1.1
11.9%
28.8%
.287
100
4.08
100
0.3
Daniel Palencia
57.0
9.3
4.9
1.3
12.0%
22.9%
.289
87
4.90
114
0.2
Brandon Birdsell
92.3
5.8
3.3
1.5
8.4%
14.6%
.280
80
5.32
125
0.2
Roenis Elías
41.0
7.0
3.1
1.3
7.9%
18.0%
.296
90
4.69
111
0.2
Jose Cuas
59.0
9.9
4.0
1.2
10.2%
25.4%
.299
97
4.44
103
0.2
Manuel Espinoza
75.3
6.5
3.0
1.6
7.6%
16.4%
.294
81
5.22
124
0.2
Chris Kachmar
54.3
7.1
3.3
1.3
8.3%
17.8%
.297
83
5.02
120
0.2
Kohl Franklin
85.3
7.5
4.5
1.3
11.1%
18.4%
.295
78
5.25
127
0.2
Riley Thompson
67.0
7.5
5.0
1.3
12.1%
18.2%
.300
79
5.23
127
0.1
Bailey Horn
55.0
9.2
4.9
1.3
12.2%
22.8%
.295
87
4.91
115
0.1
Ben Leeper
39.0
8.5
3.7
1.2
9.6%
22.2%
.287
94
4.49
106
0.1
Codi Heuer
35.3
7.9
3.6
1.0
8.9%
19.7%
.301
96
4.25
105
0.1
Zac Leigh
36.3
10.4
4.2
1.2
10.8%
26.6%
.293
93
4.38
108
0.1
Brandon Hughes
42.0
9.6
4.1
1.3
10.5%
24.9%
.284
92
4.61
109
0.0
Yency Almonte
45.7
10.1
4.1
1.2
10.7%
26.0%
.284
95
4.37
105
0.0
Frankie Scalzo Jr.
66.3
6.6
3.1
1.2
7.9%
16.8%
.289
90
4.72
111
0.0
Cam Sanders
69.7
9.8
6.1
1.3
14.7%
23.8%
.289
82
5.31
122
0.0
Shane Greene
28.0
8.0
4.5
1.3
11.3%
20.2%
.296
80
5.04
124
-0.1
Michael Rucker
56.7
8.1
3.7
1.3
9.3%
20.6%
.299
87
4.67
115
-0.1
Stephen Gonsalves
41.0
10.8
6.6
1.3
15.8%
25.8%
.297
79
5.33
127
-0.1
Richard Bleier
36.0
6.0
1.5
1.5
3.9%
15.5%
.308
87
4.76
115
-0.1
Brad Boxberger
38.7
8.8
4.4
1.4
11.2%
22.5%
.286
85
5.01
118
-0.1
Jake Reindl
10.7
7.6
4.2
1.7
10.9%
19.6%
.267
82
6.26
122
-0.1
Colten Brewer
29.7
8.2
3.9
1.5
9.9%
20.6%
.286
82
5.14
123
-0.1
Blake Whitney
59.3
8.0
3.8
1.4
9.4%
19.9%
.301
88
4.81
114
-0.1
Riley Martin
57.3
10.5
5.8
1.3
14.2%
25.7%
.299
88
4.82
114
-0.2
Cayne Ueckert
37.0
9.0
5.6
1.2
13.6%
21.9%
.297
81
5.12
123
-0.3
Josh Roberson
37.3
8.4
6.5
1.2
15.3%
19.8%
.302
75
5.53
134
-0.3
Joe Nahas
68.3
5.8
4.5
1.3
10.8%
13.9%
.297
77
5.58
130
-0.4
Hunter Bigge
45.3
8.9
6.2
1.2
14.6%
21.1%
.296
80
5.17
125
-0.4
Max Bain
49.0
7.5
6.2
1.5
14.5%
17.4%
.297
68
6.21
146
-0.4
Michael McAvene
22.7
7.1
6.8
1.2
15.6%
16.5%
.294
65
6.03
153
-0.5
Eduarniel Nunez
41.3
8.1
7.0
1.3
15.8%
18.3%
.294
70
6.04
142
-0.6
Ben Hecht
25.3
8.2
8.2
1.4
18.1%
18.1%
.292
61
6.69
163
-0.7
Burl Carraway
18.0
9.0
13.0
1.5
25.7%
17.8%
.286
52
8.09
193
-0.7
Kyle Johnson
35.3
6.1
8.2
1.5
17.9%
13.4%
.301
58
7.33
172
-1.1
Pitchers – Top Near-Age Comps
Pitchers – Splits and Percentiles
Player
BA vs. L
OBP vs. L
SLG vs. L
BA vs. R
OBP vs. R
SLG vs. R
80th WAR
20th WAR
80th ERA
20th ERA
Shota Imanaga
.242
.306
.382
.235
.292
.376
4.0
1.8
2.96
4.35
Justin Steele
.215
.285
.289
.257
.311
.425
3.8
2.0
3.21
4.14
Marcus Stroman
.255
.318
.399
.248
.306
.395
3.0
1.3
3.48
4.56
Jameson Taillon
.257
.324
.439
.248
.287
.426
2.3
0.5
3.92
5.12
Kyle Hendricks
.265
.323
.461
.265
.302
.428
2.3
0.6
3.86
5.02
Jordan Wicks
.276
.336
.417
.240
.309
.405
1.8
0.4
3.97
5.14
Adbert Alzolay
.248
.311
.438
.211
.269
.340
1.8
0.3
3.10
4.75
Ben Brown
.241
.324
.404
.236
.314
.389
1.9
0.5
3.73
4.91
Javier Assad
.248
.336
.406
.260
.324
.423
1.8
0.3
3.85
4.99
Walker Powell
.278
.323
.439
.254
.295
.425
1.7
0.4
3.85
4.87
Drew Smyly
.227
.286
.391
.266
.331
.461
1.8
0.0
3.95
5.40
Thomas Pannone
.260
.305
.435
.271
.322
.447
1.7
0.2
3.98
5.19
Hayden Wesneski
.257
.329
.445
.235
.301
.382
1.6
0.1
3.91
5.14
Caleb Kilian
.265
.338
.408
.260
.331
.409
1.4
0.0
4.25
5.36
Cade Horton
.245
.319
.399
.246
.288
.433
1.4
0.2
3.91
5.11
Nick Neidert
.279
.348
.448
.253
.313
.423
1.3
0.1
4.24
5.28
Chris Clarke
.275
.323
.443
.270
.321
.443
1.2
0.1
4.02
5.20
Mark Leiter Jr.
.219
.303
.380
.246
.333
.408
1.4
-0.2
3.58
5.32
Keegan Thompson
.241
.338
.391
.232
.316
.404
1.2
-0.2
3.72
5.19
Richard Gallardo
.265
.333
.435
.271
.338
.442
0.9
-0.2
4.54
5.65
Porter Hodge
.257
.373
.405
.228
.330
.395
1.0
-0.4
4.34
5.62
Julian Merryweather
.216
.315
.402
.229
.298
.373
1.0
-0.5
2.89
5.46
Michael Fulmer
.235
.328
.373
.245
.325
.425
0.9
-0.4
3.47
5.64
Luke Little
.194
.299
.269
.226
.325
.411
0.9
-0.4
3.31
5.14
Daniel Palencia
.219
.341
.371
.254
.344
.439
0.8
-0.2
4.09
5.43
Brandon Birdsell
.283
.345
.484
.246
.317
.421
0.8
-0.3
4.69
5.67
Roenis Elías
.267
.327
.378
.263
.323
.466
0.6
-0.1
3.91
5.46
Jose Cuas
.255
.357
.480
.225
.308
.341
0.8
-0.4
3.52
5.19
Manuel Espinoza
.276
.342
.448
.268
.326
.490
0.6
-0.4
4.65
5.80
Chris Kachmar
.269
.350
.472
.259
.331
.407
0.6
-0.2
4.34
5.64
Kohl Franklin
.251
.354
.401
.265
.355
.459
0.7
-0.5
4.79
5.91
Riley Thompson
.250
.347
.395
.275
.358
.479
0.6
-0.4
4.68
5.98
Bailey Horn
.231
.329
.400
.250
.349
.426
0.6
-0.4
4.09
5.50
Ben Leeper
.232
.338
.391
.247
.311
.407
0.4
-0.3
3.73
5.29
Codi Heuer
.258
.329
.439
.250
.321
.375
0.3
-0.3
3.82
5.07
Zac Leigh
.235
.333
.441
.225
.317
.352
0.4
-0.3
3.71
5.46
Brandon Hughes
.231
.322
.346
.231
.328
.426
0.5
-0.4
3.75
5.28
Yency Almonte
.250
.352
.408
.206
.297
.371
0.5
-0.4
3.57
5.18
Frankie Scalzo Jr.
.244
.312
.386
.274
.336
.459
0.4
-0.4
4.04
5.12
Cam Sanders
.246
.383
.447
.224
.346
.368
0.6
-0.9
4.31
6.14
Shane Greene
.275
.383
.490
.237
.313
.390
0.2
-0.4
4.43
6.31
Michael Rucker
.257
.333
.426
.254
.328
.426
0.4
-0.5
4.04
5.53
Stephen Gonsalves
.208
.356
.354
.241
.376
.426
0.4
-0.6
4.35
6.41
Richard Bleier
.241
.279
.379
.315
.347
.551
0.2
-0.4
3.97
5.63
Brad Boxberger
.225
.321
.423
.256
.352
.423
0.3
-0.7
3.98
6.29
Jake Reindl
.250
.375
.450
.238
.360
.429
0.0
-0.2
4.28
5.44
Colten Brewer
.250
.339
.462
.250
.329
.438
0.1
-0.4
4.45
6.15
Blake Whitney
.270
.344
.450
.250
.324
.419
0.3
-0.7
4.08
5.66
Riley Martin
.225
.349
.366
.236
.349
.412
0.4
-0.7
3.95
5.53
Cayne Ueckert
.273
.377
.439
.221
.344
.390
0.0
-0.7
4.46
6.03
Josh Roberson
.262
.392
.415
.247
.367
.432
0.0
-0.7
4.83
6.50
Joe Nahas
.288
.371
.477
.264
.355
.438
0.1
-0.9
4.87
6.02
Hunter Bigge
.226
.356
.393
.261
.367
.424
0.0
-0.9
4.52
6.18
Max Bain
.284
.420
.484
.242
.356
.424
0.0
-0.8
5.43
6.92
Michael McAvene
.233
.377
.349
.283
.404
.522
-0.3
-0.7
5.63
7.23
Eduarniel Nunez
.266
.389
.468
.241
.390
.398
-0.3
-1.1
5.30
6.86
Ben Hecht
.245
.422
.449
.260
.397
.440
-0.3
-1.0
5.63
7.96
Burl Carraway
.238
.467
.429
.245
.449
.429
-0.5
-1.1
6.76
10.43
Kyle Johnson
.279
.437
.471
.280
.421
.480
-0.8
-1.5
6.18
8.31
Here are how the ZiPS percentiles worked out in 2023 for pitchers and hitters in in 2023. Percentiles are based on the projected PA or TBF.
Players are listed with their most recent teams wherever possible. This includes players who are unsigned or have retired, players who will miss 2024 due to injury, and players who were released in 2023. So yes, if you see Joe Schmoe, who quit baseball back in August to form a Belgian Death Metal Skiffle Band that only plays songs by Franz Schubert, he’s still listed here intentionally. ZiPS is assuming a league with an ERA of 4.33.
Hitters are ranked by zWAR, which is to say, WAR values as calculated by me, Dan Szymborski, whose surname is spelled with a z. WAR values might differ slightly from those that appear in the full release of ZiPS. Finally, I will advise anyone against — and might karate chop anyone guilty of — merely adding up WAR totals on a depth chart to produce projected team WAR.
As always, incorrect projections are either caused by flaws in the physical reality of the universe or by the skillful sabotage of our friend and former editor. You can, however, still get mad at me on Twitter.