The 2025 St. Louis Cardinals season was the 144th season for the St. Louis Cardinals, a Major League Baseball franchise in St. Louis, Missouri. It was the 134th season for the Cardinals in the National League and their 20th at Busch Stadium III. On September 24, the Cardinals were eliminated from postseason contention for the third consecutive season.
For the first time since 2018, Paul Goldschmidt was not on the roster, as he signed with the Yankees in free agency.
After the season, longtime President of Baseball Operations John Mozeliak stepped down and Chaim Bloom took over.
The St. Louis Cardinals drew an average home attendance of 27,777, the 19th-highest of all MLB teams.https://www.espn.com/mlb/attendance/_/year/2025
Season standings
National League Central
National League Wild Card
Record vs. opponents Record vs. National League
Record vs. American League
Game log The Cardinals released their 2025 schedule on July 18, 2024. For one of the few times in the past dozen years, the Cardinals opened the regular season at home for 2025, hosting the Minnesota Twins on Opening Day, March 27, at Busch Stadium, in its 20th season. They visited the oldest MLB-regular season stadium, Boston's Fenway Park (1912) on April 4–6, before their first National League series on April 7–9 at Pittsburgh. The season ended with a September 26–28 weekend at the second-oldest MLB-regular season stadium, Chicago's Wrigley Field (1914).
Legend Cardinals Win Cardinals Loss Game postponed Eliminated from playoff race Boldface text denotes a Cardinals pitcher
|- style="background:#bfb;" | 1 || March 27 || Twins || 5–3 || Gray (1–0) || López (0–1) || Helsley (1) || 47,398 || 1–0 || W1 |- style="background:#bfb;" | 2 || March 29 || Twins || 5–1 || Fedde (1–0) || Alcalá (0–1) || — || 30,712 || 2–0 || W2 |- style="background:#bfb;" | 3 || March 30 || Twins || 9–2 || Pallante (1–0) || Ober (0–1) || Matz (1) || 26,923 || 3–0 || W3 |- style="background:#fbb;" | 4 || March 31 || Angels || 4–5 || Burke (1–0) || Romero (0–1) || Johnson (1) || 21,206 || 3–1 || L1 |- style="background:#fbb;" | 5 || April 1 || Angels || 7–9 || Johnson (1–0) || Roycroft (0–1) || Zeferjahn (1) || 21,306 || 3–2 || L2 |- style="background:#bfb;" | 6 || April 2 || Angels || 12–5 || Romero (1–1) || Anderson (0–1) || — || 20,309 || 4–2 || W1 |- style="background:#fbb;" | 7 || April 4 || @ Red Sox || 9–13 || Buehler (1–1) || Fedde (1–1) || Chapman (2) || 36,462 || 4–3 || L1 |- style="background:#bbb;" | ― || April 5 || @ Red Sox || colspan=9| Postponed (rain); Makeup: April 6 |- style="background:#fbb;" | 8 || April 6 || @ Red Sox || 4–5 || Chapman (2–0) || Fernandez (0–1) || — || 31,495 || 4–4 || L2 |- style="background:#fbb;" | 9 || April 6 || @ Red Sox || 7–18 || Dobbins (1–0) || Mikolas (0–1) || Criswell (1) || 28,276 || 4–5 || L3 |- style="background:#fbb;" | 10 || April 7 || @ Pirates || 4–8 || Mlodzinski (1–1) || Liberatore (0–1) || Harrington (1) || 8,250 || 4–6 || L4 |- style="background:#bfb;" | 11 || April 8 || @ Pirates || 5–3 || Gray (2–0) || Skenes (1–1) || Maton (1) || 8,291 || 5–6 || W1 |- style="background:#fbb;" | 12 || April 9 || @ Pirates || 1–2 || Lawrence (1–0) || Roycroft (0–2) || — || 8,430 || 5–7 || L1 |- style="background:#bfb;" | 13 || April 11 || Phillies || 2–0 || Pallante (2–0) || Nola (0–3) || Helsley (2) || 32,309 || 6–7 || W1 |- style="background:#fbb;" | 14 || April 12 || Phillies || 1–4 || Sánchez (1–0) || Mikolas (0–2) || Alvarado (3) || 30,791 || 6–8 || L1 |- style="background:#bfb;" | 15 || April 13 || Phillies || 7–0 || Liberatore (1–1) || Wheeler (1–1) || — || 32,509 || 7–8 || W1 |- style="background:#bfb;" | 16 || April 14 || Astros || 8–3 || Gray (3–0) || Valdez (1–2) || — || 21,977 || 8–8 || W2 |- style="background:#fbb;" | 17 || April 15 || Astros || 0–2 || Brown (2–1) || Fedde (1–2) || Hader (4) || 22,285 || 8–9 || L1 |- style="background:#bfb;" | 18 || April 16 || Astros || 4–1 || Matz (1–0) || Blanco (1–2) || Helsley (3) || 30,360 || 9–9 || W1 |- style="background:#fbb;" | 19 || April 17 || @ Mets || 1–4 || Canning (2–1) || Pallante (2–1) || Díaz (4) || 38,246 || 9–10 || L1 |- style="background:#fbb;" | 20 || April 18 || @ Mets || 4–5 || Brazobán (1–0) || Fernandez (0–2) || — || 39,627 || 9–11 || L2 |- style="background:#fbb;" | 21 || April 19 || @ Mets || 0–3 || Senga (3–1) || Liberatore (1–2) || Díaz (5) || 42,339 || 9–12 || L3 |- style="background:#fbb;" | 22 || April 20 || @ Mets || 4–7 || Buttó (2–0) || Romero (1–2) || — || 38,347 || 9–13 || L4 |- style="background:#fbb;" | 23 || April 21 || @ Braves || 6–7 || Hernández (2–0) || Maton (0–1) || — || 30,180 || 9–14 || L5 |- style="background:#bfb;" | 24 || April 22 || @ Braves || 10–4 || Matz (2–0) || De Los Santos (1–1) || — || 35,876 || 10–14 || W1 |- style="background:#fbb;" | 25 || April 23 || @ Braves || 1–4 || Hernández (3–0) || Romero (1–3) || — || 34,009 || 10–15 || L1 |- style="background:#bfb;" | 26 || April 25 || Brewers || 3–2 || Liberatore (2–2) || Patrick (1–2) || Helsley (4) || 24,437 || 11–15 || W1 |- style="background:#bfb;" | 27 || April 26 || Brewers || 6–5 || Helsley (1–0) || Megill (0–2) || — || 35,316 || 12–15 || W2 |- style="background:#fbb;" | 28 || April 27 || Brewers || 1–7 || Quintana (4–0) || Fedde (1–3) || — || 32,403 || 12–16 || L1 |- style="background:#fbb;" | 29 || April 28 || @ Reds || 1–3 || Martinez (1–3) || Pallante (2–2) || Pagán (8) || 15,147 || 12–17 || L2 |- style="background:#bbb;' | ― || April 29 || @ Reds || colspan=9| Postponed (rain); Makeup: April 30 |- style="background:#bfb;" | 30 || April 30 || @ Reds || 6–0 || Mikolas (1–2) || Singer (4–1) || — || 15,709 || 13–17 || W1 |- style="background:#bfb;" | 31 || April 30 || @ Reds || 9–1 || Graceffo (1–0) || Petty (0–1) || — || 13,550 || 14–17 || W2
|- style="background:#fbb;" | 32 || May 1 || @ Reds || 1–9 || Ashcraft (2–2) || Liberatore (2–3) || — || 15,513 || 14–18 || L1 |- style="background:#fbb;" | 33 || May 2 || Mets || 3–9 || Holmes (4–1) || Gray (3–1) || — || 27,966 || 14–19 || L2 |- style="background:#bbb;" | ― || May 3 || Mets || colspan=9| Postponed (rain); Makeup: May 4 |- style="background:#bfb;" | 34 || May 4 || Mets || 6–5 || Fedde (2–3) || Tidwell (0–1) || Helsley (5) || 37,735 || 15–19 || W1 |- style="background:#bfb;" | 35 || May 4 || Mets || 5–4 || McGreevy (1–0) || Kranick (2–1) || — || 30,313 || 16–19 || W2 |- style="background:#bfb;" | 36 || May 5 || Pirates || 6–3 || Graceffo (2–0) || Shugart (1–2) || Helsley (6) || 22,369 || 17–19 || W3 |- style="background:#bfb;" | 37 || May 6 || Pirates || 2–1 || Liberatore (3–3) || Skenes (3–4) || Graceffo (1) || 25,307 || 18–19 || W4 |- style="background:#bfb;" | 38 || May 7 || Pirates || 5–0 || Gray (4–1) || Keller (1–4) || — || 27,453 || 19–19 || W5 |- style="background:#bfb;" | 39 || May 9 || @ Nationals || 10–0 || Fedde (3–3) || Parker (3–3) || — || 27,849 || 20–19 || W6 |- style="background:#bfb;" | 40 || May 10 || @ Nationals || 4–2 || Pallante (3–2) || Williams (2–4) || Helsley (7) || 37,796 || 21–19 || W7 |- style="background:#bfb;" | 41 || May 11 || @ Nationals || 6–1 || Mikolas (2–2) || Gore (2–4) || — || 20,585 || 22–19 || W8 |-style="background:#bfb;" | 42 || May 12 || @ Phillies || 3–2 || Leahy (1–0) || Strahm (1–2) || Helsley (8) || 42,513 || 23–19 || W9 |- style="background:#bbb;" | – || May 13 || @ Phillies || colspan=7 | Postponed (rain); Makeup: May 14 as a split double-header |- style="background:#fbb;" | 43 || May 14 || @ Phillies || 1–2 || Luzardo (4–0) || Matz (2–1) || Romano (4) || 40,773 || 23–20 || L1 |- style="background:#bfb;" | 44 || May 14 || @ Phillies || 14–7 || Roycroft (1–2) || Nola (1–7) || — || 35,150 || 24–20 || W1 |- style="background:#bfb;" | 45 || May 16 || @ Royals || 10–3 || Pallante (4–2) || Ragans (2–3) || — || 28,104 || 25–20 || W2 |- style="background:#bfb;" | 46 || May 17 || @ Royals || 1–0 || Mikolas (3–2) || Cameron (1–1) || Helsley (9) || 36,139 || 26–20 || W3 |- style="background:#fbb;" | 47 || May 18 || @ Royals || 1–2 || Erceg (1–0) || Roycroft (1–3) || Estévez (13) || 25,695 || 26–21 || L1 |- style="background:#bfb;" | 48 || May 19 || Tigers || 11–4 || Gray (5–1) || Guenther (0–1) || — || 24,817 || 27–21 || W1 |- style="background:#fbb;" | 49 || May 20 || Tigers || 4–5 || Vest (4–0) || Leahy (1–1) || Kahnle (6) || 31,766 || 27–22 || L1 |-style="background:#fbb;" | 50 || May 21 || Tigers || 1–5 || Lee (1–0) || Pallante (4–3) || — || 28,990 || 27–23 || L2 |- style="background:#bfb;" | 51 || May 23 || Diamondbacks || 4–3 || Mikolas (4–2) || Gallen (3–6) || Helsley (10) || 34,214 || 28–23 || W1 |-style="background:#bfb;" | 52 || May 24 || Diamondbacks || 6–5 || Helsley (2–0) || Martínez (1–2) || — || 37,380 || 29–23 || W2 |-style="background:#bfb;" | 53 || May 25 || Diamondbacks || 4–3 || King (1–0) || Ginkel (0–2) || Maton (2) || 36,437 || 30–23 || W3 |-style="background:#fbb;" | 54 || May 26 || @ Orioles || 2–5 || Morton (1–7) || Fedde (3–4) || Bautista (8) || 21,717 || 30–24 || L1 |-style="background:#bfb;" | 55 || May 27 || @ Orioles || 7–4 || Matz (3–1) || Baker (3–1) || Helsley (11) || 13,779 || 31–24 || W1 |-style="background:#bfb;" | 56 || May 28 || @ Orioles || 6–4 || King (2–0) || Povich (1–4) || Helsley (12) || 14,491 || 32–24 || W2 |-style="background:#fbb;" | 57 || May 30 || @ Rangers || 1–11 || Leiter (4–2) || Liberatore (3–4) || Boushley (1) || 28,679 || 32–25 || L1 |-style="background:#bfb;" | 58 || May 31 || @ Rangers || 2–0 || Gray (6–1) || Corbin (3–4) || Helsley (13) || 29,062 || 33–25 || W1
|-style="background:#fbb;" | 59 || June 1 || @ Rangers || 1–8 || deGrom (5–2) || Fedde (3–5) || — || 28,138 || 33–26 || L1 |-style="background:#fbb;" | 60 || June 3 || Royals || 7–10 || Cruz (2–0) || Matz (3–2) || Estévez (17) || 26,656 || 33–27 || L2 |-style="background:#bbb;" | ― || June 4 || Royals || colspan=9| Postponed (rain); Makeup: June 5 |-style="background:#bfb;" | 61 || June 5 || Royals || 6–5 || Romero (2–3) || Estévez (2–1) || — || 21,657 || 34–27 || W1 |-style="background:#fbb;" | 62 || June 5 || Royals || 5–7 || Zerpa (3–0) || Liberatore (3–5) || Estévez (18) || 31,038 || 34–28 || L1 |-style="background:#bfb;" | 63 || June 6 || Dodgers || 5–0 || Gray (7–1) || Wrobleski (1–2) || — || 40,071 || 35–28 || W1 |-style="background:#bfb;" | 64 || June 7 || Dodgers || 2–1 || Helsley (3–0) || Casparius (4–1) || — || 37,465 || 36–28 || W2 |-style="background:#fbb;" | 65 || June 8 || Dodgers || 3–7 || Kershaw (1–0) || McGreevy (1–1) || — || 42,255 || 36–29 || L1 |-style="background:#fbb;" | 66 || June 9 || Blue Jays || 4–5 || Rodríguez (1–0) || Maton (0–2) || Hoffman (16) || 30,851 || 36–30 || L2 |-style="background:#fbb;" | 67 || June 10 || Blue Jays || 9–10 || Bassitt (7–3) || Mikolas (4–3) || Hoffman (17) || 29,278 || 36–31 || L3 |-style="background:#fbb;" | 68 || June 11 || Blue Jays || 2–5 || Turnbull (1–0) || Liberatore (3–6) || Rodríguez (1) || 28,530 || 36–32 || L4 |-style="background:#fbb;" | 69 || June 12 || @ Brewers || 0–6 || Misiorowski (1–0) || Gray (7–2) || Ashby (1) || 27,687 || 36–33 || L5 |-style="background:#fbb;" | 70 || June 13 || @ Brewers || 2–3 || Peralta (6–4) || Fedde (3–6) || Megill (14) || 30,026 || 36–34 || L6 |-style="background:#bfb;" | 71 || June 14 || @ Brewers || 8–5 || Leahy (2–1) || Quintana (4–2) || — || 39,017 || 37–34 || W1 |-style="background:#fbb;" | 72 || June 15 || @ Brewers || 2–3 || Priester (5–2) || Mikolas (4–4) || Megill (15) || 40,629 || 37–35 || L1 |-style="background:#bfb;" | 73 || June 17 || @ White Sox || 12–2 || Liberatore (4–6) || Smith (3–4) || — || 16,974 || 38–35 || W1 |-style="background:#bbb;" | – || June 18 || @ White Sox || colspan=9| Postponed (rain); Makeup: June 19 |-style="background:#bfb;" | 74 || June 19 || @ White Sox || 5–4 || Granillo (1–0) || Booser (1–4) || Helsley (14) || || 39–35 || W2 |-style="background:#bfb;"