Who Should I Trade?
Tyler Mahle for Brady Singer (2026)
See if your team wins or loses with this trade View Trade Analyzer
Experts' Pick | Experts' Pick | |
| Tyler Mahle SP - SF | Brady Singer SP - CIN | |
Expert |
50% Recommended by 2 of 4 experts |
50% Recommended by 2 of 4 experts |
| Rankings | ||
| Rest of Season | # 183 | # 147 |
| VBR | # 409 | # 478 |
| Projections | ||
| Strikeouts | 53 | 83 |
| Wins | 3 | 5 |
| Saves | 0 | 0 |
| ERA | 4.19 | 4.79 |
| WHIP | 1.35 | 1.43 |
| Misc | ||
| Injury Alert | IL15 | - |
| Expert Ranks | ||
| Scott Pianowski Yahoo! Sports | # 155 | # 152 |
| Joe Pisapia FantasyPros | ‐ | # 58 |
| Kelly Kirby FantasyPros | # 197 | # 228 |
| Kevin Spinelli KevScores | # 208 | # 245 |
| Tyler Mahle SP - SF | Brady Singer SP - CIN | |
| 2026 Stats | ||
| Games Played | 11 | 13 |
| Games Started | 11 | 13 |
| Innings Pitched | 56.2 | 61.0 |
| Wins | 1 | 2 |
| Losses | 7 | 6 |
| Saves | 0 | 0 |
| Blown Saves | 0 | 0 |
| Holds | 0 | 0 |
| Hits Allowed | 63 | 80 |
| Earned Runs | 38 | 38 |
| Home Runs Allowed | 11 | 17 |
| Strikeouts | 57 | 47 |
| Walks | 24 | 20 |
| ERA | 6.04 | 5.61 |
| WHIP | 1.54 | 1.64 |
| Tyler Mahle SP - SF | Brady Singer SP - CIN | |
| 2026 Projections | ||
| Games Played | 11 | 18 |
| Games Started | 11 | 18 |
| Innings Pitched | 60.8 | 96.5 |
| Wins | 3 | 5 |
| Losses | 4 | 7 |
| Saves | 0 | 0 |
| Blown Saves | 0 | 0 |
| Holds | 0 | 0 |
| Hits Allowed | 59 | 100 |
| Earned Runs | 28 | 51 |
| Home Runs Allowed | 8 | 15 |
| Strikeouts | 53 | 83 |
| Walks | 22 | 33 |
| ERA | 4.19 | 4.79 |
| WHIP | 1.35 | 1.43 |
| Tyler Mahle SP - SF | Brady Singer SP - CIN | |
| News | ||
| The Giants placed Tyler Mahle on the 15-day injured list. Ari Koslow Fri, May 29th | Reds right-hander Brady Singer allowed four runs (one earned) in just four innings while taking the loss on Friday against the Cardinals. Brenton Kemp Sat, Jun 6th | |
| Tyler Mahle allowed three earned runs on three hits and three walks while striking out three over five innings in Tuesday's loss to the Diamondbacks. Chris Schommer Wed, May 27th | Reds right-hander Brady Singer allowed three earned runs across five innings while taking the loss on Saturday against the Braves. Brenton Kemp Sun, May 31st | |
| Tyler Mahle allowed six earned runs on eight hits while striking out six over five innings in Wednesday’s loss to the Diamondbacks. Chris Schommer Thu, May 21st | Brady Singer will have his turn in the rotation skipped. Ari Koslow Sun, May 24th | |
| Tyler Mahle allowed five earned runs on 10 hits and one walk while striking out six over five innings in Friday’s loss to the Athletics. Chris Schommer Sat, May 16th | Sunday’s scheduled contest between the St. Louis Cardinals and Cincinnati Reds has been postponed due to inclement weather the club announced. Chris Schommer Sun, May 24th | |
| Tyler Mahle allowed four earned runs on five hits and two walks while striking out eight over 5 2/3 innings in Sunday’s win over the Pirates. Chris Schommer Mon, May 11th | Brady Singer allowed five earned runs on seven hits and one walk while striking out six over four innings in Sunday’s loss to the Guardians. Chris Schommer Mon, May 18th | |
| Notes | ||
| There are no recent notes for these players | ||
| Tyler Mahle SP - SF | Brady Singer SP - CIN | |||||
| Date | Opp | Opp Pitcher | VBR | Opp | Opp Pitcher | VBR |
|---|---|---|---|---|---|---|
| Wed, Mar 25th | vs NYY | Max Fried (4-3) | #37 |   |   |   |
| Fri, Mar 27th | vs NYY | Cam Schlittler (7-3) | #35 |   |   |   |
| Sat, Mar 28th | vs NYY | Will Warren (7-1) | #67 | vs BOS | Sonny Gray (7-1) | #33 |
| Mon, Mar 30th | @ SD | Walker Buehler (3-3) | #215 | vs PIT | Braxton Ashcraft (5-3) | #34 |
| Tue, Mar 31st | @ SD | German Marquez (3-2) | #353 | vs PIT | Bubba Chandler (2-7) | #116 |
| Wed, Apr 1st | @ SD | Nick Pivetta (1-2) | #145 | vs PIT | Paul Skenes (6-5) | #2 |
| Thu, Apr 2nd | vs NYM | David Peterson (3-5) | #135 |   |   |   |
| Fri, Apr 3rd | vs NYM | Nolan McLean (3-4) | #38 | @ TEX | MacKenzie Gore (4-5) | #50 |
| Sat, Apr 4th | vs NYM | Clay Holmes (4-4) | #162 | @ TEX | Kumar Rocker (2-5) | #98 |
| Sun, Apr 5th | vs NYM | Kodai Senga (0-4) | #125 | @ TEX | Jack Leiter (3-5) | #79 |
| Mon, Apr 6th | vs PHI | Andrew Painter (1-7) | #169 | @ MIA | Janson Junk (3-5) | #124 |
| Tue, Apr 7th | vs PHI | Cristopher Sanchez (8-2) | #4 | @ MIA | Sandy Alcantara (5-4) | #62 |
| Wed, Apr 8th | vs PHI | Aaron Nola (3-4) | #42 | @ MIA | Eury Perez (3-6) | #108 |
| Fri, Apr 10th | @ BAL | Shane Baz (3-6) | #74 | vs LAA | Jack Kochanowicz (2-5) | |
| Sat, Apr 11th | @ BAL | Chris Bassitt (4-4) | #139 | vs LAA | George Klassen (0-1) | #355 |
| Sun, Apr 12th | @ BAL | Cade Povich (1-1) | #246 | vs LAA | Jose Soriano (7-4) | #57 |
| Tue, Apr 14th | @ CIN | Brady Singer (2-6) | #160 | vs SF | Robbie Ray (4-6) | #78 |
| Wed, Apr 15th | @ CIN | Rhett Lowder (3-3) | #185 | vs SF | Tyler Mahle (1-7) | #132 |
| Thu, Apr 16th | @ CIN | Chase Burns (7-1) | #23 | vs SF | Landen Roupp (5-6) | #73 |
| Fri, Apr 17th | @ WSH | Zack Littell (6-4) | #167 | @ MIN | Joe Ryan (4-3) | #17 |
| Sat, Apr 18th | @ WSH | Cade Cavalli (3-4) | #88 | @ MIN | Taj Bradley (5-3) | #71 |
| Sun, Apr 19th | @ WSH | PJ Poulin (3-0) | #312 | @ MIN | Bailey Ober (6-3) | #107 |
| Tue, Apr 21st | vs LAD | Yoshinobu Yamamoto (6-4) | #11 | @ TB | Steven Matz (4-3) | #144 |
| Wed, Apr 22nd | vs LAD | Shohei Ohtani (6-2) | #1 | @ TB | Nick Martinez (6-2) | #95 |
| Thu, Apr 23rd | vs LAD | Tyler Glasnow (3-0) | #39 |   |   |   |
| Fri, Apr 24th | vs MIA | Sandy Alcantara (5-4) | #62 | vs DET | Framber Valdez (3-5) | #26 |
| Sat, Apr 25th | vs MIA | Eury Perez (3-6) | #108 | vs DET | Jack Flaherty (1-7) | #64 |
| Sun, Apr 26th | vs MIA | Max Meyer (6-0) | #61 | vs DET | Keider Montero (3-4) | #188 |
| Tue, Apr 28th | @ PHI | Jesus Luzardo (5-4) | #12 | vs COL | Kyle Freeland (1-6) | #354 |
| Thu, Apr 30th | @ PHI | Tim Mayza | vs COL | Michael Lorenzen (2-8) | #421 | |
| Fri, May 1st | @ TB | Shane McClanahan (6-3) | #22 | @ PIT | Mitch Keller (5-4) | #89 |
| Sat, May 2nd | @ TB | Griffin Jax (1-4) | #63 | @ PIT | Carmen Mlodzinski (4-3) | #130 |
| Sun, May 3rd | @ TB | Steven Matz (4-3) | #144 | @ PIT | Braxton Ashcraft (5-3) | #34 |
| Mon, May 4th | vs SD | Randy Vasquez (5-4) | #210 | @ CHC | Edward Cabrera (4-3) | #69 |
| Tue, May 5th | vs SD | Walker Buehler (3-3) | #215 | @ CHC | Jameson Taillon (2-5) | #112 |
| Wed, May 6th | vs SD | Bradgley Rodriguez | @ CHC | Colin Rea (5-4) | #153 | |
| Fri, May 8th | vs PIT | Carmen Mlodzinski (4-3) | #130 | vs HOU | Mike Burrows (3-8) | #136 |
| Sat, May 9th | vs PIT | Braxton Ashcraft (5-3) | #34 | vs HOU | Spencer Arrighetti (7-1) | #122 |
| Sun, May 10th | vs PIT | Bubba Chandler (2-7) | #116 | vs HOU | Kai-Wei Teng (3-5) | #189 |
| Mon, May 11th | @ LAD | Roki Sasaki (3-3) | #99 |   |   |   |
| Tue, May 12th | @ LAD | Yoshinobu Yamamoto (6-4) | #11 | vs WSH | Miles Mikolas (1-5) | #243 |
| Wed, May 13th | @ LAD | Shohei Ohtani (6-2) | #1 | vs WSH | Jake Irvin (2-4) | #200 |
| Thu, May 14th | @ LAD | Emmet Sheehan (3-3) | #49 | vs WSH | Foster Griffin (7-2) | #85 |
| Fri, May 15th | @ ATH | Aaron Civale (5-2) | #205 | @ CLE | Tanner Bibee (1-7) | #43 |
| Sat, May 16th | @ ATH | Luis Severino (2-6) | #158 | @ CLE | Joey Cantillo (4-3) | #114 |
| Sun, May 17th | @ ATH | Jeffrey Springs (3-6) | #123 | @ CLE | Gavin Williams (9-3) | #29 |
| Mon, May 18th | @ ARI | Zac Gallen (3-5) | #82 | @ PHI | Andrew Painter (1-7) | #169 |
| Tue, May 19th | @ ARI | Ryne Nelson (2-5) | #94 | @ PHI | Jesus Luzardo (5-4) | #12 |
| Wed, May 20th | @ ARI | Merrill Kelly (5-5) | #97 | @ PHI | Aaron Nola (3-4) | #42 |
| Fri, May 22nd | vs CWS | Davis Martin (9-2) | #80 |   |   |   |
| Sat, May 23rd | vs CWS | Bryan Hudson (3-2) | #181 | vs STL | Kyle Leahy (5-3) | #141 |
| Sun, May 24th | vs CWS | Noah Schultz (2-4) | #212 |   |   |   |
| Mon, May 25th | vs ARI | Merrill Kelly (5-5) | #97 | @ NYM | Nolan McLean (3-4) | #38 |
| Tue, May 26th | vs ARI | Eduardo Rodriguez (5-2) | #118 | @ NYM | David Peterson (3-5) | #135 |
| Wed, May 27th | vs ARI | Michael Soroka (8-3) | #58 | @ NYM | Huascar Brazoban (3-1) | #201 |
| Fri, May 29th | @ COL | Michael Lorenzen (2-8) | #421 | vs ATL | Grant Holmes (4-2) | #131 |
| Sat, May 30th | @ COL | Ryan Feltner (2-2) | #425 | vs ATL | Martin Perez (4-3) | #195 |
| Sun, May 31st | @ COL | Tanner Gordon (0-1) | #325 | vs ATL | Spencer Strider (4-1) | #32 |
| Mon, Jun 1st | @ MIL | Shane Drohan (3-1) | #138 | vs KC | Luinder Avila (1-2) | #227 |
| Tue, Jun 2nd | @ MIL | Kyle Harrison (7-1) | #54 | vs KC | Noah Cameron (3-4) | #84 |
| Wed, Jun 3rd | @ MIL | Robert Gasser (0-3) | #175 | vs KC | Stephen Kolek (3-1) | #168 |
| Thu, Jun 4th | @ MIL | Coleman Crow (0-1) | #235 |   |   |   |
| Fri, Jun 5th | @ CHC | Edward Cabrera (4-3) | #69 | @ STL | Kyle Leahy (5-3) | #141 |
| Sat, Jun 6th | @ CHC | Ben Brown (2-2) | #30 | @ STL | Matthew Liberatore (3-3) | #102 |
| Sun, Jun 7th | @ CHC | Jameson Taillon (2-5) | #112 | @ STL | Michael McGreevy (3-5) | #93 |
| Mon, Jun 8th | vs WSH | Richard Lovelady (2-3) | #226 | @ SD | Walker Buehler (3-3) | #215 |
| Tue, Jun 9th | vs WSH | Andrew Alvarez (1-0) | #179 | @ SD | Lucas Giolito (2-1) | #174 |
| Wed, Jun 10th | vs WSH | Foster Griffin (7-2) | #85 | @ SD | Michael King (4-5) | #41 |
| Fri, Jun 12th | vs CHC | Javier Assad (3-1) | #208 | vs ARI | Eduardo Rodriguez (5-2) | #118 |
| Sat, Jun 13th | vs CHC | Ben Brown (2-2) | #30 | vs ARI | Michael Soroka (8-3) | #58 |
| Sun, Jun 14th | vs CHC | Colin Rea (5-4) | #153 | vs ARI | Zac Gallen (3-5) | #82 |
| Tue, Jun 16th | @ ATL | Chris Sale (8-5) | #5 | vs NYM | Christian Scott (2-0) | #83 |
| Wed, Jun 17th | @ ATL | Martin Perez (4-3) | #195 | vs NYM | Nolan McLean (3-4) | #38 |
| Thu, Jun 18th | @ ATL | Spencer Strider (4-1) | #32 |   |   |   |
| Fri, Jun 19th | @ MIA | Janson Junk (3-5) | #124 | @ NYY | Cam Schlittler (7-3) | #35 |
| Sat, Jun 20th | @ MIA | Ryan Gusto (0-1) | #186 | @ NYY | Will Warren (7-1) | #67 |
| Sun, Jun 21st | @ MIA | @ NYY | ||||
| Tue, Jun 23rd | vs ATH | vs MIL | ||||
| Wed, Jun 24th | vs ATH | vs MIL | ||||
| Thu, Jun 25th | vs ATH |   |   |   | ||
| Fri, Jun 26th | vs ATL | @ PIT | ||||
| Sat, Jun 27th | vs ATL | @ PIT | ||||
| Sun, Jun 28th | vs ATL | @ PIT | ||||
| Mon, Jun 29th | @ ARI | @ MIL | ||||
| Tue, Jun 30th | @ ARI | @ MIL | ||||
| Wed, Jul 1st | @ ARI | @ MIL | ||||
| Fri, Jul 3rd | @ COL | vs BAL | ||||
| Sat, Jul 4th | @ COL | vs BAL | ||||
| Sun, Jul 5th | @ COL | vs BAL | ||||
| Mon, Jul 6th | vs TOR |   |   |   | ||
| Tue, Jul 7th | vs TOR | vs PHI | ||||
| Wed, Jul 8th | vs TOR | vs PHI | ||||
| Thu, Jul 9th | vs COL | vs PHI | ||||
| Fri, Jul 10th | vs COL | vs CHC | ||||
| Sat, Jul 11th | vs COL | vs CHC | ||||
| Sun, Jul 12th | vs COL | vs CHC | ||||
| Fri, Jul 17th | @ SEA | @ COL | ||||
| Sat, Jul 18th | @ SEA | @ COL | ||||
| Sun, Jul 19th | @ SEA | @ COL | ||||
| Mon, Jul 20th | @ KC | @ SEA | ||||
| Tue, Jul 21st | @ KC | @ SEA | ||||
| Wed, Jul 22nd | @ KC | @ SEA | ||||
| Fri, Jul 24th | vs LAA | @ STL | ||||
| Sat, Jul 25th | vs LAA | @ STL | ||||
| Sun, Jul 26th | vs LAA | @ STL | ||||
| Mon, Jul 27th | vs MIL | vs CLE | ||||
| Tue, Jul 28th | vs MIL | vs CLE | ||||
| Wed, Jul 29th | vs MIL | vs CLE | ||||
| Thu, Jul 30th | @ SD | vs PIT | ||||
| Fri, Jul 31st | @ SD | vs PIT | ||||
| Sat, Aug 1st | @ SD | vs PIT | ||||
| Sun, Aug 2nd | @ SD | vs PIT | ||||
| Mon, Aug 3rd | @ TEX |   |   |   | ||
| Tue, Aug 4th | @ TEX | vs ATH | ||||
| Wed, Aug 5th | @ TEX | vs ATH | ||||
| Fri, Aug 7th | vs DET | @ WSH | ||||
| Sat, Aug 8th | vs DET | @ WSH | ||||
| Sun, Aug 9th | vs DET | @ WSH | ||||
| Mon, Aug 10th | vs HOU |   |   |   | ||
| Tue, Aug 11th | vs HOU | @ CWS | ||||
| Wed, Aug 12th | vs HOU | @ CWS | ||||
| Fri, Aug 14th | vs COL | vs MIA | ||||
| Sat, Aug 15th | vs COL | vs MIA | ||||
| Sun, Aug 16th | vs COL | vs MIA | ||||
| Tue, Aug 18th | @ CLE | vs STL | ||||
| Wed, Aug 19th | @ CLE | vs STL | ||||
| Thu, Aug 20th | @ CLE | vs STL | ||||
| Fri, Aug 21st | @ BOS | @ ARI | ||||
| Sat, Aug 22nd | @ BOS | @ ARI | ||||
| Sun, Aug 23rd | @ BOS | @ ARI | ||||
| Mon, Aug 24th | vs CIN | @ SF | ||||
| Tue, Aug 25th | vs CIN | @ SF | ||||
| Wed, Aug 26th | vs CIN | @ SF | ||||
| Thu, Aug 27th | vs ARI |   |   |   | ||
| Fri, Aug 28th | vs ARI | @ CHC | ||||
| Sat, Aug 29th | vs ARI | @ CHC | ||||
| Sun, Aug 30th | vs ARI | @ CHC | ||||
| Tue, Sep 1st | @ PIT | vs SD | ||||
| Wed, Sep 2nd | @ PIT | vs SD | ||||
| Thu, Sep 3rd | @ PIT |   |   |   | ||
| Fri, Sep 4th | @ NYM | vs MIL | ||||
| Sat, Sep 5th | @ NYM | vs MIL | ||||
| Sun, Sep 6th | @ NYM | vs MIL | ||||
| Mon, Sep 7th | vs STL | @ LAD | ||||
| Tue, Sep 8th | vs STL | @ LAD | ||||
| Wed, Sep 9th | vs STL | @ LAD | ||||
| Fri, Sep 11th | vs SD | @ MIL | ||||
| Sat, Sep 12th | vs SD | @ MIL | ||||
| Sun, Sep 13th | vs SD | @ MIL | ||||
| Mon, Sep 14th | @ STL | vs LAD | ||||
| Tue, Sep 15th | @ STL | vs LAD | ||||
| Wed, Sep 16th | @ STL | vs LAD | ||||
| Fri, Sep 18th | @ LAD | vs CHC | ||||
| Sat, Sep 19th | @ LAD | vs CHC | ||||
| Sun, Sep 20th | @ LAD | vs CHC | ||||
| Mon, Sep 21st | vs MIN |   |   |   | ||
| Tue, Sep 22nd | vs MIN | @ ATL | ||||
| Wed, Sep 23rd | vs MIN | @ ATL | ||||
| Fri, Sep 25th | vs LAD | @ TOR | ||||
| Sat, Sep 26th | vs LAD | @ TOR | ||||
| Sun, Sep 27th | vs LAD | @ TOR | ||||
| Thu, Mar 26th |   |   |   | vs BOS | Garrett Crochet (3-3) | #18 |
| Sun, Mar 29th |   |   |   | vs BOS | Connelly Early (5-4) | #90 |
| Thu, Apr 9th |   |   |   | @ MIA | Max Meyer (6-0) | #61 |
| Mon, Apr 20th |   |   |   | @ TB | Jesse Scholtens (5-3) | #303 |
| Wed, Apr 29th |   |   |   | vs COL | Tomoyuki Sugano (6-4) | #434 |
| Thu, May 7th |   |   |   | @ CHC | Shota Imanaga (4-6) | #27 |
| Mon, Jun 15th |   |   |   | vs NYM | David Peterson (3-5) | #135 |
| Mon, Jun 22nd |   |   |   | vs MIL | ||
| Thu, Jul 2nd |   |   |   | @ MIL | ||
| Thu, Aug 6th |   |   |   | vs ATH | ||
| Thu, Aug 13th |   |   |   | @ CWS | ||
| Mon, Aug 17th |   |   |   | vs STL | ||
| Mon, Aug 31st |   |   |   | vs SD | ||
| Thu, Sep 17th |   |   |   | vs LAD | ||
| Thu, Sep 24th |   |   |   | @ ATL | ||

