St. Louis City dominated from start to finish at CITYPARK but had to wait until after the break to find the breakthrough. The home side controlled the game with 65% possession and peppered Colorado with chances, forcing the Rapids into a purely reactive display. Despite racking up 20 shots and 10 corners, City couldn't break the deadlock in the first half, and the teams headed into the interval locked at 0-0. The second half told a different story. City eventually made their pressure count with a 1-0 victory, with Timo Baumgartl proving immense at the back to secure the win. The defender's commanding display earned him the man-of-the-match honors on a night when Colorado offered virtually nothing in attack, managing just two attempts at goal. It was a performance that underlined City's growing quality at home.
The Matchup
St. Louis City SC 1-0 Colorado Rapids was the final score at CITYPARK, in a game where St. Louis City SC did enough across the ninety minutes to deserve the three points. St. Louis City SC also had the better share of the ball, holding 65% possession, which usually goes hand in hand with the extra control a winning side tends to show. The shot count told a similar story, with 20 attempts from St. Louis City SC against 2 from Colorado Rapids over the course of the game. It was not always comfortable for St. Louis City SC, and Colorado Rapids pushed for a way back into the game, but the result stood. Games like this can carry real weight later in the season, so this is a scoreline worth remembering. Below is a closer look at how the match broke down, statistically.
Man of the Match
Match Statistics
Match Events
| Min | Team | Card | Event | Score |
|---|---|---|---|---|
| 12' | Colorado Rapids | Rob Holding | 0-0 | |
| 17' | Colorado Rapids | Substitution — D. Sealy on, M. Navarro off | 0-0 | |
| 25' | Colorado Rapids | Hamzat Ojediran | 0-0 | |
| 45+3' | St. Louis City SC | Christopher Durkin | 0-0 | |
| 46' | Colorado Rapids | Substitution — D. Yapi on, G. Minoungou off | 0-0 | |
| 46' | Colorado Rapids | Substitution — R. Cannon on, N. Cobb off | 0-0 | |
| 55' | Colorado Rapids | Substitution — H. Ojediran on, K. Thompson off | 0-0 | |
| 58' | St. Louis City SC | Substitution — S. Jeong on, E. Lowen off | 0-0 | |
| 68' | Colorado Rapids | Josh Atencio | 0-0 | |
| 69' | Colorado Rapids | Substitution — J. Atencio on, W. Frederick off | 0-0 | |
| 76' | St. Louis City SC | Substitution — S. Becher on, P. Ault off | 0-0 | |
| 76' | St. Louis City SC | Substitution — C. Durkin on, T. Ostrak off | 0-0 | |
| 83' | St. Louis City SC | Goal — T. Ostrak (assist: T. Totland) | 1-0 | |
| 87' | St. Louis City SC | Substitution — J. Orozco on, L. MacNaughton off | 1-0 | |
| 87' | St. Louis City SC | Substitution — M. Hartel on, M. Perez off | 1-0 | |
| 90+6' | Colorado Rapids | Kosi Thompson | 1-0 |
St. Louis City SC vs Colorado Rapids Lineups
Looking Ahead
St. Louis City SC does not have long to wait before getting back out onto the pitch. Their next test comes at home to FC Dallas, and how they respond after this result will be worth watching. You can follow the build-up and everything you need to know when St. Louis City SC vs FC Dallas going to play at 30 August 2026 in Major League Soccer 2026.
Colorado Rapids, meanwhile, will already be turning their attention to what comes next. They are next in action at home to Real Salt Lake, a game that will give an early sense of how they carry this result forward. Full details are here: Colorado Rapids vs Real Salt Lake going to play at 30 August 2026 in Major League Soccer 2026.