The 2021 Philadelphia Phillies season was the 139th season in the history of the franchise, and its 18th season at Citizens Bank Park. With a 5–3 loss to the Atlanta Braves on September 30, they were mathematically eliminated from postseason contention for the tenth straight season. This was the first season since exactly a decade earlier in 2011 when the Phillies would finish a season with a winning record, which they clinched with a 5–0 victory over the Miami Marlins on October 1. As of 2026, this is the most recent season that the Phillies have failed to qualify for the postseason.

Preceding offseason Player transactions Players becoming free agents Right-hand pitcher Jake Arrieta – Signed with the Chicago Cubs on February 13, 2021. Right-hand pitcher Brandon Workman – Signed with the Chicago Cubs on February 18, 2021. Left-hand pitcher José Álvarez – Signed with the San Francisco Giants on March 6, 2021. Right-hand pitcher Tommy Hunter – Signed a minor-league contract with the New York Mets on February 14, 2021. Outfielder and first baseman Jay Bruce – Signed a minor-league contract with the New York Yankees on February 13, 2021. Shortstop Didi Gregorius – Re-signed with the Phillies on February 10, 2021. Catcher J. T. Realmuto – Re-signed with the Phillies on January 29, 2021.

Acquisitions The Phillies' first offseason acquisition was right-hand pitcher Ian Hamilton, who was claimed off waivers from the Seattle Mariners on December 7. Three days later, on December 10, the team selected New York Yankees shortstop Kyle Holder in the Rule 5 draft.

Coaching changes Pitching coach Bryan Price retired in October 2020, one season into a three-year deal. The Phillies hired former Cincinnati Reds assistant pitching coach Caleb Cotham in his stead; the hire was formally announced on November 20, 2020. The Phillies finalized their pitching staff on January 11, 2021, with two additional changes: assistant pitching coach Dave Lundquist became the bullpen coach, leaving his old position vacant, and former advanced scouting manager Mike Calitri became the quality assurance coach.

Return to in-person attendance Due to the COVID-19 pandemic, no fans were in attendance at any MLB games in 2020 until the National League Championship Series. On November 12, 2020, Commissioner of Baseball Rob Manfred said that the MLB would be "more aggressive" about having fans in ballparks, but that in-person attendance was still dependent on local public health authorities. On March 2, the City of Philadelphia announced that, beginning on Opening Day, Citizens Bank Park would be allowed to host fans at 20% capacity (8,800 attendees). Citizens Bank Park implemented a new set of rules for all game attendees, including a face mask requirement, a ban on backpacks and purses, and the use of cashless payments at concession stands and team stores. Additionally, attendees were to be seated in "pods" of between two and six seats, evenly dispersed across the ballpark. All other seats were cordoned off to enforce social distancing.

As COVID-19 restrictions in the city of Philadelphia began to abate, the Phillies announced on May 13 that the capacity limits at Citizens Bank Park would increase from 11,000 to 16,000 on May 21, and that the park would open to full capacity on June 12. After the Philadelphia Department of Public Health announced that most COVID-19 restrictions would be lifted on June 2, the Phillies amended their earlier statement, and began allowing 100% capacity beginning on June 4. Additionally, tailgating in the parking lot was allowed to commence on June 4, and attendees were no longer required to wear face coverings in outdoor areas of the park.

Regular season

Season standings

National League East

National League Wild Card

Record vs. opponents

Game log Legend Phillies win Phillies loss PostponementBoldPhillies team member

|- style="background:#bfb;" | 1 || April 1 || Braves || 3–2 || Connor Brogdon (1–0) || Nate Jones (0–1) || — || 8,529 || 1–0 |- style="background:#bfb;" | 2 || April 3 || Braves || 4–0 || Zack Wheeler (1–0) || Charlie Morton (0–1) || — || 8,582 || 2–0 |- style="background:#bfb;" | 3 || April 4 || Braves || 2–1 || José Alvarado (1–0) || Chris Martin (0–1) || Héctor Neris (1) || 10,773 || 3–0 |- style="background:#bfb;" | 4 || April 5 || Mets || 5–3 || Connor Brogdon (2–0) || Trevor May (0–1) || José Alvarado (1) || 10,782 || 4–0 |- style="background:#fbb;" | 5 || April 6 || Mets || 4–8 || Marcus Stroman (1–0) || Chase Anderson (0–1) || — || 10,752 || 4–1 |- style="background:#bfb;" | 6 || April 7 || Mets || 8–2 || Connor Brogdon (3–0) || David Peterson (0–1) || — || 10,807 || 5–1 |- style="background:#fbb;" | 7 || April 9 || @ Braves || 1–8 || Charlie Morton (1–1) || Zack Wheeler (1–1) || — || 14,342 || 5–2 |- style="background:#fbb;" | 8 || April 10 || @ Braves || 4–5 || Sean Newcomb (1–0) || Archie Bradley (0–1) || Will Smith (2) || 14,394 || 5–3 |- style="background:#bfb;" | 9 || April 11 || @ Braves || 7–6 || José Alvarado (2–0) || Will Smith (0–2) || Héctor Neris (2) || 14,221 || 6–3 |- style="background:#bbb;" | – || April 12 || @ Mets || colspan=6 | Postponed (rain); Makeup: April 13 as a straight doubleheader |- style="background:#fbb;" | 10 || April 13 || @ Mets || 3–4 () || Trevor May (1–1) || Héctor Neris (0–1) || — || || 6–4 |- style="background:#fbb;" | 11 || April 13 || @ Mets || 0–4 || Marcus Stroman (2–0) || Aaron Nola (0–1) || — || 7,611 || 6–5 |- style="background:#fbb;" | 12 || April 14 || @ Mets || 1–5 || David Peterson (1–1) || Zack Wheeler (1–2) || — || 7,520 || 6–6 |- style="background:#bbb;" | – || April 15 || @ Mets || colspan=6 | Postponed (rain); Makeup: June 25 as a straight doubleheader |- style="background:#bfb;" | 13 || April 16 || Cardinals || 9–2 || Zach Eflin (1–0) || Carlos Martínez (0–3) || — || 10,842 || 7–6 |- style="background:#fbb;" | 14 || April 17 || Cardinals || 4–9 || Ryan Helsley (2–0) || Matt Moore (0–1) || — || 10,890 || 7–7 |- style="background:#bfb;" | 15 || April 18 || Cardinals || 2–0 || Aaron Nola (1–1) || John Gant (0–2) || — || 10,876 || 8–7 |- style="background:#fbb;" | 16 || April 19 || Giants || 0–2 || Kevin Gausman (1–0) || Chase Anderson (0–2) || Wandy Peralta (2) || 9,510 || 8–8 |- style="background:#fbb;" | 17 || April 20 || Giants || 7–10 || José Álvarez (1–1) || Connor Brogdon (3–1) || — || 10,584 || 8–9 |- style="background:#bfb;" | 18 || April 21 || Giants || 6–5 || Héctor Neris (1–1) || Wandy Peralta (2–1) || — || 9,537 || 9–9 |- style="background:#fbb;" | 19 || April 23 || @ Rockies || 4–5 || Mychal Givens (1–1) || Héctor Neris (1–2) || — || 14,025 || 9–10 |- style="background:#bfb;" | 20 || April 24 || @ Rockies || 7–5 || Aaron Nola (2–1) || Jhoulys Chacín (0–1) || Héctor Neris (3) || 20,214 || 10–10 |- style="background:#fbb;" | 21 || April 25 || @ Rockies || 2–12 || Jon Gray (3–1) || Chase Anderson (0–3) || — || 20,244 || 10–11 |- style="background:#bfb;" | 22 || April 26 || @ Cardinals || 2–1 || Zack Wheeler (2–2) || Adam Wainwright (0–3) || Héctor Neris (4) || 12,866 || 11–11 |- style="background:#fbb;" | 23 || April 27 || @ Cardinals || 2–5 || Carlos Martínez (1–4) || Zach Eflin (1–1) || Alex Reyes (6) || 12,895 || 11–12 |- style="background:#bfb;" | 24 || April 28 || @ Cardinals || 5–3 || Brandon Kintzler (1–0) || Génesis Cabrera (0–1) || Héctor Neris (5) || 12,701 || 12–12 |- style="background:#fbb;" | 25 || April 29 || @ Cardinals || 3–4 || Alex Reyes (1–0) || David Hale (0–1) || — || 13,159 || 12–13 |- style="background:#bfb;" | 26 || April 30 || Mets || 2–1 || Chase Anderson (1–3) || Marcus Stroman (3–2) || Sam Coonrod (1) || 10,914 || 13–13

|- style="background:#fbb;" | 27 || May 1 || Mets || 4–5 || Trevor May (2–1) || Héctor Neris (1–3) || Edwin Díaz (3) || 10,948 || 13–14 |- style="background:#fbb;" | 28 || May 2 || Mets || 7–8 || Jacob Barnes (1–0) || Brandon Kintzler (1–1) || Jeurys Familia (1) || 10,964 || 13–15 |- style="background:#bfb;" | 29 || May 3 || Brewers || 4–3 || Vince Velasquez (1–0) || Adrian Houser (2–3) || Héctor Neris (6) || 10,651 || 14–15 |- style="background:#bfb;" | 30 || May 4 || Brewers || 6–5 || Aaron Nola (3–1) || Eric Lauer (1–1) || Sam Coonrod (2) || 10,388 || 15–15 |- style="background:#bfb;" | 31 || May 5 || Brewers || 5–4 || Brandon Kintzler (2–1) || Freddy Peralta (3–1) || José Alvarado (2) || 10,110 || 16–15 |- style="background:#bfb;" | 32 || May 6 || Brewers || 2–0 || Zack Wheeler (3–2) || Brandon Woodruff (2–1) || — || 10,768 || 17–15 |- style="background:#bfb;" | 33 || May 7 || @ Braves || 12–2 || Zach Eflin (2–1) || Charlie Morton (2–2) || — || 38,952 || 18–15 |- style="background:#fbb;" | 34 || May 8 || @ Braves || 7–8 || Jacob Webb (1–1) || Enyel De Los Santos (0–1) || — || 39,852 || 18–16 |- style="background:#fbb;" | 35 || May 9 || @ Braves || 1–6 || Huascar Ynoa (4–1) || Aaron Nola (3–2) || — || 28,829 || 18–17 |- style="background:#bfb;" | 36 || May 11 || @ Nationals || 6–2 || Chase Anderson (2–3) || Erick Fedde (2–4) || — || 8,559 || 19–17 |- style="background:#bfb;" | 37 || May 12 || @ Nationals || 5–2 || José Alvarado (3–0) || Brad Hand (2–2) || Héctor Neris (7) || 8,610 || 20–17 |- style="background:#fbb;" | 38 || May 13 || @ Nationals || 1–5 || Patrick Corbin (2–3) || Zach Eflin (2–2) || — || 8,710 || 20–18 |- style="background:#bfb;" | 39 || May 14 || @ Blue Jays || 5–1 || Connor Brogdon (4–1) || Trent Thornton (1–1) || — || 1,171 || 21–18 |- style="background:#fbb;" | 40 || May 15 || @ Blue Jays || 0–4 || Travis Bergen (2–0) || Aaron Nola (3–3) || — || 1,397 || 21–19 |- style="background:#fbb;" | 41 || May 16 || @ Blue Jays || 8–10 || Robbie Ray (2–1) || Chase Anderson (2–4) || — || 1,107 || 21–20 |- style="background:#bfb;" | 42 || May 18 || Marlins || 8–3 || Archie Bradley (1–1) || Dylan Floro (2–2) || — || 11,114 || 22–20 |- style="background:#fbb;" | 43 || May 19 || Marlins || 1–3 || Trevor Rogers (6–2) || Zach Eflin (2–3) || Yimi García (8) || 11,549 || 22–21 |- style="background:#fbb;" | 44 || May 20 || Marlins || 0–6 || Sandy Alcántara (2–3) || David Hale (0–2) || — || 11,503 || 22–22 |- style="background:#fbb;" | 45 || May 21 || Red Sox || 3–11 || Martín Pérez (2–2) || Aaron Nola (3–4) || — || 15,279 || 22–23 |- style="background:#fbb;" | 46 || May 22 || Red Sox || 3–4 || Nathan Eovaldi (5–2) || Spencer Howard (0–1) || Matt Barnes (11) || 15,424 || 22–24 |- style="background:#bfb;" | 47 || May 23 || Red Sox || 6–2 || Zack Wheeler (4–2) || Eduardo Rodríguez (5–3) || — || 15,360 || 23–24 |- style="background:#fbb;" | 48 || May 24 || @ Marlins || 6–9 || Adam Cimber (1–1) || Zach Eflin (2–4) || Dylan Floro (1) || 4,527 || 23–25 |- style="background:#bfb;" | 49 || May 25 || @ Marlins || 2–0 || Vince Velasquez (2–0) || Sandy Alcántara (2–4) || Héctor Neris (8) || 4,864 || 24–25 |- style="background:#fbb;" | 50 || May 26 || @ Marlins || 2–4 || Ross Detwiler (1–0) || Sam Coonrod (0–1) || Yimi García (9) || 4,760 || 24–26 |- style="background:#bfb;" | 51 || May 27 || @ Marlins || 3–2 || José Alvarado (4–0) || Yimi García (3–3) || Héctor Neris (9) || 4,932 || 25–26 |- style="background:#fbb;" | 52 || May 29 || @ Rays || 3–5 || Diego Castillo (2–2) || Sam Coonrod (0–2) || J. P. Feyereisen (2) || 7,316 || 25–27 |- style="background:#fbb;" | 53 || May 30 || @ Rays || 2–6 || Josh Fleming (5–3) || Zach Eflin (2–5) || — || 7,479 || 25–28 |- style="background:#fbb;" | 54 || May 31 || @ Reds || 1–11 || Wade Miley (5–4) || Vince Velasquez (2–1) || — || 17,878 || 25–29

|- style="background:#bfb;" | 55 || June 1 || @ Reds || 17–3 || Aaron Nola (4–4) || Sonny Gray (1–4) || — || 10,788 || 26–29 |- style="background:#bbb | – || June 2 || @ Reds || colspan=6 | Postponed (rain); Makeup: June 28 |- style="background:#fbb;" | 56 || June 4 || Nationals || 1–2 || Max Scherzer (5–4) || Zack Wheeler (4–3) || Brad Hand (10) || 15,030 || 26–30 |- style="background:#bfb;"