Archive for Streamers

Ottoneu Starting Pitching Planner: April 20–26

Jayne Kamin-Oncea-Imagn Images

Welcome back to the Ottoneu Starting Pitching Planner. Based on the Roster Resource Probables Grid, I’ve organized every starter slated to start next week into four categories: start, maybe, risky, and sit for Ottoneu points leagues. The first and last category are pretty self-explanatory. Starters who fall into the “maybe” category are guys you could start if you need to keep up with the innings pitched pace in points leagues or need to hit your games started cap in head-to-head leagues; they’re good bets to turn in a decent start, but you shouldn’t automatically insert them into your lineup. If you’ve fallen behind on the innings pitched pace or you’re really starving for starts in a head-to-head matchup, you could turn to a “risky” starter or two.

I’ve also calculated a “Matchup Score” for each series using a straight combination of opponent’s home/away wOBA, opponent wOBA over the last 14 days, and the park factor for the ballpark the teams are playing in. It’s indexed so that 100 is average and anything above that is a favorable matchup and anything below is unfavorable. That matchup rating informs some of the sit/start recommendations I’m making, though the quality of the pitcher definitely takes precedence. To start the season, I’ll be relying on projected team wOBA until there’s sufficient in-season data to start calculating these matchup ratings.

Note: The two-game SDP-ARI series on April 25–26 will be played in Mexico City at Estadio Alfredo Harp Helú. The park factors for this stadium are off the charts — it’s at a higher elevation than Coors Field without the enormous outfield dimensions of that ballpark. Start your Padres and Diamondbacks SPs at your own risk.

Projected Starters: April 20–26
Team Series 1 Matchup Series 2 Matchup Start Maybe Risky Sit
ARI CHW (164) SDP (91) Michael Soroka Merrill Kelly 켈리 (x2), Eduardo Rodriguez Zac Gallen, Ryne Nelson
ATH @SEA (134) @TEX (134) Luis Severino, Jeffrey Springs J.T. Ginn (x2), Aaron Civale Jacob Lopez
ATL @WSN (108) PHI (82) Chris Sale Bryce Elder (x2) Reynaldo López (x2), Grant Holmes Martín Pérez
BAL @KCR (123) BOS (102) Kyle Bradish (x2), Shane Baz, Trevor Rogers Chris Bassitt, Dean Kremer
BOS NYY (73) @BAL (63) Sonny Gray (vDET) Connelly Early (x2), Ranger Suarez, Garrett Crochet, Gray (@BAL) Brayan Bello
CHC PHI (96) @LAD (25) Matthew Boyd (x2), Shota Imanaga, Edward Cabrera Colin Rea (x2), Jameson Taillon
CHW @ARI (117) WSN (99) Sean Burke (x2), Davis Martin, Noah Schultz Anthony Kay, Erick Fedde 페디
CIN @TBR (128) DET (57) Rhett Lowder (@TBR), Chase Burns Lowder (vDET) Brandon Williamson, Andrew Abbott, Brady Singer
CLE HOU (68) @TOR (102) Parker Messick, Gavin Williams, Joey Cantillo Tanner Bibee Slade Cecconi (x2)
COL SDP (51) @NYM (117) Jose Quintana (x2), Chase Dollander (F), Tomoyuki Sugano, Ryan Feltner, Michael Lorenzen
DET MIL (139) @CIN (91) Tarik Skubal, Framber Valdez Jack Flaherty (x2), Casey Mize Keider Montero (x2)
HOU @CLE (107) NYY (85) Spencer Arrighetti, Lance McCullers Jr., Mike Burrows Colton Gordon (x2), Ryan Weiss 와이스
KCR BAL (52) LAA (97) Seth Lugo (x2), Cole Ragans Kris Bubic, Michael Wacha Noah Cameron
LAA TOR (84) @KCR (123) José Soriano, Reid Detmers Jack Kochanowicz (x2), Yusei Kikuchi Brent Suter
LAD @SFG (148) CHC (57) Yoshinobu Yamamoto, Shohei Ohtani, Tyler Glasnow Emmet Sheehan, Roki Sasaki, Justin Wrobleski (vCHC) Wrobleski (@COL)
MIA STL (119) @SFG (148) Sandy Alcantara, Eury Pérez, Max Meyer (@SFG) Meyer (vSTL), Janson Junk Chris Paddack
MIL @DET (96) PIT (97) Jacob Misiorowski Kyle Harrison (x2), Brandon Woodruff Chad Patrick Brandon Sproat
MIN @NYM (117) @TBR (128) Joe Ryan, Taj Bradley Mick Abel (x2) Simeon Woods Richardson, Bailey Ober
NYM MIN (89) COL (106) Nolan McLean (x2), Freddy Peralta Clay Holmes, Kodai Senga, David Peterson
NYY @BOS (83) @HOU (59) Max Fried, Cam Schlittler Will Warren, Ryan Weathers Luis Gil (x2)
PHI @CHC (79) @ATL (44) Cristopher Sánchez Aaron Nola (x2), Jesús Luzardo, Zack Wheeler (?), Andrew Painter Taijuan Walker
PIT @TEX (134) @MIL (129) Braxton Ashcraft, Paul Skenes Carmen Mlodzinski (x2), Bubba Chandler, Mitch Keller
SDP @COL (60) @ARI (117) Randy Vásquez (x2), Michael King Walker Buehler, Matt Waldron, Germán Márquez
SEA ATH (91) @STL (139) Emerson Hancock (x2), Logan Gilbert, George Kirby, Bryan Woo Luis Castillo
SFG LAD (58) MIA (156) Robbie Ray Landen Roupp, Logan Webb, Adrian Houser Tyler Mahle (vMIA) Mahle (vLAD)
STL @MIA (132) SEA (131) Dustin May Michael McGreevy (x2), Kyle Leahy, Andre Pallante, Matthew Liberatore
TBR CIN (146) MIN (96) Steven Matz, Drew Rasmussen Nick Martinez, Shane McClanahan Jesse Scholtens (F)
TEX PIT (102) ATH (70) Jacob deGrom, Nathan Eovaldi, MacKenzie Gore Jack Leiter Kumar Rocker (x2)
TOR @LAA (82) CLE (95) Dylan Cease (x2), Kevin Gausman Trey Yesavage (?) Eric Lauer 라우어, Max Scherzer
WSN ATL (40) @CHW (142) Cade Cavalli, Foster Griffin (@CHW) Jake Irvin (x2), Griffin (vATL), Zack Littell, Miles Mikolas

Ottoneu Starting Pitching Planner: April 13–19

Credit: Raymond Carlin III-Imagn Images

Welcome back to the Ottoneu Starting Pitching Planner. Based on the Roster Resource Probables Grid, I’ve organized every starter slated to start next week into four categories: start, maybe, risky, and sit for Ottoneu points leagues. The first and last category are pretty self-explanatory. Starters who fall into the “maybe” category are guys you could start if you need to keep up with the innings pitched pace in points leagues or need to hit your games started cap in head-to-head leagues; they’re good bets to turn in a decent start, but you shouldn’t automatically insert them into your lineup. If you’ve fallen behind on the innings pitched pace or you’re really starving for starts in a head-to-head matchup, you could turn to a “risky” starter or two.

I’ve also calculated a “Matchup Score” for each series using a straight combination of opponent’s home/away wOBA, opponent wOBA over the last 14 days, and the park factor for the ballpark the teams are playing in. It’s indexed so that 100 is average and anything above that is a favorable matchup and anything below is unfavorable. That matchup rating informs some of the sit/start recommendations I’m making, though the quality of the pitcher definitely takes precedence. To start the season, I’ll be relying on projected team wOBA until there’s sufficient in-season data to start calculating these matchup ratings.

Projected Starters: April 13–19
Team Series 1 Matchup Series 2 Matchup Start Maybe Risky Sit
ARI @BAL (70) TOR (109) Eduardo Rodriguez, Michael Soroka, Zac Gallen Ryne Nelson, Merrill Kelly 켈리 (?), Brandon Pfaadt
ATH TEX (107) CHW (141) Luis Severino (x2), Jeffrey Springs (x2) J.T. Ginn, Jacob Lopez, Aaron Civale
ATL MIA (107) @PHI (70) Chris Sale Grant Holmes (vMIA), Bryce Elder Reynaldo López, Holmes (@PHI) Martín Pérez
BAL ARI (127) @CLE (145) Trevor Rogers (x2), Kyle Bradish (x2), Shane Baz Chris Bassitt, Cade Povich
BOS @MIN (100) DET (83) Garrett Crochet (x2), Sonny Gray Connelly Early, Ranger Suarez Brayan Bello
CHC @PHI (70) NYM (85) Edward Cabrera Shota Imanaga Javier Assad (x2), Colin Rea, Jameson Taillon
CHW TBR (91) @ATH (75) Sean Burke (x2), Davis Martin Anthony Kay, Erick Fedde 페디, Jonathan Cannon
CIN SFG (111) @MIN (100) Chase Burns Rhett Lowder, Andrew Abbott Brady Singer (x2), Brandon Williamson
CLE @STL (147) BAL (73) Gavin Williams (x2), Joey Cantillo (x2) Parker Messick, Tanner Bibee Slade Cecconi
COL @HOU (61) LAD (2) Michael Lorenzen (x2), Chase Dollander, Tomoyuki Sugano, Ryan Feltner, Kyle Freeland
DET KCR (117) @BOS (96) Framber Valdez (x2), Tarik Skubal Jack Flaherty, Casey Mize Keider Montero
HOU COL (93) STL (127) Tatsuya Imai Mike Burrows (x2), Lance McCullers Jr. AJ Blubaugh (?), Spencer Arrighetti (?), Cody Bolton (?)
KCR @DET (101) @NYY (65) Cole Ragans (x2) Seth Lugo, Kris Bubic Michael Wacha, Noah Cameron
LAA @NYY (65) SDP (118) José Soriano Yusei Kikuchi (vSDP), Reid Detmers (vSDP) Kikuchi (@NYY), Detmers (@NYY) Jack Kochanowicz, George Klassen
LAD NYM (61) @COL (57) Yoshinobu Yamamoto, Shohei Ohtani Tyler Glasnow Justin Wrobleski Emmet Sheehan, Roki Sasaki
MIA @ATL (56) MIL (93) Sandy Alcantara Eury Pérez (x2), Janson Junk Max Meyer Chris Paddack
MIL TOR (98) @MIA (107) Jacob Misiorowski Chad Patrick, Kyle Harrison, Brandon Woodruff Brandon Sproat (x2)
MIN BOS (102) CIN (137) Joe Ryan, Taj Bradley Bailey Ober (x2), Mick Abel, Simeon Woods Richardson
NYM @LAD (26) @CHC (103) Kodai Senga, Freddy Peralta Nolan McLean David Peterson (x2), Clay Holmes
NYY LAA (143) KCR (107) Max Fried, Cam Schlittler Will Warren (x2), Ryan Weathers (x2) Luis Gil
PHI CHC (70) ATL (38) Cristopher Sánchez (x2) Jesús Luzardo Aaron Nola, Andrew Painter Taijuan Walker
PIT WSN (108) TBR (106) Paul Skenes (x2), Braxton Ashcraft Mitch Keller (x2), Bubba Chandler Carmen Mlodzinski
SDP SEA (149) @LAA (127) Michael King (x2), Nick Pivetta Randy Vásquez Walker Buehler, Germán Márquez
SEA @SDP (147) TEX (153) George Kirby (x2), Bryan Woo (x2), Emerson Hancock, Luis Castillo, Logan Gilbert
SFG @CIN (107) @WSN (102) Robbie Ray (x2), Landen Roupp, Logan Webb Tyler Mahle Adrian Houser
STL CLE (154) @HOU (61) Matthew Liberatore (vCLE), Michael McGreevy Liberatore (@HOU) Dustin May, Kyle Leahy, Andre Pallante
TBR @CHW (148) @PIT (92) Shane McClanahan, Drew Rasmussen Steven Matz, Ryan Pepiot (?) Nick Martinez, Joe Boyle
TEX @ATH (75) @SEA (164) MacKenzie Gore (x2), Jacob deGrom, Nathan Eovaldi (@SEA) Eovaldi (@ATH) Jack Leiter Kumar Rocker
TOR @MIL (91) @ARI (127) Kevin Gausman (x2), Dylan Cease Eric Lauer 라우어, Max Scherzer Patrick Corbin
WSN @PIT (92) SFG (141) Cade Cavalli (x2) Jake Irvin, Foster Griffin, Zack Littell Miles Mikolas (x2)

FAAB Frenzy and Waivers Wild: Week 3

Every Monday, this column will break down the most popular waiver wire and free agent acquisitions of the weekend.

Fantasy baseball managers know that our game is the ultimate test of grit, grind, tenacity, and patience. Unlike fantasy football, where league titles can be won with minimal in-season activity, fantasy baseball leagues require incessant attention and activity. Particularly when it comes to free agent adds and drops. Real-life baseball managers are constantly adjusting batting orders, players are frequently optioned to and promoted from the Minor Leagues, and injuries occur almost daily. There’s no resting on our laurels. We must always stay vigilant with league news and notes and remain active on the waiver wire if we want to win our leagues.

Every week, I’ll dig into the top adds on the ever-popular Fantrax and in the NFBC Online Championship (OC), a national mid-stakes contest with 240 total leagues of 12 and a six-figure grand prize. Reviewing player adds between the two should provide us with a well-rounded perspective and barometer of the fantasy baseball marketplace.

Week 2 Overview

The hottest hitters of the week were Andy Pages (.583 – 2 HR – 7 RBI), Yordan Alvarez (.471-3-8), Oneil Cruz (.360-4-10), Ben Rice (.421-3-9), CJ Abrams (.333-3-10) and Drake Baldwin (.310-2-10). Luisangel Acuña was the only player with four stolen bases. Four consensus first round hitters have yet to hit a home run (Bobby Witt Jr., Ronald Acuña Jr., Julio Rodríguez and Fernando Tatis Jr.). Second-rounders Cal Raleigh and Nick Kurtz have yet to homer as well. It’s a long season, they will be alright. Of the 30 starting pitchers who made two starts in Week 2, 10% (three) earned two wins – Clay Holmes, Michael Soroka and Davis Martin. I’ve tracked two-start pitcher data the last few seasons, and that 10% rate is on par with average week over the last three seasons, usually hovering between 6% and 18% most weeks. Be wary about chasing wins with below-average starting pitchers this early in the season. As the data shows, locking in two wins without crushing the ratios is hard enough for above-average starters. Be particularly careful with mediocre or below-average 2x SPs whose first start is on a Tuesday. Sometimes weather will push their start back until the following week. Occasionally, those pitchers are pulled out of the rotation or demoted if they had a rough first start. Oftentimes, that is for the better to avoid further fantasy ERA/WHIP damage.

As we did last week, let’s review the top trending acquisitions for Fantrax (waivers) and the NFBC 12-team OC (blind bid FAAB).

Fantrax – Most Popular Player Adds (+/-)
Player Team Position Ros +/-
Liam Hicks MIA C/1B 74% 54%
Lance McCullers Jr. HOU SP 73% 34%
Jose Fernandez ARI SS 40% 33%
Kyle Isbel KC OF 41% 33%
Michael Soroka ARI SP 68% 29%
Bryce Elder ATL SP 59% 28%
Gregory Soto PIT RP 41% 21%
Paul Sewald ARZ RP 61% 21%
Mauricio Dubón ATL 5 pos. 43% 20%
Joey Wiemer WSH OF 62% 20%
Landen Roupp SF SP 64% 19%
Erik Sabrowski CLE RP 46% 19%
Emerson Hancock SEA SP 83% 18%
Taj Bradley MIN SP 79% 16%
Tyler Alexander TEX RP 28% 15%
Garrett Mitchell MIL OF 47% 14%
Randy Vásquez SD SP 77% 14%

Roster % is the current percentage of leagues rostering the player; +/-  is the percentage of leagues the player was added in the previous week

NFBC Online Championship – Top Average Winning Bids
Player Team Position % Added AWB
Jordan Walker STL OF 33% $115
Riley O’Brien STL RP 18% $90
Gregory Soto PIT RP 84% $90
Emerson Hancock SEA SP 18% $87
Garrett Mitchell MIL OF 57% $44
Michael Soroka ARI SP 67% $43
Bryan Baker TB RP 65% $40
Liam Hicks MIA C/1B 88% $39
Max Muncy ATH 2B/3B 60% $35
Randy Vásquez SD SP 40% $34
Lance McCullers Jr. HOU SP 78% $30
Rhett Lowder CIN SP 35% $30
Mark Vientos NYM 3B 50% $30
TJ Rumfield COL 1B 50% $29
Joe Boyle TB SP 42% $29
Seth Lugo KC SP 25% $29
Bryce Elder ATL SP 57% $28
Mitch Keller PIT SP 23% $27
Dylan Beavers BAL OF 35% $26
Mark Leiter Jr. ATH RP 42% $25

% Added is the percentage of leagues that added the player; AWB stands for average winning bid

Jordan Walker has been a disappointment since his rookie season. Despite positive offseason reports about adjustments made at Driveline, Walker struggled in spring training, and was mostly overlooked by NFBC 12-team drafters. I won’t take a victory lap after 10 days, but I would like to mention that Walker is one of my highest rostered hitters this season. Walker was the only player with a triple-digit AWB. Relievers Riley O’Brien and Gregory Soto, and Seattle’s SP5 Emerson Hancock came close. Hancock is now rostered in each of the 240 OCs. O’Brien and Soto are still available in two percent of leagues.

Relievers

It’s the second week in a row where we’re discussing the Cardinals bullpen. Hopefully, it will be the last time. Riley O’Brien had the highest ADP this winter and spring among Cardinals relievers, though a calf injury kept from joining South Korea for the WBC and his ADP began to drop while the ADPs of JoJo Romero and Matt Svanson rose. Veteran Ryne Stanek snagged the first opportunity and closed the game out, though he walked three batters. He then stumbled in his second chance two days later, and O’Brien saved the day. Last week, O’Brien further distanced himself from the pack with three clean innings in three appearances, with two saves. Meanwhile, Matt Svanson has struggled mightily in middle relief. JoJo Romero would like step up for the occasional save opportunity when a southpaw is needed.

Gregory Soto is well known for throwing heat. He saved 30 games for the Tigers in 2022 and has spent the last few seasons as a lefty setup man who walks opposing batters at an above-average clip (over 10%). Last Tuesday, assumed Pirates closer Dennis Santana pitched the eighth inning and Soto handled the ninth, though the Pirates scored two runs in the top of the ninth, so it wasn’t a save opportunity. The Pirates beat the Reds 8-3 again on Wednesday. Santana didn’t make an appearance, but Soto did so again in the ninth; again it wasn’t a save opportunity since the Pirates scored four in the ninth. A similar setup occurred on Friday as Santana pitched a clean eighth and Soto came in to close out the Orioles in the ninth, though he gave up a solo shot to Gunnar Henderson. The Pirates continued their late-game heroics on Saturday. With the game tied 3-3 going into the ninth, Santana stepped in to pitch a clean ninth, then Nick Yorke walked it off with a double to give Santana the win. Soto is the more dynamic of the two, but is less stable because of history with free passes. It’s possible Soto earns more opportunities going forward, though it will likely remain a committee for now. The only thing that can hold Soto running away with the gig is Soto himself.

Paul Sewald was picked up in 21% of Fantrax leagues. Oddly, the Diamondbacks clear-as-day closer is only rostered in 61% of leagues, likely because of the inclusion of 10-teamers, points leagues, and roto leagues where holds are used in addition to saves. Tyler Alexander was scooped up in many leagues, though he is more of a spec-add. He has earned the Rangers only two saves, but is not the clear ninth-inning man. This was originally expected to be a two-man committee with lefty Robert Garcia and righty Chris Martin. Garcia hasn’t been great and Martin has been awful. Martin may move into a setup role, though the Rangers do still need a righty to step up. Perhaps that will be fireballer Cole Winn, who I picked up for $5 in a 15-team league on Sunday. Mark Leiter Jr. might be the first guy dropped from NFBC leagues next week if his struggles continue. He blew the save on Saturday and isn’t even locked into the A’s job. Bryan Baker hasn’t earned a save for the Rays yet, but has been pitching in the highest-leverage spots with Garrett Cleavinger on IL and Griffin Jax struggling.

Starting Pitchers

Hancock, Randy Vásquez and Lance McCullers Jr. were three of the most popular SP acquisitions of the weekend. Hancock followed up his masterful Opening Weekend performance (nine punchouts in six hitless innings) with a solid outing (6.2 IP – 6 H – 1 ER – 0 BB – 5 K) on Saturday, though the Mariners were robbed of three home runs by Angels Jo Adell and lost 1-0. Hancock lines up for a home start (Astros) this week, then a road start against the Padres. He should be quickly snagged in any leagues where he is available, 10-teamers included.

Randy Vásquez had some offseason buzz in deeper formats despite a ridiculously low 15% career walk rate. Folks paying attention may have noticed a slight velocity bump from Vásquez this spring, which he parlayed into two six-inning gems — an 11:4 K:BB with just eight hits and one earned run allowed against the Tigers at home and the Red Sox in Fenway. He has been throwing his four-seam fastball, sinker and slider 1-2 mph faster than last season and boasts an impressive 15.5% swinging-strike rate, albeit in a two-start sample. He now gets the pleasure of facing the Rockies at home, who will be heading over to San Diego from the high elevation of Denver.

The Bryce Elder Experience returns for another tour, likely to yet again tease us before destroying our ratios. Elder had a few good starts last season, but the overall body of work was horrific. His 5.30 ERA ranked sixth-worst among starting pitchers with at least 150 innings pitched. Could this turn into his breakout tour? His pitch mix and velocity remains the same and there’s nothing in his profile that portends massive improvement. He threw six scoreless against the A’s in his first start and seven scoreless with eight punchouts in Arizona on Saturday. It’s enough to lure us into starting him at home against the Guardians this week. Color me dubious, nevertheless.

Hitters

Among the top hitter adds on Fantrax, Mauricio Dubón, Joey Wiemer and Kyle Isbel feel like the ones most likely to find their way back to the free agent pool next week. Dubón has some appeal in deeper formats since he’s on a great offense and offers several positions of eligibility (on Fantrax he’s 1B, 2B, 3B, SS, OF). Wiemer had a hot start but he’s a short-side platoon bat and is a massive batting average drag. Isbel and his bottom-of-the-order crew have been producing the bulk of the runs over the last week, but it’s only a matter of days before the production shifts to the top and the middle of the Royals lineup.

Rookie infielder Jose Fernandez has cooled off since his 2-HR Major League debut last week, though with Carlos Santana banged up, Fernandez should earn more playing time going forward. In his first four career starts, he has already played first base, third base and DH. Fernandez is shortstop eligible in NFBC and would need to play 10 games at first or third to earn that eligibility. The Diamondbacks have some tough matchups this week facing the Mets and the Phillies.

Mark Vientos and TJ Rumfield are the two most intriguing and potentially valuable hitter acquisitions of the week. Vientos is off to a hot start, hitting .476 in 23 plate appearances. He is playing every day since Jorge Polanco is playing through an Achilles issue and is not ready to play the field yet. The Mets will have to get creative when Polanco can play first base again, but Polanco never had before this season and we don’t know if they’ll revert to their preseason plan. Rumfield isn’t hitting the ball hard (84.3 EV, 32% HH), but he is slashing .345/.406/.586 with two dingers and has the hold on the strong-side platoon at first base. He is a stronger stream option with the Rockies expected to face seven righties this week.

Drop of the Week

It’s hard to imagine Roki Sasaki sticking in the Dodgers rotation much longer after his shaky outing against the lowly Nationals on Sunday (6 ER, 3 BB in 5 IP). Sasaki’s four-seam fastball has averaged 97 mph, but it’s generated a 20% whiff rate and a measly 5.6% strikeout rate. Between his quotes and body language, it is clear that he lacks confidence on the mound. Manager Dave Roberts has been extremely patient throughout Sasaki’s rough spring, but a little reset in the minors or a trip to the minors may be in the cards. There are too many terrific alternatives available in 12-team leagues to continue to ride the Sasaki train, at least for now.


Ottoneu Starting Pitching Planner: April 6–12

Credit: Jay Biggerstaff-Imagn Images

Welcome back to the Ottoneu Starting Pitching Planner. Based on the Roster Resource Probables Grid, I’ve organized every starter slated to start next week into four categories: start, maybe, risky, and sit for Ottoneu points leagues. The first and last category are pretty self-explanatory. Starters who fall into the “maybe” category are guys you could start if you need to keep up with the innings pitched pace in points leagues or need to hit your games started cap in head-to-head leagues; they’re good bets to turn in a decent start, but you shouldn’t automatically insert them into your lineup. If you’ve fallen behind on the innings pitched pace or you’re really starving for starts in a head-to-head matchup, you could turn to a “risky” starter or two.

I’ve also calculated a “Matchup Score” for each series using a straight combination of opponent’s home/away wOBA, opponent wOBA over the last 14 days, and the park factor for the ballpark the teams are playing in. It’s indexed so that 100 is average and anything above that is a favorable matchup and anything below is unfavorable. That matchup rating informs some of the sit/start recommendations I’m making, though the quality of the pitcher definitely takes precedence. To start the season, I’ll be relying on projected team wOBA until there’s sufficient in-season data to start calculating these matchup ratings.

April 6–12
Team Series 1 Matchup Series 2 Matchup Start Maybe Risky Sit
ARI @NYM (70) @PHI (50) Zac Gallen (x2), Ryne Nelson Eduardo Rodriguez, Michael Soroka, Brandon Pfaadt
ATH @NYY (61) @NYM (83) Luis Severino, Jeffrey Springs Aaron Civale (x2), Luis Morales, Jacob Lopez
ATL @LAA (132) CLE (113) Chris Sale (x2) Reynaldo López, Grant Holmes Bryce Elder Martín Pérez
BAL @CHW (150) SFG (136) Trevor Rogers, Kyle Bradish Shane Baz, Chris Bassitt Dean Kremer (?)
BOS MIL (126) @STL (137) Garrett Crochet, Connelly Early, Ranger Suarez Sonny Gray Brayan Bello (x2)
CHC @TBR (165) PIT (113) Matthew Boyd, Cade Horton, Edward Cabrera Jameson Taillon (x2), Shota Imanaga
CHW BAL (26) @KCR (91) Shane Smith (x2), Sean Burke (F?) Erick Fedde 페디 (x2), Anthony Kay, Davis Martin
CIN @MIA (159) LAA (79) Andrew Abbott (x2), Chase Burns Brady Singer, Rhett Lowder Brandon Williamson (x2)
CLE KCR (121) @ATL (66) Gavin Williams Tanner Bibee (x2), Joey Cantillo, Parker Messick Slade Cecconi
COL HOU (43) @SDP (108) Kyle Freeland (@SDP) Ryan Feltner (x2), Freeland (vHOU), Michael Lorenzen, Valente Bellozo, Tomoyuki Sugano
DET @MIN (104) MIA (126) Tarik Skubal (x2), Framber Valdez Casey Mize (x2), Jack Flaherty Justin Verlander
HOU @COL (57) @SEA (119) Hunter Brown (@SEA) Tatsuya Imai Brown (@COL), Mike Burrows, Lance McCullers Jr. Cristian Javier
KCR @CLE (163) CHW (118) Noah Cameron (x2), Cole Ragans (x2), Kris Bubic Michael Wacha, Seth Lugo
LAA ATL (35) @CIN (70) José Soriano (x2) Yusei Kikuchi, Reid Detmers Jack Kochanowicz, Ryan Johnson
LAD @TOR (67) TEX (93) Yoshinobu Yamamoto, Shohei Ohtani, Tyler Glasnow Emmet Sheehan Justin Wrobleski, Roki Sasaki
MIA CIN (132) @DET (101) Sandy Alcantara (x2), Eury Pérez Max Meyer Janson Junk (x2), Chris Paddack
MIL @BOS (80) WSN (120) Brandon Woodruff (x2), Jacob Misiorowski Chad Patrick, Kyle Harrison Brandon Sproat
MIN DET (104) @TOR (73) Joe Ryan (x2) Taj Bradley (vDET) Bailey Ober, Mick Abel, Simeon Woods Richardson, Bradley (@TOR)
NYM ARI (106) ATH (83) Freddy Peralta (x2), Nolan McLean David Peterson, Clay Holmes, Kodai Senga
NYY ATH (52) @TBR (133) Max Fried, Cam Schlittler (x2) Will Warren, Ryan Weathers Luis Gil (?)
PHI @SFG (153) ARI (66) Andrew Painter (@SFG), Cristopher Sánchez, Aaron Nola Jesús Luzardo, Painter (vARI) Taijuan Walker
PIT SDP (119) @CHC (90) Paul Skenes Bubba Chandler (x2), Mitch Keller, Braxton Ashcraft Carmen Mlodzinski
SDP @PIT (119) COL (95) Nick Pivetta (x2), Michael King Randy Vásquez Walker Buehler Germán Márquez (x2)
SEA @TEX (129) HOU (103) Logan Gilbert (x2), George Kirby, Bryan Woo, Luis Castillo Emerson Hancock
SFG PHI (85) @BAL (69) Robbie Ray, Logan Webb Tyler Mahle, Landen Roupp Adrian Houser (x2)
STL @WSN (164) BOS (106) Matthew Liberatore Andre Pallante (x2), Michael McGreevy, Dustin May, Kyle Leahy
TBR CHC (96) NYY (95) Drew Rasmussen Shane McClanahan (x2) Joe Boyle, Steven Matz, Nick Martinez
TEX SEA (111) @LAD (49) Jacob deGrom (x2), Nathan Eovaldi, MacKenzie Gore Jack Leiter Kumar Rocker
TOR LAD (35) MIN (93) Kevin Gausman, Dylan Cease Max Scherzer (vMIN) Scherzer (vLAD), Eric Lauer 라우어 Lazaro Estrada (?)
WSN STL (150) @MIL (105) Cade Cavalli Zack Littell (F), Jake Irvin, Foster Griffin Miles Mikolas

Ottoneu Starting Pitching Planner: March 25–April 5

Credit: Cary Edmondson-Imagn Images

Welcome back to the Ottoneu Starting Pitching Planner. Based on the Roster Resource Probables Grid, I’ve organized every starter slated to start next week into four categories: start, maybe, risky, and sit. The first and last category are pretty self-explanatory. Starters who fall into the “maybe” category are guys you could start if you need to keep up with the innings pitched pace in points leagues or need to hit your games started cap in head-to-head leagues; they’re good bets to turn in a decent start, but you shouldn’t automatically insert them into your lineup. If you’ve fallen behind on the innings pitched pace or you’re really starving for starts in a head-to-head matchup, you could turn to a “risky” starter or two.

I’ve also calculated a “Matchup Score” for each series using a straight combination of opponent’s home/away wOBA, opponent wOBA over the last 14 days, and the park factor for the ballpark the teams are playing in. It’s indexed so that 100 is average and anything above that is a favorable matchup and anything below is unfavorable. That matchup rating informs some of the sit/start recommendations I’m making, though the quality of the pitcher definitely takes precedence. To start the season, I’ll be relying on projected team wOBA until there’s sufficient in-season data to start calculating these matchup ratings.

First, a reminder that the first week of Ottoneu head-to-head leagues ends on April 5, which means you have 12 days to hit your games started cap. That means you’ve got a very long window to figure out which starters to use over the next week and half, and you may want to sit some of the riskier pitchers on your roster because you’ll have so many options on the table. The table below has my sit/start recommendations for the weekend and then there’s a second table below for the first normal week.

March 25–29
Team Series 1 Matchup Start Maybe Risky Sit
ARI @LAD (25) Zac Gallen Ryne Nelson, Eduardo Rodriguez
ATH @TOR (64) Luis Severino, Jeffrey Springs, Luis Morales
ATL KCR (104) Chris Sale Reynaldo López, Grant Holmes
BAL MIN (112) Trevor Rogers, Kyle Bradish Shane Baz
BOS @CIN (93) Garrett Crochet Sonny Gray, Connelly Early
CHC WSN (174) Matthew Boyd, Cade Horton Shota Imanaga
CHW @MIL (128) Shane Smith Sean Burke Anthony Kay
CIN BOS (53) Andrew Abbott Brady Singer Rhett Lowder
CLE @SEA (128) Gavin Williams Tanner Bibee, Joey Cantillo Slade Cecconi
COL @MIA (151) Kyle Freeland, Michael Lorenzen, Jose Quintana
DET @SDP (122) Tarik Skubal, Framber Valdez Jack Flaherty
HOU LAA (145) Hunter Brown Mike Burrows, Cristian Javier, Tatsuya Imai
KCR @ATL (51) Cole Ragans Michael Wacha, Seth Lugo
LAA @HOU (75) José Soriano, Yusei Kikuchi, Reid Detmers Jack Kochanowicz
LAD ARI (77) Yoshinobu Yamamoto Emmet Sheehan, Tyler Glasnow
MIA COL (86) Sandy Alcantara, Eury Pérez Max Meyer
MIL CHW (154) Jacob Misiorowski Chad Patrick Brandon Sproat
MIN @BAL (47) Joe Ryan Taj Bradley, Bailey Ober
NYM PIT (128) Freddy Peralta, Nolan McLean David Peterson
NYY @SFG (146) Max Fried, Cam Schlittler, Will Warren
PHI TEX (104) Cristopher Sánchez, Jesús Luzardo Aaron Nola
PIT @NYM (67) Paul Skenes Mitch Keller Carmen Mlodzinski
SDP DET (113) Nick Pivetta Michael King Randy Vásquez
SEA CLE (167) Logan Gilbert, George Kirby, Bryan Woo Emerson Hancock
SFG NYY (85) Logan Webb Robbie Ray Tyler Mahle
STL TBR (155) Matthew Liberatore Michael McGreevy, Dustin May
TBR @STL (168) Drew Rasmussen Joe Boyle, Steven Matz
TEX @PHI (38) Nathan Eovaldi, Jacob deGrom MacKenzie Gore
TOR ATH (51) Kevin Gausman, Dylan Cease Eric Lauer 라우어
WSN @CHC (83) Cade Cavalli Miles Mikolas, Jake Irvin

March 30–April 5
Team Series 2 Matchup Series 3 Matchup Start Maybe Risky Sit
ARI DET (111) ATL (59) Zac Gallen Michael Soroka (x2), Brandon Pfaadt (x2), Ryne Nelson, Eduardo Rodriguez
ATH @ATL (51) HOU (53) Jacob Lopez (x2), Aaron Civale Luis Severino, Jeffrey Springs, Luis Morales
ATL ATH (51) @ARI (94) Chris Sale Reynaldo López, Grant Holmes Bryce Elder (x2), José Suarez (x2)
BAL TEX (128) @PIT (112) Trevor Rogers, Kyle Bradish Chris Bassitt (x2), Shane Baz Zach Eflin
BOS @HOU (74) SDP (101) Garrett Crochet Ranger Suarez (x2), Sonny Gray, Connelly Early Brayan Bello
CHC LAA (155) @CLE (153) Edward Cabrera (x2), Matthew Boyd, Cade Horton Jameson Taillon, Shota Imanaga
CHW @MIA (150) TOR (51) Shane Smith Davis Martin (x2), Erick Fedde 페디, Sean Burke, Anthony Kay
CIN PIT (79) @TEX (122) Chase Burns (x2), Andrew Abbott Brandon Williamson, Brady Singer, Rhett Lowder
CLE @LAD (25) CHC (80) Gavin Williams, Joey Cantillo Parker Messick, Tanner Bibee, Slade Cecconi
COL @TOR (63) PHI (24) Tomoyuki Sugano (x2), Ryan Feltner, Kyle Freeland, Michael Lorenzen, Jose Quintana
DET @ARI (94) STL (153) Tarik Skubal, Framber Valdez, Jack Flaherty Verlander (vSTL) Justin Verlander (@ARI), Casey Mize
HOU BOS (87) @ATH (31) Hunter Brown Mike Burrows, Cristian Javier, Tatsuya Imai Lance McCullers Jr. (x2)
KCR MIN (100) MIL (126) Cole Ragans Kris Bubic (x2), Noah Cameron Michael Wacha, Seth Lugo
LAA @CHC (82) SEA (85) José Soriano, Yusei Kikuchi, Reid Detmers Ryan Johnson (x2), Jack Kochanowicz
LAD CLE (132) @WSN (154) Shohei Ohtani, Yoshinobu Yamamoto, Emmet Sheehan, Tyler Glasnow Roki Sasaki (x2)
MIA CHW (154) @NYY (57) Sandy Alcantara Eury Pérez Chris Paddack (vCHW), Janson Junk Max Meyer, Paddack (@NYY)
MIL TBR (130) @KCR (100) Brandon Woodruff, Jacob Misiorowski Chad Patrick Kyle Harrison (x2), Brandon Sproat
MIN @KCR (100) TBR (128) Joe Ryan Simeon Woods Richardson (x2), Mick Abel, Taj Bradley, Bailey Ober
NYM @STL (166) @SFG (144) Clay Holmes (x2), Freddy Peralta, David Peterson, Nolan McLean Kodai Senga (x2)
NYY @SEA (126) MIA (147) Max Fried (x2), Will Warren Cam Schlittler Ryan Weathers (x2)
PHI WSN (141) @COL (54) Cristopher Sánchez Taijuan Walker (vWSN), Andrew Painter, Aaron Nola, Jesús Luzardo
PIT @CIN (91) BAL (39) Paul Skenes Braxton Ashcraft (x2), Bubba Chandler, Mitch Keller Carmen Mlodzinski
SDP SFG (129) @BOS (75) Nick Pivetta Michael King Randy Vásquez Germán Márquez (x2), Walker Buehler
SEA NYY (83) @LAA (124) Logan Gilbert, George Kirby, Bryan Woo, Castillo (@LAA) Luis Castillo (vNYY) Emerson Hancock
SFG @SDP (121) NYM (75) Logan Webb Landen Roupp (x2), Robbie Ray Adrian Houser (x2), Tyler Mahle
STL NYM (71) @DET (110) Matthew Liberatore Kyle Leahy (x2), Andre Pallante, Michael McGreevy, Dustin May
TBR @MIL (126) @MIN (98) Drew Rasmussen Nick Martinez (x2), Shane McClanahan, Joe Boyle, Steven Matz
TEX @BAL (46) CIN (126) Nathan Eovaldi, Jacob deGrom MacKenzie Gore, Leiter (vCIN) Jack Leiter (@BAL), Kumar Rocker
TOR COL (85) @CHW (141) Cody Ponce 폰세 (x2), Kevin Gausman, Dylan Cease Max Scherzer Eric Lauer
WSN @PHI (38) LAD (29) Zack Littell (x2), Foster Griffin, Cade Cavalli, Miles Mikolas, Jake Irvin

The Balance Between Called Strikes and Chase

Sep 15, 2025; Tampa, Florida, USA; Toronto Blue Jays pitcher Brendon Little (54) throws a pitch against the Tampa Bay Rays in the sixth inning at George M. Steinbrenner Field.
Credit: Nathan Ray Seebeck-Imagn Images

In early June, Alex Chamberlain graced us with a FanGraphs article about Brendon Little and a new concept called, “Implied Miss Distance”. Chamberlain, along with Baseball Prospectus writer/researcher Stephen Sutton-Brown, have done some great work utilizing Statcast bat tracking data, giving readers a new perspective on something like a swing and miss. But, back in early July, nearly a month after Chamberlain wrote about Little’s amazing knuckle-curve and it’s ability to make hitters whiff so hard that the outfield flag flutters, hitters stopped chasing the pitch. They were tired of looking silly and would no longer budge, allowing us to imply nothing:

A Rolling Line Chart of Brendon Little's O-Swing% 2025

If it wasn’t for Chamberlain’s article, I wouldn’t have known about Little or his knuckle-curve. But that’s why FanGraphs is the best, and when I recently watched the Blue Jays and their relievers’ deteriorating August WHIP, I heard the broadcasters mention Little’s falling O-Swing, or chase, rate.

If you only focused on Little’s knuckle-curve and the damage hitters have done to it in each month of the season, as you see in the table below, you wouldn’t think twice about the pitch’s performance:

Little’s Knuckle Curve by Month 2025
Month KC Total Pitches KC% wOBA
Mar/Apr 96 218 44.0% .194
May 111 229 48.5% .176
Jun 119 243 49.0% .212
Jul 103 193 53.4% .192
Aug 76 193 39.4% .146
Sep/Oct 51 119 42.9% .257

Among pitchers who have thrown at least 100 knuckle curves in any of the last five seasons, Little’s 2025 wOBA of .188 is a fringe top 20 (25th) out of nearly 200 pitchers. Last season, Little got even closer to the top 20 mark (23rd) with a .186 wOBA on the pitch. But the broadcast never said anything about Little getting hit; they were focused on the lack of chase and, therefore, an increased BB%:

A rolling chart of Brendon Little's Chase%/BB% 2025

The chart above includes all of Little’s pitches. By isolating the O-Swing% to only his knuckle-curve, we can see that this overall drop in hitters’ chasing after Little’s offerings wasn’t solely because of them spitting at that specific pitch:

A rolling chart of Brendon Little's Knuckle-Curve Chase% 2025

Thanks to the incredible addition of the Pitch-Type Split Leaderboard by the FanGraphs web team, we can now view the averages of individual pitches with ease. In 2025, among all pitchers who have thrown at least 10 knuckle curves, the league average O-Swing% currently sits at 35.5%. Little’s mark on the season is 36.5%. Rolling averages are different from season averages, and when Little’s chase rate rolling average dipped, so did the chase rolling average of his two other pitches:

A rolling chart of Brendon Little's Individual Pitch Chase% 2025

Chart 4 – Rolling KC, FC, SI Chase% Comps

The straight red line indicates times when Little stopped throwing his cutter. It’s interesting to see how the line stopped running horizontally around the same time his knuckle-curve was at its worst. Unfortunately, it didn’t fill the chased pitch gap, and that 40-50 game mark fell around early to mid-July when Little’s WHIP went upwards:

Brendon Little’s Monthly Splits (All Pitches)
Month KC% WHIP K-BB%
Mar/Apr 44.3 1.31 26.8
May 48.5 0.98 17.3
Jun 49.0 1.42 15.7
Jul 53.4 1.60 21.3
Aug 39.4 1.65 0.0
Sep/Oct 42.9 1.65 10.0

Hitters weren’t getting boosted wOBA’s from Little’s lack of chase, but the 1.65 WHIP  (5.97 eqiuv. ERA) meant they were hitting his other pitches and walking more. I’ve been rambling on about Little for more than a few paragraphs now, and you’re probably waiting for the point. The point? The point is, pitchers need to adjust when a pitch that used to be chased no longer gets chased. They know that. We know that. Yet, it’s difficult to keep track of on the fan side of things. Pitchers will go about adjusting in all sorts of ways.

In Little’s case, it was really just a blip. If you go back up to the graph showing individual pitch chase rates, you may notice that Little’s usage of the cutter, even if it wasn’t chased, allowed the chase rate on his knuckle-curve to jump back up. Hitters did a great job of laying off Little’s knuckle-curve from around games 30 to 70, but excellence is when a pitcher can adjust in the moment to hitters. That’s robotic. So, let’s!…get!…robotic! For the remainder of this article, I’ll present a detection system that can run daily to capture when a pitcher’s most used fastball and most used secondary are in good or bad rhythm using individual pitch plate discipline metrics. Here’s an example from Little’s 40 to 80 game span:

Categorizing Brendon Little’s Plate Discipline Balance
Game Number Rolling_CStr%_SI Rolling_Chase%_KC Performance
41-50 26.8 23.4 Ok (Adjusting)
51-60 21.1 25.8 Bad
61-73 16.9 21.8 Bad
SI Median CStr% = 24.5%
KC Median Chase% = 26.8%

The table is just a summary of what you see in Chart 4 above, but it’s designed to be placed in an automated system. If chase is up on one pitch and called strike is up on another, that’s good. If both pitches are falling to generate either chase or called strikes, well, that’s bad. Categorizing the balance between his sinker’s called strike rate and his knuckle-curve’s chase rate is as simple as creating rule-based logic:

conditions = [
(final_df['Rolling_Chase%']-3 > final_df['smart_median_chase']) & (final_df['Rolling_CStr%']-3 > final_df['smart_median_cstr']),
(final_df['Rolling_Chase%'] <= final_df['smart_median_chase']) & (final_df['Rolling_CStr%'] >= final_df['smart_median_cstr']),
(final_df['Rolling_Chase%']+3 < final_df['smart_median_chase']) & (final_df['Rolling_CStr%']+3 < final_df['smart_median_cstr']), (final_df['Rolling_Chase%'] >= final_df['smart_median_chase']) & (final_df['Rolling_CStr%'] <= final_df['smart_median_cstr'])
]
# Define the corresponding categories
categories = [
'Excellent',
'Ok (Adjusting)',
'Bad',
'Ok (Adjusting)'
]

Using the pitcher’s median values allows the categorization to detect improvements by each individual. I’m using “smart” medians to call the league median if a player has a zero value. That happens when they haven’t generated any chase or called strikes. If we use Brendon Little’s game logs to isolate his performance during those game periods from the table above, we see some pattern in a very small sample:

Brendon Little’s Overall Performance in Small Samples
Game Number WHIP K-BB%
41-50 0.91 32.3%
51-60 2.10 0.0%
61-73 1.33 15.4%

Little was at his best when he was in decent balance. This is the type of tracking that could be useful when streaming pitchers or looking for hot relievers. To test this out on a grander scale, I built a dataset that includes data from the last two months. This keeps the sample limited to more recent performance. Furthermore, I limited the data to only pitchers with more than 60 total pitches thrown in that time. Then, I took each pitcher’s most utilized fastball by pitch percentage and used it to calculate their called strike rate. I did the same with each pitcher’s most utilized offspeed, or non-fastball, pitch and used it to calculate their chase rate. I then calculated each pitch’s 15-game rolling rate, called strike for fastballs and chase for non-fastballs, and labelled their performance balance. Finally, I counted the number of days in which a player has been either good (balanced) or bad (unbalanced) and found the current status of players in both groups:

Players With Excellent Balance
Player Rolling CStr% Rolling Chase% Days of Excellence
Emilio Pagán 14.4 31.7 5
Dennis Santana 32.1 24.3 2
Tanner Scott 14.0 22.3 2
Jared Koenig 32.2 22.0 3
Yerry De los Santos 21.7 20.0 2

Players With Poor Balance
Player Rolling_CStr% Rolling_Chase% Days of Poor Performance
David Robertson 7.7 12.9 -16
Carlos Hernández 0.0 4.0 -2
Trey Yesavage 23.1 16.2 -1
Joe Rock 31.8 18.5 -1
Andrew Hoffmann 12.8 0.0 -2

The results focus on a pitcher’s most recent stretch. For example, Emilio Pagán has had one of his best K-BB% (22.4%) marks of his career this season, and in his last five games, it’s been even better (26.3%). He’s had recent success thanks to his four-seam and splitter working in unison.

Is there more to do? Always. I’ve only compared fastball called strike rates with offspeed chase rates, but all of these plate discipline metrics could be compared for balance. For example, it may be better to have a balanced swinging strike rate and chase rate. But, fundamental to this analysis is the assumption that it’s hard to get anywhere without a fastball and offspeed pitch that work well together. Does it mean anything? Is the balance even predictive of future success? Maybe, maybe not. What it certainly can do, as I believe I’ve exemplified here, is explain a pitcher’s success or lack thereof. If you are interested in doing this analysis on your own without spending hours calling and pinging pybaseball’s API, you can view pitch-specific plate discipline metrics on our new and totally awesome Pitch-Type Splits Leaderboards. Stay balanced, stay cool.


Ottoneu Drip: Last-Minute Pitchers to Add: September 23, 2025

Credit: Charles LeClaire-Imagn Images

The search for pitching help is never ending. Between injuries and ineffectiveness, fantasy players are always on the lookout for pitchers who are performing well who can provide some reinforcements. The final week of the season is upon us. Hitting your innings pitched cap in Ottoneu leagues is one of the most important ways you can maximize your roster to its fullest extent. And because it’s a soft cap, you can stack as many starters as you can on the day you’ll hit the cap, and you’ll receive all the points from those pitchers.

If you’re planning ahead, you might want to think about adding one or two of the following under-rostered pitchers for their start during the final weekend of the season if you can line everything up correctly. Here are 12 starters who are rostered in less than 60% of all Ottoneu leagues who have a good matchup this weekend.

Last-Minute Starters, Last 14 Days
Player Team IP FIP K-BB% Pts/IP Roster% Weekend Opponent
Joey Wentz ATL 9 1.48 22.0% 5.60 10.1% PIT
Kyle Harrison BOS 9 2.59 13.5% 5.93 54.7% DET
Jameson Taillon CHC 17.1 2.80 7.5% 5.77 38.8% STL
Colin Rea CHC 12.1 0.55 34.0% 7.68 26.0% STL
Slade Cecconi CLE 20.2 3.05 14.1% 6.76 48.0% TEX
Kyle Freeland COL 17.1 2.34 12.8% 4.87 5.5% @SFG
AJ Blubaugh HOU 10.1 1.40 27.8% 8.41 8.9% @LAA
Chad Patrick MIL 10.2 2.77 23.3% 5.57 48.9% CIN
Walker Buehler PHI 8.2 3.15 8.1% 5.18 22.6% MIN
Mike Burrows PIT 12.1 1.20 26.0% 6.80 30.6% @ATL
Kai-Wei Teng SFG 7 4.86 25.8% 4.67 6.1% COL
Trevor McDonald SFG 8 2.90 5.9% 4.73 0.0% COL

Atlanta might have one of the easiest matchups this weekend as they host the punchless Pirates. Joey Wentz has been serviceable while eating up innings on Atlanta’s injury depleted pitching staff. He isn’t pitching deep into games but over his last two starts, he’s run a 4.0 strikeout-to-walk ratio with 12 Ks in nine innings.

Now that Payton Tolle has been shifted to the bullpen for the remainder of the season, Kyle Harrison has taken his place in the starting rotation. He looked excellent in his first start with Boston on Saturday, pitching six innings of one-run ball against the Rays while striking out five. His scheduled start this weekend comes against a struggling and desperate Tigers ballclub.

The Cardinals have posted a .289 wOBA over the last 14 days, 22nd in baseball. They’re pretty punchless with both Willson Contreras and Masyn Winn sidelined for the rest of the season. Colin Rea and Jameson Taillon have had their ups and downs this year but the matchup looks good enough to think about streaming them for their final starts of the season.

Like the rest of the Guardians pitching staff, Slade Cecconi has been excellent over the last few weeks. He’s allowed just two runs in 20.2 innings across his previous three starts with a 3.0 strikeout-to-walk ratio. Cleveland will be fighting for a chance to sneak into the playoffs this weekend and the Rangers offense hasn’t been very good in September.

The Giants-Rockies series in San Francisco this weekend looks like it’s ripe for plenty of pitching points. Neither team has been very good offensively and the ballpark is a haven for pitchers. For Colorado, Kyle Freeland is probably the one starter worth looking at unless you want to risk starting Germán Márquez. For San Francisco, the options are two rookies in Kai-Wei Teng and Trevor McDonald. Neither has an impressive track record, but the matchup might be too juicy to pass up.

AJ Blubaugh has bounced between the rotation and the bullpen for the Astros down the stretch but he’ll likely get an opportunity to start against the Angels this weekend. He hasn’t allowed a run since a four inning bulk relief appearance back on August 23, a stretch of 17 scoreless innings. During this scoreless streak, he’s posted a very impressive 7.5 strikeout-to-walk ratio and has allowed just five hits.

Chad Patrick was a critical piece of the Brewers starting rotation earlier this year while they dealt with numerous injuries on their pitching staff. Once the team got healthy, Patrick was relegated to the minor leagues, but the injury bug has struck again and he’s now back with the team providing solid innings out of the rotation and the bullpen. Since being recalled in mid-August, he’s provided a 3.72 FIP in 21 innings while posting a very good 3.4 strikeout-to-walk ratio.

Walker Buehler’s season has been a disaster but he’s at least looked serviceable with the Phillies since joining the club in September. You’ve really got to trust that Philadelphia identified and fixed whatever issues were plaguing him in Boston. At least the matchup against the Twins doesn’t look too bad.

Mike Burrows has been a frequent recommendation in this column this year. After some struggles in July and early August, he’s been absolutely fantastic down the stretch. Across his last six outings — two four starts and two bulk relief outings — he’s posted a 1.60 FIP and allowed five runs in 21.1 innings. His strikeout-to-walk ratio during this stretch has been an absolutely fantastic 6.0. He’s been piggybacked with another one of Pittsburgh’s young pitchers in each of his last three starts so he’s not getting very deep into games, but the high quality of his innings means he’s racking up the points in September.


Ottoneu Starting Pitching Planner: September 22–28

Credit: Geoff Burke-Imagn Images

Welcome to the final Ottoneu Starting Pitching Planner of the season. Based on the Roster Resource Probables Grid, I’ve organized every starter slated to start next week into four categories: start, maybe, risky, and sit. The first and last category are pretty self-explanatory. Starters who fall into the “maybe” category are guys you could start if you need to keep up with the innings pitched pace in points leagues or need to hit your games started cap in head-to-head leagues; they’re good bets to turn in a decent start, but you shouldn’t automatically insert them into your lineup. If you’ve fallen behind on the innings pitched pace or you’re really starving for starts in a head-to-head matchup, you could turn to a “risky” starter or two.

I’ve also calculated a “Matchup Score” for each series using a straight combination of opponent’s home/away wOBA, opponent wOBA over the last 14 days, and the park factor for the ballpark the teams are playing in. It’s indexed so that 100 is average and anything above that is a favorable matchup and anything below is unfavorable. That matchup rating informs some of the sit/start recommendations I’m making, though the quality of the pitcher definitely takes precedence. I should also note that I’ve updated the way I’m calculating the park factors for the two new minor league stadiums that the Athletics and Rays are playing in this year; I’m taking the one-year park factors from Statcast and regressing them towards neutral, with the one-year factors increasing in weight as more games are played in those stadiums (those series are still marked in yellow below).

September 22–28
Team Series 1 Matchup Series 2 Matchup Start Maybe Risky Sit
ARI LAD (71) @SDP (98) Brandon Pfaadt (x2), Ryne Nelson, Zac Gallen Eduardo Rodriguez Nabil Crismatt
ATH HOU (51) KCR (66) J.T. Ginn, Luis Severino, Luis Morales Mason Barnett (x2), Jeffrey Springs
ATL WSN (112) PIT (157) Chris Sale (x2), Hurston Waldrep, Spencer Strider Bryce Elder, Joey Wentz
BAL TBR (143) @NYY (63) Tyler Wells, Trevor Rogers, Kyle Bradish Dean Kremer, Cade Povich Tomoyuki Sugano
BOS @TOR (83) DET (108) Garrett Crochet Lucas Giolito (x2), Connelly Early Brayan Bello, Kyle Harrison
CHC NYM (100) STL (161) Cade Horton (x2), Matthew Boyd Shota Imanaga Colin Rea, Jameson Taillon
CHW @NYY (63) @WSN (145) Shane Smith (@WSN) Smith (@NYY), Sean Burke Martín Pérez, Davis Martin, Yoendrys Gómez
CIN PIT (126) @MIL (68) Hunter Greene, Nick Lodolo Brady Singer (vPIT), Andrew Abbott Singer (@MIL) Zack Littell
CLE DET (131) TEX (116) Gavin Williams, Tanner Bibee, Parker Messick Joey Cantillo Logan Allen로건, Slade Cecconi
COL @SEA (100) @SFG (167) Kyle Freeland McCade Brown (x2), Tanner Gordon, Bradley Blalock, Germán Márquez
DET @CLE (131) @BOS (69) Jack Flaherty (@CLE), Tarik Skubal Flaherty (@BOS) Charlie Morton, Casey Mize Keider Montero
HOU @ATH (20) @LAA (107) Hunter Brown Framber Valdez, Cristian Javier (@LAA) Javier (@ATH), Jason Alexander AJ Blubaugh
KCR @LAA (107) @ATH (20) Cole Ragans (@LAA) Stephen Kolek, Michael Wacha, Ragans (@ATH) Michael Lorenzen, Noah Cameron
LAA KCR (76) HOU (61) José Soriano, Yusei Kikuchi Caden Dana, Sam Aldegheri, Mitch Farris, Kyle Hendricks
LAD @ARI (65) @SEA (100) Shohei Ohtani, Blake Snell, Yoshinobu Yamamoto, Tyler Glasnow Clayton Kershaw, Emmet Sheehan
MIA @PHI (29) NYM (80) Sandy Alcantara, Eury Pérez Ryan Weathers (x2), Janson Junk Adam Mazur
MIL @SDP (98) CIN (117) Freddy Peralta, Brandon Woodruff, Jacob Misiorowski Quinn Priester, Chad Patrick, Robert Gasser
MIN @TEX (121) @PHI (29) Pablo López Joe Ryan Zebby Matthews, Taj Bradley, Bailey Ober Simeon Woods Richardson
NYM @CHC (87) @MIA (97) Brandon Sproat, Nolan McLean David Peterson (x2), Jonah Tong, Clay Holmes
NYY CHW (125) BAL (134) Max Fried, Carlos Rodón, Cam Schlittler Luis Gil (x2), Will Warren
PHI MIA (70) MIN (79) Ranger Suárez, Cristopher Sánchez, Jesús Luzardo Walker Buehler, Taijuan Walker, Aaron Nola
PIT @CIN (81) @ATL (95) Paul Skenes Braxton Ashcraft, Mitch Keller, Bubba Chandler, Mike Burrows Johan Oviedo
SDP MIL (59) ARI (70) Nick Pivetta (x2), Dylan Cease, Michael King Yu Darvish Randy Vásquez
SEA COL (178) LAD (83) Luis Castillo, Bryan Woo, George Kirby, Logan Gilbert Bryce Miller (x2)
SFG STL (169) COL (182) Logan Webb, Robbie Ray Justin Verlander (x2) Kai-Wei Teng Carson Whisenhunt (?)
STL @SFG (167) @CHC (87) Sonny Gray Michael McGreevy (x2) Andre Pallante, Miles Mikolas, Matthew Liberatore
TBR @BAL (128) @TOR (83) Ian Seymour (x2), Drew Rasmussen, Ryan Pepiot Shane Baz, Adrian Houser
TEX MIN (80) @CLE (131) Merrill Kelly 켈리 (x2), Jacob deGrom, Jack Leiter Tyler Mahle Patrick Corbin
TOR BOS (92) TBR (130) Kevin Gausman, Shane Bieber Max Scherzer, Trey Yesavage José Berríos, Chris Bassitt
WSN @ATL (95) CHW (139) MacKenzie Gore Brad Lord, Cade Cavalli Jake Irvin (x2), Andrew Alvarez, Mitchell Parker

Ottoneu Starting Pitching Planner: September 15–21

Credit: James A. Pittman-Imagn Images

Welcome back to the Ottoneu Starting Pitching Planner. Based on the Roster Resource Probables Grid, I’ve organized every starter slated to start next week into four categories: start, maybe, risky, and sit. The first and last category are pretty self-explanatory. Starters who fall into the “maybe” category are guys you could start if you need to keep up with the innings pitched pace in points leagues or need to hit your games started cap in head-to-head leagues; they’re good bets to turn in a decent start, but you shouldn’t automatically insert them into your lineup. If you’ve fallen behind on the innings pitched pace or you’re really starving for starts in a head-to-head matchup, you could turn to a “risky” starter or two.

I’ve also calculated a “Matchup Score” for each series using a straight combination of opponent’s home/away wOBA, opponent wOBA over the last 14 days, and the park factor for the ballpark the teams are playing in. It’s indexed so that 100 is average and anything above that is a favorable matchup and anything below is unfavorable. That matchup rating informs some of the sit/start recommendations I’m making, though the quality of the pitcher definitely takes precedence. I should also note that I’ve updated the way I’m calculating the park factors for the two new minor league stadiums that the Athletics and Rays are playing in this year; I’m taking the one-year park factors from Statcast and regressing them towards neutral, with the one-year factors increasing in weight as more games are played in those stadiums (those series are still marked in yellow below).

September 15–21
Team Series 1 Matchup Series 2 Matchup Start Maybe Risky Sit
ARI SFG (72) PHI (89) Zac Gallen (x2), Brandon Pfaadt, Ryne Nelson Eduardo Rodriguez, Nabil Crismatt
ATH @BOS (60) @PIT (158) Luis Severino, Luis Morales J.T. Ginn, Jeffrey Springs (@PIT) Springs (@BOS), Mason Barnett
ATL @WSN (138) @DET (79) Chris Sale, Hurston Waldrep Spencer Strider (x2) Bryce Elder, Joey Wentz Dane Dunning (?)
BAL @CHW (108) NYY (104) Kyle Bradish (x2), Trevor Rogers Tyler Wells Cade Povich, Dean Kremer, Tomoyuki Sugano
BOS ATH (45) @TBR (55) Garrett Crochet Lucas Giolito Connelly Early (x2), Brayan Bello, Payton Tolle
CHC @PIT (158) @CIN (63) Cade Horton (x2), Matthew Boyd Shota Imanaga Jameson Taillon (x2), Colin Rea
CHW BAL (120) SDP (101) Sean Burke (x2), Shane Smith, Martín Pérez Davis Martin, Yoendrys Gómez
CIN @STL (166) CHC (37) Andrew Abbott (@STL), Hunter Greene Brady Singer, Nick Lodolo, Abbott (vCHC) Zack Littell (x2)
CLE @DET (79) @MIN (99) Gavin Williams, Tanner Bibee Joey Cantillo, Logan Allen로건, Parker Messick, John Means (?), Slade Cecconi
COL MIA (72) LAA (108) Kyle Freeland (x2), McCade Brown, Tanner Gordon, Antonio Senzatela, Germán Márquez
DET CLE (163) ATL (163) Jack Flaherty, Tarik Skubal Casey Mize (x2), Charlie Morton Sawyer Gipson-Long
HOU TEX (140) SEA (51) Hunter Brown, Framber Valdez Cristian Javier Jason Alexander (vTEX) Alexander (vSEA), AJ Blubaugh
KCR SEA (44) TOR (61) Michael Wacha (x2) Stephen Kolek, Michael Lorenzen, Ryan Bergert, Noah Cameron
LAA @MIL (75) @COL (77) José Soriano, Yusei Kikuchi Kyle Hendricks (x2), Mitch Farris, Caden Dana
LAD PHI (73) SFG (56) Shohei Ohtani (x2), Blake Snell, Yoshinobu Yamamoto, Tyler Glasnow Emmet Sheehan, Clayton Kershaw
MIA @COL (77) @TEX (151) Sandy Alcantara Eury Pérez (x2), Ryan Weathers, Janson Junk Adam Mazur
MIL LAA (130) @STL (166) Freddy Peralta (x2), Brandon Woodruff, Jacob Misiorowski Jose Quintana, Quinn Priester
MIN NYY (87) CLE (145) Pablo López, Joe Ryan Simeon Woods Richardson (x2), Zebby Matthews, Taj Bradley, Bailey Ober
NYM SDP (133) WSN (119) Clay Holmes, David Peterson, Nolan McLean Sean Manaea, Jonah Tong, Brandon Sproat
NYY @MIN (99) @BAL (118) Carlos Rodón (x2), Max Fried Cam Schlittler (x2), Will Warren Luis Gil
PHI @LAD (85) @ARI (115) Ranger Suárez, Cristopher Sánchez Jesús Luzardo Taijuan Walker, Aaron Nola Walker Buehler
PIT CHC (74) ATH (62) Paul Skenes (x2) Mitch Keller Johan Oviedo, Bubba Chandler, Mike Burrows
SDP @NYM (71) @CHW (108) Nick Pivetta Michael King (x2), Dylan Cease Yu Darvish Randy Vásquez
SEA @KCR (162) @HOU (126) Logan Gilbert (x2), Bryan Woo, George Kirby Bryce Miller, Luis Castillo
SFG @ARI (115) @LAD (85) Logan Webb Justin Verlander, Robbie Ray Carson Whisenhunt (x2), Carson Seymour (x2)
STL CIN (142) MIL (75) Sonny Gray Michael McGreevy Matthew Liberatore (x2), Andre Pallante, Miles Mikolas
TBR TOR (33) BOS (50) Drew Rasmussen Ryan Pepiot (x2) Ian Seymour (x2), Shane Baz, Adrian Houser
TEX @HOU (126) MIA (96) Jacob deGrom Jack Leiter (x2), Merrill Kelly 켈리 Tyler Mahle (?) Patrick Corbin
TOR @TBR (55) @KCR (162) Kevin Gausman (x2), Shane Bieber José Berríos (x2), Chris Bassitt, Max Scherzer
WSN ATL (147) @NYM (71) MacKenzie Gore, Brad Lord Cade Cavalli Mitchell Parker (x2), Jake Irvin, Andrew Alvarez

Ottoneu Starting Pitching Planner: September 8–14

Credit: Sergio Estrada-Imagn Images

Welcome back to the Ottoneu Starting Pitching Planner. Based on the Roster Resource Probables Grid, I’ve organized every starter slated to start next week into four categories: start, maybe, risky, and sit. The first and last category are pretty self-explanatory. Starters who fall into the “maybe” category are guys you could start if you need to keep up with the innings pitched pace in points leagues or need to hit your games started cap in head-to-head leagues; they’re good bets to turn in a decent start, but you shouldn’t automatically insert them into your lineup. If you’ve fallen behind on the innings pitched pace or you’re really starving for starts in a head-to-head matchup, you could turn to a “risky” starter or two.

I’ve also calculated a “Matchup Score” for each series using a straight combination of opponent’s home/away wOBA, opponent wOBA over the last 14 days, and the park factor for the ballpark the teams are playing in. It’s indexed so that 100 is average and anything above that is a favorable matchup and anything below is unfavorable. That matchup rating informs some of the sit/start recommendations I’m making, though the quality of the pitcher definitely takes precedence. I should also note that I’ve updated the way I’m calculating the park factors for the two new minor league stadiums that the Athletics and Rays are playing in this year; I’m taking the one-year park factors from Statcast and regressing them towards neutral, with the one-year factors increasing in weight as more games are played in those stadiums (those series are still marked in yellow below).

September 8–14
Team Series 1 Matchup Series 2 Matchup Start Maybe Risky Sit
ARI @SFG (110) @MIN (97) Zac Gallen Brandon Pfaadt, Ryne Nelson Nabil Crismatt (x2), Eduardo Rodriguez
ATH BOS (40) CIN (82) Luis Severino, Luis Morales (vCIN) Morales (vBOS), J.T. Ginn Jeffrey Springs, Mason Barnett
ATL CHC (68) HOU (77) Chris Sale Hurston Waldrep, Spencer Strider Joey Wentz (x2) Bryce Elder
BAL PIT (123) @TOR (46) Kyle Bradish, Trevor Rogers Tyler Wells, Cade Povich, Dean Kremer Tomoyuki Sugano
BOS @ATH (61) NYY (30) Garrett Crochet (x2) Payton Tolle Dustin May, Lucas Giolito, Brayan Bello
CHC @ATL (109) TBR (114) Cade Horton, Matthew Boyd Shota Imanaga (x2) Jameson Taillon (?), Colin Rea
CHW TBR (83) @CLE (169) Martín Pérez Yoendrys Gómez (x2), Shane Smith Jonathan Cannon, Davis Martin
CIN @SDP (117) @ATH (61) Nick Lodolo (@SDP), Andrew Abbott Hunter Greene, Lodolo (@ATH) Brady Singer Zack Littell
CLE KCR (122) CHW (122) Gavin Williams, Tanner Bibee, Parker Messick Slade Cecconi (x2), Joey Cantillo, Logan Allen로건
COL @LAD (72) @SDP (117) Chase Dollander (x2), Germán Márquez (x2), Kyle Freeland, McCade Brown, Tanner Gordon
DET @NYY (41) @MIA (136) Tarik Skubal Jack Flaherty, Charlie Morton Casey Mize Sawyer Gipson-Long (x2)
HOU @TOR (46) @ATL (109) Hunter Brown, Framber Valdez Jason Alexander (x2), Cristian Javier, Luis Garcia
KCR @CLE (169) @PHI (50) Michael Wacha Ryan Bergert (@CLE), Noah Cameron (@CLE), Seth Lugo Michael Lorenzen, Bergert (@PHI), Cameron (@PHI)
LAA MIN (92) @SEA (144) Yusei Kikuchi José Soriano Caden Dana (x2), Kyle Hendricks (x2), Mitch Farris
LAD COL (146) @SFG (110) Shohei Ohtani, Blake Snell, Tyler Glasnow, Yoshinobu Yamamoto Clayton Kershaw, Emmet Sheehan
MIA WSN (112) DET (95) Sandy Alcantara Janson Junk (?), Eury Pérez (x2), Ryan Weathers (?) Adam Mazur
MIL @TEX (92) STL (136) Freddy Peralta, Brandon Woodruff, Jacob Misiorowski Jose Quintana (x2), Quinn Priester
MIN @LAA (120) ARI (97) Joe Ryan, Pablo López Simeon Woods Richardson (x2), Zebby Matthews, Bailey Ober
NYM @PHI (50) TEX (93) Nolan McLean, Clay Holmes, David Peterson, Jonah Tong, Sean Manaea (vTEX) Manaea (@PHI), Brandon Sproat
NYY DET (88) @BOS (53) Max Fried Carlos Rodón, Cam Schlittler Will Warren (x2), Luis Gil
PHI NYM (37) KCR (104) Cristopher Sánchez Ranger Suárez, Jesús Luzardo Aaron Nola (x2), Taijuan Walker Walker Buehler (?)
PIT @BAL (93) @WSN (144) Braxton Ashcraft (x2), Paul Skenes Mitch Keller Johan Oviedo, Carmen Mlodzinski
SDP CIN (121) COL (159) Nick Pivetta, Michael King, Dylan Cease Yu Darvish (vCOL) Darvish (vCIN), Nestor Cortes (x2)
SEA STL (164) LAA (151) Bryan Woo (x2), George Kirby (x2), Logan Gilbert Bryce Miller, Luis Castillo
SFG ARI (121) LAD (123) Logan Webb (x2) Robbie Ray, Justin Verlander Carson Whisenhunt Carson Seymour
STL @SEA (144) @MIL (72) Michael McGreevy, Sonny Gray Miles Mikolas (x2), Matthew Liberatore, Andre Pallante
TBR @CHW (107) @CHC (117) Ryan Pepiot, Drew Rasmussen Ian Seymour Adrian Houser (x2), Shane Baz
TEX MIL (47) @NYM (61) Jacob deGrom Jack Leiter, Merrill Kelly 켈리 Jacob Latz (x2), Patrick Corbin
TOR HOU (80) BAL (112) Shane Bieber, Kevin Gausman José Berríos (x2), Max Scherzer, Chris Bassitt
WSN @MIA (136) PIT (110) Cade Cavalli (x2) Brad Lord Mitchell Parker (x2), Jake Irvin, Andrew Alvarez