Robbie Ray or Sandy Alcantara
Baseball Stats Comparison
See which player would win in a trade View Trade Analyzer
| Sandy Alcantara SP - MIA | Robbie Ray SP - SF | |
| 2026 Stats | ||
| Games Played | 14 | 13 |
| Games Started | 14 | 13 |
| Innings Pitched | 89.1 | 67.2 |
| Wins | 5 | 4 |
| Losses | 4 | 6 |
| Saves | 0 | 0 |
| Blown Saves | 0 | 0 |
| Holds | 0 | 0 |
| Hits Allowed | 92 | 59 |
| Earned Runs | 44 | 31 |
| Home Runs Allowed | 10 | 13 |
| Strikeouts | 64 | 63 |
| Walks | 22 | 36 |
| ERA | 4.43 | 4.12 |
| WHIP | 1.28 | 1.40 |
| Sandy Alcantara SP - MIA | Robbie Ray SP - SF | |
| 2026 Projections | ||
| Games Played | 30 | 30 |
| Games Started | 29 | 30 |
| Innings Pitched | 176.6 | 168.1 |
| Wins | 10 | 10 |
| Losses | 11 | 10 |
| Saves | 0 | 0 |
| Blown Saves | 0 | 0 |
| Holds | 0 | 0 |
| Hits Allowed | 168 | 150 |
| Earned Runs | 79 | 76 |
| Home Runs Allowed | 21 | 24 |
| Strikeouts | 147 | 174 |
| Walks | 52 | 65 |
| ERA | 4.02 | 4.05 |
| WHIP | 1.25 | 1.28 |
| Sandy Alcantara SP - MIA | Robbie Ray SP - SF | |
| News | ||
| Sandy Alcantara allowed one run on five hits and one walk with seven strikeouts across seven innings in Sunday's 4-1 victory over the Tampa Bay Rays. Nicholas Rodriguez Sun, Jun 7th | Robbie Ray allowed two hits and five walks while striking out four over five scoreless innings in Friday's win over the Cubs. Chris Schommer Sat, Jun 6th | |
| Sandy Alcantara allowed three runs on seven hits and no walks while striking out five across seven innings in Monday's 7-3 win over the Washington Nationals. Nicholas Rodriguez Tue, Jun 2nd | Robbie Ray allowed one earned run on five hits and two walks while striking out six over four innings in Sunday’s win over the Rockies. Chris Schommer Mon, Jun 1st | |
| Sandy Alcantara allowed eight earned runs on 10 hits and one walk while striking out four over 5.2 innings in Tuesday's 8-1 loss to the Toronto Blue Jays. Nicholas Rodriguez Wed, May 27th | Robbie Ray allowed four earned runs on two hits and seven walks while striking out three over four innings in Sunday's win over the White Sox. Chris Schommer Mon, May 25th | |
| Sandy Alcantara allowed six earned runs on nine hits and no walks while striking out three over six innings in Thursday's 9-3 loss against the Atlanta Braves. Nicholas Rodriguez Fri, May 22nd | Robbie Ray allowed nine earned runs on 11 hits and two walks while striking out one over 4 1/3 innings in Monday’s 12-2 loss to the Diamondbacks. Chris Schommer Tue, May 19th | |
| Sandy Alcantara allowed zero earned runs on seven hits and no walks while striking out six over six innings in Saturday's 10-5 win over the Tampa Bay Rays. Nicholas Rodriguez Sun, May 17th | Robbie Ray allowed three earned runs on seven hits while striking out two and walking two over 4 2/3 innings in a 4-0 loss to the Dodgers. Chris Schommer Thu, May 14th | |
| Notes | ||
| Sandy Alcantara's 2025 season was a clear step back, as his ERA ballooned to 5.36 with a diminished 19.1% strikeout rate and a career-worst 45.1% hard-hit rate allowed. Projections expect some normalization, particularly in ERA and WHIP, but not a full return to his 2022 dominance. Without a rebound in strikeout rate or ground-ball lean, Alcantara profiles more as a volume-based SP3/SP4. The innings floor still carries value in deeper formats, but managers drafting him as a bounce-back ace are assuming skills growth that hasn't yet reappeared in the underlying data. Kelly Kirby - FantasyPros | Robbie Ray rebounded in 2025 with a 3.65 ERA and 1.21 WHIP across 182.1 innings for San Francisco, earning an All-Star nod after an injury-marred 2023 and abbreviated 2024. Looking ahead to 2026, projections point to stable mid-rotation production rather than a return to ace-level dominance. Ray's declining strikeout trend (from 32% in 2021 to sub-25% in 2025) caps his fantasy ceiling, but his ability to take the ball for 30+ starts and limit damage keeps his floor relatively intact. Kelly Kirby - FantasyPros | |
| He showed glimpses of his former Cy Young self, posting a 3.33 over his final 13 starts in 2025. I am chalking up the rocky first half to TJ injury recovery and banking on him being the pitcher we saw in the latter stages of last season. Anthony Gambale - Roto Street Journal | ||
| Sandy Alcantara SP - MIA | Robbie Ray SP - SF | |||||
| Date | Opp | Opp Pitcher | VBR | Opp | Opp Pitcher | VBR |
|---|---|---|---|---|---|---|
| Wed, Mar 25th |   |   |   | vs NYY | Max Fried (4-3) | #33 |
| Fri, Mar 27th | vs COL | Kyle Freeland (1-6) | #372 | vs NYY | Cam Schlittler (7-3) | #37 |
| Sat, Mar 28th | vs COL | Michael Lorenzen (2-8) | #429 | vs NYY | Will Warren (7-1) | #68 |
| Mon, Mar 30th | vs CWS | Davis Martin (8-2) | #84 | @ SD | Walker Buehler (3-3) | #202 |
| Tue, Mar 31st | vs CWS | Erick Fedde (1-5) | #405 | @ SD | German Marquez (3-2) | #358 |
| Wed, Apr 1st | vs CWS | Shane Smith (0-2) | #203 | @ SD | Nick Pivetta (1-2) | #139 |
| Thu, Apr 2nd |   |   |   | vs NYM | David Peterson (3-5) | #138 |
| Fri, Apr 3rd | @ NYY | Will Warren (7-1) | #68 | vs NYM | Nolan McLean (3-4) | #32 |
| Sat, Apr 4th | @ NYY | Ryan Weathers (2-4) | #81 | vs NYM | Clay Holmes (4-4) | #159 |
| Sun, Apr 5th | @ NYY | Max Fried (4-3) | #33 | vs NYM | Kodai Senga (0-4) | #124 |
| Mon, Apr 6th | vs CIN | Brandon Williamson (2-3) | #370 | vs PHI | Andrew Painter (1-7) | #167 |
| Tue, Apr 7th | vs CIN | Andrew Abbott (4-3) | #93 | vs PHI | Cristopher Sanchez (7-2) | #3 |
| Wed, Apr 8th | vs CIN | Brady Singer (2-6) | #160 | vs PHI | Aaron Nola (3-4) | #34 |
| Fri, Apr 10th | @ DET | Keider Montero (2-4) | #193 | @ BAL | Shane Baz (3-6) | #77 |
| Sat, Apr 11th | @ DET | Casey Mize (2-3) | #65 | @ BAL | Chris Bassitt (4-4) | #125 |
| Sun, Apr 12th | @ DET | Tarik Skubal (3-2) | #4 | @ BAL | Cade Povich (1-1) | #232 |
| Tue, Apr 14th | @ ATL | Reynaldo Lopez (3-1) | #122 | @ CIN | Brady Singer (2-6) | #160 |
| Wed, Apr 15th | @ ATL | Bryce Elder (5-3) | #105 | @ CIN | Rhett Lowder (3-3) | #186 |
| Thu, Apr 16th |   |   |   | @ CIN | Chase Burns (7-1) | #23 |
| Fri, Apr 17th | vs MIL | Coleman Crow (0-1) | #196 | @ WSH | Zack Littell (6-4) | #153 |
| Sat, Apr 18th | vs MIL | Brandon Woodruff (2-1) | #66 | @ WSH | Cade Cavalli (3-4) | #83 |
| Sun, Apr 19th | vs MIL | Jacob Misiorowski (7-2) | #12 | @ WSH | PJ Poulin (3-0) | #311 |
| Tue, Apr 21st | vs STL | Dustin May (3-6) | #70 | vs LAD | Yoshinobu Yamamoto (6-4) | #14 |
| Wed, Apr 22nd | vs STL | Kyle Leahy (5-3) | #149 | vs LAD | Shohei Ohtani (6-2) | #1 |
| Thu, Apr 23rd |   |   |   | vs LAD | Tyler Glasnow (3-0) | #38 |
| Fri, Apr 24th | @ SF | Adrian Houser (2-5) | #207 | vs MIA | Sandy Alcantara (5-4) | #63 |
| Sat, Apr 25th | @ SF | Robbie Ray (4-6) | #79 | vs MIA | Eury Perez (3-6) | #115 |
| Sun, Apr 26th | @ SF | Landen Roupp (5-6) | #71 | vs MIA | Max Meyer (6-0) | #59 |
| Tue, Apr 28th | @ LAD | Shohei Ohtani (6-2) | #1 | @ PHI | Jesus Luzardo (4-4) | #9 |
| Thu, Apr 30th |   |   |   | @ PHI | Tim Mayza | |
| Fri, May 1st | vs PHI | Zack Wheeler (5-1) | #8 | @ TB | Shane McClanahan (6-3) | #22 |
| Sat, May 2nd | vs PHI | Andrew Painter (1-7) | #167 | @ TB | Griffin Jax (1-4) | #61 |
| Sun, May 3rd | vs PHI | Jesus Luzardo (4-4) | #9 | @ TB | Steven Matz (4-3) | #100 |
| Mon, May 4th | vs PHI | Aaron Nola (3-4) | #34 | vs SD | Randy Vasquez (5-4) | #189 |
| Tue, May 5th | vs BAL | Chris Bassitt (4-4) | #125 | vs SD | Walker Buehler (3-3) | #202 |
| Wed, May 6th | vs BAL | Brandon Young (4-1) | #187 | vs SD | Bradgley Rodriguez | |
| Fri, May 8th | vs WSH | Foster Griffin (7-2) | #87 | vs PIT | Carmen Mlodzinski (4-3) | #128 |
| Sat, May 9th | vs WSH | Richard Lovelady (2-3) | #233 | vs PIT | Braxton Ashcraft (5-3) | #35 |
| Sun, May 10th | vs WSH | Cade Cavalli (3-4) | #83 | vs PIT | Bubba Chandler (2-7) | #121 |
| Mon, May 11th |   |   |   | @ LAD | Roki Sasaki (3-3) | #103 |
| Tue, May 12th | @ MIN | Bailey Ober (6-3) | #106 | @ LAD | Yoshinobu Yamamoto (6-4) | #14 |
| Wed, May 13th | @ MIN | Simeon Woods Richardson (0-7) | #296 | @ LAD | Shohei Ohtani (6-2) | #1 |
| Thu, May 14th | @ MIN | Zebby Matthews (2-3) | #78 | @ LAD | Emmet Sheehan (3-3) | #49 |
| Fri, May 15th | @ TB | Ian Seymour (3-0) | #110 | @ ATH | Aaron Civale (5-2) | #212 |
| Sat, May 16th | @ TB | Nick Martinez (5-2) | #86 | @ ATH | Luis Severino (2-6) | #168 |
| Sun, May 17th | @ TB | Drew Rasmussen (5-2) | #20 | @ ATH | Jeffrey Springs (3-6) | #123 |
| Mon, May 18th | vs ATL | JR Ritchie (1-1) | #239 | @ ARI | Zac Gallen (3-5) | #72 |
| Tue, May 19th | vs ATL | Martin Perez (4-3) | #198 | @ ARI | Ryne Nelson (2-4) | #95 |
| Wed, May 20th | vs ATL | Chris Sale (8-4) | #5 | @ ARI | Merrill Kelly (5-4) | #98 |
| Fri, May 22nd | vs NYM | Tobias Myers (0-1) | #190 | vs CWS | Davis Martin (8-2) | #84 |
| Sat, May 23rd | vs NYM | Freddy Peralta (4-4) | #25 | vs CWS | Bryan Hudson (3-2) | #179 |
| Sun, May 24th | vs NYM | Christian Scott (2-0) | #89 | vs CWS | Noah Schultz (2-4) | #220 |
| Mon, May 25th | @ TOR | Trey Yesavage (2-3) | #60 | vs ARI | Merrill Kelly (5-4) | #98 |
| Tue, May 26th | @ TOR | Braydon Fisher (2-1) | #169 | vs ARI | Eduardo Rodriguez (5-2) | #107 |
| Wed, May 27th | @ TOR | Kevin Gausman (4-4) | #21 | vs ARI | Michael Soroka (8-3) | #58 |
| Fri, May 29th | @ NYM | Freddy Peralta (4-4) | #25 | @ COL | Michael Lorenzen (2-8) | #429 |
| Sat, May 30th | @ NYM | Christian Scott (2-0) | #89 | @ COL | Ryan Feltner (2-1) | #430 |
| Sun, May 31st | @ NYM | Nolan McLean (3-4) | #32 | @ COL | Tanner Gordon (0-1) | #354 |
| Mon, Jun 1st | @ WSH | Cade Cavalli (3-4) | #83 | @ MIL | Shane Drohan (3-1) | #136 |
| Tue, Jun 2nd | @ WSH | Richard Lovelady (2-3) | #233 | @ MIL | Kyle Harrison (7-1) | #52 |
| Wed, Jun 3rd | @ WSH | Andrew Alvarez (1-0) | #174 | @ MIL | Robert Gasser (0-2) | #172 |
| Thu, Jun 4th |   |   |   | @ MIL | Coleman Crow (0-1) | #196 |
| Fri, Jun 5th | vs TB | Drew Rasmussen (5-2) | #20 | @ CHC | Edward Cabrera (3-3) | #62 |
| Sat, Jun 6th | vs TB | Shane McClanahan (6-3) | #22 | @ CHC | Ben Brown (2-2) | #45 |
| Sun, Jun 7th | vs TB | Griffin Jax (1-4) | #61 | @ CHC | Jameson Taillon (2-5) | #112 |
| Mon, Jun 8th |   |   |   | vs WSH | Miles Mikolas (1-5) | #270 |
| Tue, Jun 9th | vs ARI | Zac Gallen (3-5) | #72 | vs WSH | Andrew Alvarez (1-0) | #174 |
| Wed, Jun 10th | vs ARI | Ryne Nelson (2-4) | #95 | vs WSH | Foster Griffin (7-2) | #87 |
| Fri, Jun 12th | @ PIT | Braxton Ashcraft (5-3) | #35 | vs CHC | Ben Brown (2-2) | #45 |
| Sat, Jun 13th | @ PIT | Bubba Chandler (2-7) | #121 | vs CHC | Jameson Taillon (2-5) | #112 |
| Sun, Jun 14th | @ PIT | Paul Skenes (6-5) | #2 | vs CHC | ||
| Tue, Jun 16th | @ PHI | @ ATL | ||||
| Wed, Jun 17th | @ PHI | @ ATL | ||||
| Thu, Jun 18th |   |   |   | @ ATL | ||
| Fri, Jun 19th | vs SF | @ MIA | ||||
| Sat, Jun 20th | vs SF | @ MIA | ||||
| Sun, Jun 21st | vs SF | @ MIA | ||||
| Tue, Jun 23rd | vs TEX | vs ATH | ||||
| Wed, Jun 24th | vs TEX | vs ATH | ||||
| Thu, Jun 25th |   |   |   | vs ATH | ||
| Fri, Jun 26th | @ STL | vs ATL | ||||
| Sat, Jun 27th | @ STL | vs ATL | ||||
| Sun, Jun 28th | @ STL | vs ATL | ||||
| Mon, Jun 29th | @ COL | @ ARI | ||||
| Tue, Jun 30th | @ COL | @ ARI | ||||
| Wed, Jul 1st | @ COL | @ ARI | ||||
| Fri, Jul 3rd | @ ATH | @ COL | ||||
| Sat, Jul 4th | @ ATH | @ COL | ||||
| Sun, Jul 5th | @ ATH | @ COL | ||||
| Mon, Jul 6th |   |   |   | vs TOR | ||
| Tue, Jul 7th | vs SEA | vs TOR | ||||
| Wed, Jul 8th | vs SEA | vs TOR | ||||
| Thu, Jul 9th | vs SEA | vs COL | ||||
| Fri, Jul 10th | vs CLE | vs COL | ||||
| Sat, Jul 11th | vs CLE | vs COL | ||||
| Sun, Jul 12th | vs CLE | vs COL | ||||
| Fri, Jul 17th | @ MIL | @ SEA | ||||
| Sat, Jul 18th | @ MIL | @ SEA | ||||
| Sun, Jul 19th | @ MIL | @ SEA | ||||
| Mon, Jul 20th | @ HOU | @ KC | ||||
| Tue, Jul 21st | @ HOU | @ KC | ||||
| Wed, Jul 22nd | @ HOU | @ KC | ||||
| Fri, Jul 24th | vs SD | vs LAA | ||||
| Sat, Jul 25th | vs SD | vs LAA | ||||
| Sun, Jul 26th | vs SD | vs LAA | ||||
| Mon, Jul 27th | vs PHI | vs MIL | ||||
| Tue, Jul 28th | vs PHI | vs MIL | ||||
| Wed, Jul 29th | vs PHI | vs MIL | ||||
| Thu, Jul 30th | @ NYM | @ SD | ||||
| Fri, Jul 31st | @ NYM | @ SD | ||||
| Sat, Aug 1st | @ NYM | @ SD | ||||
| Sun, Aug 2nd | @ NYM | @ SD | ||||
| Mon, Aug 3rd |   |   |   | @ TEX | ||
| Tue, Aug 4th | @ ATL | @ TEX | ||||
| Wed, Aug 5th | @ ATL | @ TEX | ||||
| Fri, Aug 7th | vs LAA | vs DET | ||||
| Sat, Aug 8th | vs LAA | vs DET | ||||
| Sun, Aug 9th | vs LAA | vs DET | ||||
| Mon, Aug 10th |   |   |   | vs HOU | ||
| Tue, Aug 11th | vs PIT | vs HOU | ||||
| Wed, Aug 12th | vs PIT | vs HOU | ||||
| Fri, Aug 14th | @ CIN | vs COL | ||||
| Sat, Aug 15th | @ CIN | vs COL | ||||
| Sun, Aug 16th | @ CIN | vs COL | ||||
| Tue, Aug 18th | @ PHI | @ CLE | ||||
| Wed, Aug 19th | @ PHI | @ CLE | ||||
| Thu, Aug 20th |   |   |   | @ CLE | ||
| Fri, Aug 21st | vs WSH | @ BOS | ||||
| Sat, Aug 22nd | vs WSH | @ BOS | ||||
| Sun, Aug 23rd | vs WSH | @ BOS | ||||
| Mon, Aug 24th | vs BOS | vs CIN | ||||
| Tue, Aug 25th | vs BOS | vs CIN | ||||
| Wed, Aug 26th | vs BOS | vs CIN | ||||
| Thu, Aug 27th |   |   |   | vs ARI | ||
| Fri, Aug 28th | @ WSH | vs ARI | ||||
| Sat, Aug 29th | @ WSH | vs ARI | ||||
| Sun, Aug 30th | @ WSH | vs ARI | ||||
| Tue, Sep 1st | @ KC | @ PIT | ||||
| Wed, Sep 2nd | @ KC | @ PIT | ||||
| Thu, Sep 3rd | @ KC | @ PIT | ||||
| Fri, Sep 4th | vs CHC | @ NYM | ||||
| Sat, Sep 5th | vs CHC | @ NYM | ||||
| Sun, Sep 6th | vs CHC | @ NYM | ||||
| Mon, Sep 7th | vs NYM | vs STL | ||||
| Tue, Sep 8th | vs NYM | vs STL | ||||
| Wed, Sep 9th | vs NYM | vs STL | ||||
| Fri, Sep 11th | vs LAD | vs SD | ||||
| Sat, Sep 12th | vs LAD | vs SD | ||||
| Sun, Sep 13th | vs LAD | vs SD | ||||
| Mon, Sep 14th | @ ARI | @ STL | ||||
| Tue, Sep 15th | @ ARI | @ STL | ||||
| Wed, Sep 16th | @ ARI | @ STL | ||||
| Fri, Sep 18th | @ SD | @ LAD | ||||
| Sat, Sep 19th | @ SD | @ LAD | ||||
| Sun, Sep 20th | @ SD | @ LAD | ||||
| Mon, Sep 21st |   |   |   | vs MIN | ||
| Tue, Sep 22nd | @ CHC | vs MIN | ||||
| Wed, Sep 23rd | @ CHC | vs MIN | ||||
| Fri, Sep 25th | vs ATL | vs LAD | ||||
| Sat, Sep 26th | vs ATL | vs LAD | ||||
| Sun, Sep 27th | vs ATL | vs LAD | ||||
| Sun, Mar 29th | vs COL | Jose Quintana (2-3) | #431 |   |   |   |
| Thu, Apr 9th | vs CIN | Rhett Lowder (3-3) | #186 |   |   |   |
| Mon, Apr 13th | @ ATL | Grant Holmes (4-2) | #127 |   |   |   |
| Mon, Apr 20th | vs STL | Michael McGreevy (3-5) | #85 |   |   |   |
| Mon, Apr 27th | @ LAD | Yoshinobu Yamamoto (6-4) | #14 |   |   |   |
| Wed, Apr 29th | @ LAD | Tyler Glasnow (3-0) | #38 |   |   |   |
| Thu, May 7th | vs BAL | Cade Povich (1-1) | #232 |   |   |   |
| Thu, May 21st | vs ATL | Spencer Strider (4-1) | #29 |   |   |   |
| Thu, Jun 11th | vs ARI | Merrill Kelly (5-4) | #98 |   |   |   |
| Mon, Jun 15th | @ PHI | Zack Wheeler (5-1) | #8 |   |   |   |
| Mon, Jun 22nd | vs TEX |   |   |   | ||
| Thu, Jul 2nd | @ COL |   |   |   | ||
| Thu, Aug 6th | @ ATL |   |   |   | ||
| Thu, Aug 13th | vs PIT |   |   |   | ||
| Mon, Aug 17th | @ PHI |   |   |   | ||
| Mon, Aug 31st | @ WSH |   |   |   | ||
| Thu, Sep 24th | @ CHC |   |   |   | ||

