The 2023 season was the inaugural season for St. Louis City SC. It is the club's first season in existence, their first in the top-tier of American soccer, and their first season in Major League Soccer. During the regular season, City SC became the first expansion team to win its conference, finishing first in the Western Conference, and earned the most wins; the team fell short of the all-time points record for an expansion team set by Los Angeles FC in 2018. Head coach Bradley Carnell used 32 different starting lineups during the regular season's 34 matches.

2023 was the first year since 1977 that a top division club from Greater St. Louis played in the first tier of U.S. soccer, the last being the St. Louis Stars who played in the North American Soccer League from 1968 until 1977, and the old National Professional Soccer League in 1967.

Outside of MLS play, St. Louis City SC also participated in the U.S. Open Cup and the 2023 Leagues Cup.

Drafts Expansion Draft CITY were allowed to select 5 players from a list of 23 teams as part of building out their inaugural roster in the 2022 MLS Expansion Draft.

Name Age Selected from Status Niko Gioachinni 21 Orlando City SC Signed Indiana Vassilev 21 Inter Miami CF Signed Jon Bell 25 New England Revolution Signed John Nelson 24 FC Cincinnati Signed Jake LaCava 21 New York Red Bulls Traded(Inter Miami CF)

Summary February and March

St. Louis City SC opened their inaugural MLS season on the road Feb 25 at Austin FC. Tim Parker opened up the scoring by heading home the first goal in franchise history, coming off a corner kick in the 24th minute. After going down 2–1, St. Louis City SC got second-half goals from Jared Stroud (78’) and João Klauss (86’) to come from behind and earn their first win as a franchise, 3–2. St. Louis City SC midfielder Indiana Vassilev suffered a broken nose in the 17th minute.

The following week, Mar 4, Charlotte FC came to town to open CityPark for the first home game in franchise history. Enzo Copetti scored the first goal in CityPark history (25’) to give Charlotte a 1–0 lead, but a Bill Tuiloma own goal (41’) and an Eduard Löwen PK (45+5’) gave St. Louis City SC a 2–1 lead heading into halftime. João Klauss (71’) closed out the scoring to give St. Louis City SC a 3–1 win, their first home win as a franchise. With the win, St. Louis City SC became just the fourth expansion team to start their existence 2–0. Indiana Vassilev returned while wearing a mask in the 73rd minute.

St. Louis City SC's second away game came March 11 at Portland Timbers. A quick Timbers goal to start the game put St. Louis City SC behind 1–0, but Jared Stroud tied it up in first half stoppage time (45+1’). What looked like a good potential road draw in a tough environment turned into St. Louis City SC's 3rd win out of 3 when Kyle Hiebert headed in (75’) an Eduard Löwen free kick to put St. Louis City SC ahead 2–1. This was not only their 3rd come-from-behind win, but also tied the 2009 Seattle Sounders for most wins by an expansion franchise to start a season (3–0–0).

San Jose Earthquakes came to CityPark March 18 for Matchday 4. Goals from Niko Gioacchini (34’), João Klauss (45+3) and Tomáš Ostrák (68’) led to a 3–0 win — St. Louis City SC's 4th straight, and first Clean Sheet in franchise history. The win set a new record for an expansion franchise start at 4–0–0.

A trip to Real Salt Lake on March 25 finished out the month of March. St. Louis City SC were in good form coming off the 3–0 win the previous week. After a 0–0 first half, Niko got the scoring started in the 47th minute, followed by 2 goals from Klauss (61’, 66’) and a finisher from Rasmus Alm (76’) to cap a 4–0 win. It was Roman Bürki's second Clean Sheet of the season and St. Louis City SC's 5th straight win, further extending the new record for most wins by an expansion franchise to start a season at 5–0–0.

April Coming home for April Fools' Day, St. Louis City SC had the tough task of breaking apart Minnesota United's low block system. The game was 0–0 late and was inching towards St. Louis City SC's first draw on the year. However, a foul in the box by Kyle Hiebert in the 76th minute led to a penalty kick, which was converted to give Minnesota a 1–0 lead. Despite a flurry of an attack at the end of the game and a great chance on goal by Sam Adeniran, Minnesota held on to give St. Louis City SC their first loss on the season. Of note, Njabulo Blom joined the team for the first time since Match 2 against Charlotte FC, coming on as a sub in the 60th minute. He had missed the previous 3 games due to COVID.

What many penciled in as St. Louis City SC's first true test of the season came on Matchday 7 at Seattle Sounders FC the following week, Apr 8. For the first half, St. Louis City SC were up to the task, taking a 0–0 game into the locker room. But just after the hour mark Josh Atencio scored a screamer to put the Sounders ahead 1–0. From there, momentum and strategy shifted. St. Louis City SC were on the back foot and conceded a second goal at 71’. With the game in hand Seattle capped off a 3–0 win with help from a Jake Nerwinski own goal (another St. Louis City SC first) at 89’. Of note, Njabulo Blom came off in the 64th minute with a groin injury and would miss 5–6 weeks.

Following two straight losses, St. Louis City SC had another tough task welcoming FC Cincinnati to CityPark on Apr 15. At the time, both teams had led the Supporters Shield race at one point in the season with St. Louis City SC carrying a 5–2–0 record, while Cincy came in undefeated at 5–0–2. Just prior to the game a line of thunderstorms ripped through the St. Louis area setting off tornado sirens downtown at CityPark. The game was delayed for hours while fans took shelter in nearby bars and Union Station. By 10 pm local time, the storms had passed and the field was ready for playing. St. Louis City SC did not waste any more time to get on the scoresheet, with Jared Stroud's 3rd goal of the year coming in just the 3rd minute of play. St. Louis City SC added two more goals in the first half from Löwen (39’) and Hiebert (45+2’) to lead 3–0. The second half was much the same. A quick goal by Niko at 53’ and an own goal on GK Roman Celentano (57’; shot by Rasmus Alm) put St. Louis City SC up 5-0 inside an hour. Cincy did respond five minutes later with a goal by Sergio Santos at 62’, but that ended the scoring on the night with a 5–1 St. Louis City SC win and a move back into 1st place in the Shield race.

Matchday 9 on Apr 22 at Colorado Rapids wasn't going to be an easy task and St. Louis City SC wouldn't come away unscathed. After a quiet, 0–0 first half Rasmus Alm gave St. Louis City SC the lead in the 57th minute. Not long after, in the 61st minute, João Klauss went down away from play rubbing his quad and was subbed off due to injury. Colorado made wholesale changes at 70’ to change the dynamic of the game. Roman Bürki was truly tested for the rest of the half. One of those Colorado subs, Michael Barrios, got the equalizer in stoppage time to give St. Louis City SC their first draw in franchise history. Klauss, initially thought to be out 10–14 days, would end up missing 17 weeks and 14 games due to the injury.

While St. Louis has a long and storied history with the U.S. Open Cup, going back over 100 years, St. Louis City SC's first game in the tournament came on Tuesday, Apr 25 at CityPark – a matchup against Union Omaha of USL League One. A sold-out crowd of 22,423 would not only set an attendance record for a U.S. Open Cup Third Round match, but also see St. Louis City SC cruise to a 5–1 win on the backs of Aziel Jackson (3’, 66’), Akil Watts (62’), Löwen (86’) and an Omaha own goal (48’). Prior to the game, St. Louis City SC loaned out Sam Adeniran to San Antonio FC of USL Championship.

St. Louis City SC were back in MLS action the following Saturday, Apr 29, welcoming Portland Timbers to CityPark. It was the second matchup of the season between the two teams, with St. Louis City SC winning 2–1 in Portland on Matchday 3. The teams went into halftime at 0–0 and it was looking like neither wanted the win. But with the weather turning cold and rainy, a foul in the box gave Evander a PK at 63’ to put Portland up 1–0. Célio Pompeu would give St. Louis City SC hope, equalizing at 81’, but Portland immediately answered at 82’ to take the lead and the game 2–1.

May By May the MLS Scheduling Gods introduced themselves to the new boys of the league. On May 6, St. Louis City SC visited Frisco, TX for their first matchup against FC Dallas. The first half ended at 0–0. But coming back from halftime the weather was about to turn sour. Five minutes into the second half, with thunderstorms near, the referee stopped play and sent both teams back to their locker rooms. Play never resumed, but rather than restart the next day, it was determined the game would be postponed until a later date. It ended up being rescheduled for Wednesday, June 7 and play would resume at the 50’ mark. Furthermore, the same starters and subs for both teams must be on the field exactly as they were when play was halted.

After traveling to Texas to play half of a game, St. Louis City SC's next match was Tuesday, May 9 at Chicago Fire for their Round 32 matchup in the U.S. Open Cup. Chicago kicked things off early with a goal at 3’ by Maren Haile-Selassie. From there they cruised, never really being challenged in St. Louis City SC's worst game of the season to date. A goal by Fabian Herbers at 75’ put Chicago up 2–0. A stoppage time goal by Miggy Perez (90+3’) made the scoreline seem much closer than the game actually was. St. Louis City SC were officially out of U.S. Open Cup.

Four days later, St. Louis City SC again traveled to Chicago. This time for MLS Matchday 11 on May 13. Njabulo Blom was back from his injury woes, but Tim Parker served a 1-game suspension due to yellow card accumulation. The game was closer than May 9, but the result was the same – a 1–0 Chicago win on the back of a Rafael Czichos goal in the 40th minute. Of note in this game, St. Louis City SC defender Johnny Nelson picked up the franchise's first red card in the 70th minute after receiving his second yellow card of the game. 16-year-old Caden Glover made his debut appearance in the 77th minute.

On May 20, St. Louis City SC returned home from that away-double against a potential rival only to welcome another potential rival, Sporting KC, to CityPark for the first time. With goals from Löwen (19’), Indiana Vassilev (25’, 75’) and Niko (55’), St. Louis City SC secured a 4–0 win and Bürki's 3rd Clean Sheet of the season.

Vancouver Whitecaps FC came into CityPark the following week, May 27. St. Louis City SC took a 1–0 lead at 10’ on a Löwen free kick from about 35 yards out that subsequently won Goal of the Matchday. A Vancouver own goal in the 45th minute and a stoppage time goal by Miggy Perez (90+4’) sealed the 3–1 win.

St. Louis City SC's first MLS midweek game was due to be played May 31 at LAFC. However, due to LAFC's advancement to the CONCACAF Champions League Final, the first leg of that Final was scheduled to be played May 31. As a result, the MLS matchup between LAFC and St. Louis City SC was rescheduled for July 12.

June Houston Dynamo visited CityPark for the first time Jun 3. St. Louis City SC started the game off quick with a goal by Löwen in the 9th minute, then followed with goals by Ostrák (51’) and Niko (83’) leading to a 3–0 win. The shutout was Bürki's 4th Clean Sheet of the season.

St. Louis City SC next headed back to Dallas Jun 7 for the restart of the postponed game from May 6. It resumed with the score 0–0 and 40 minutes left to play. Much of the half was uneventful, but in the 80th minute Jesus Ferreira struck to put Dallas up 1–0. Not long after, Marco Farfan joined him to make it 2–0 and sealed Dallas's long-waited result over St. Louis City SC.