Portland Timbers vs St. Louis City — Major League Soccer: stats, lineups & analysis
HighlightsMajor League SoccerYouTubeMatch Events
- 1′St. Louis City, goal:0–1assist
- 18′Portland Timbers, substitution:off
- 31′St. Louis City, yellow card:
- 32′Portland Timbers, goal:1–1
- 36′St. Louis City, yellow card:
- 45+2′St. Louis City, yellow card:
- Half-time1 – 1
- 46′St. Louis City, substitution:off
- 51′St. Louis City, goal:1–2assist
- 58′Portland Timbers, yellow card:
- 65′St. Louis City, substitution:off
- 65′St. Louis City, substitution:off
- 65′Portland Timbers, substitution:off
- 65′Portland Timbers, substitution:off
- 67′St. Louis City, yellow card:
- 80′St. Louis City, substitution:off
- 80′St. Louis City, substitution:off
- 81′Portland Timbers, substitution:off
- 81′Portland Timbers, substitution:off
- 89′Portland Timbers, goal:2–2assist
- 89′St. Louis City, substitution:off
- 90′Portland Timbers, substitution:off
- Full-time2 – 2
Lineups
Tap a player for match statsKey Stats
Top Performers
Best rated
Goals
Assists
Videos
Player Ratings
Portland Timbers
St. Louis City
Match report
Velde's late leveller earns Portland Timbers a 2-2 draw with St. Louis City
Portland Timbers and St. Louis City shared four goals in a thrilling Major League Soccer round 24 fixture at Providence Park, the match finishing 2-2. St. Louis struck inside the opening minute through Rafael Navarro, assisted by Tomas Totland, before Kristoffer Velde levelled for the Timbers in the 32nd minute to send the sides in level at half-time.
AI-assisted match report written from official match data.
Navarro restored St. Louis's lead three minutes into the second half, turning home a pass from Alexandru Mățan to make it 1-2. St. Louis City appeared set to hold on for victory, but Velde struck again in the 89th minute, converting a Cole Bassett assist to snatch a share of the points for Portland at the death.
Portland edged possession at 52 percent and produced 16 shots to St. Louis's 10, though only three found the target compared with the visitors' four. The Timbers also won nine corners to St. Louis's two, while St. Louis were the more heavily booked side with four yellow cards to Portland's one, in a match refereed by Fotis Bazakos.
Kristoffer Velde scored both of Portland's goals, including the 89th-minute equaliser, finishing with a match-high rating of 8.13. Navarro was not far behind for St. Louis, also netting twice and rated 8.10.
Portland's 16 shots to St. Louis's 10 underlined their greater attacking threat, even if the visitors were clinical enough to lead twice.
Portland Timbers and St. Louis City drew 2–2 (half-time 1–1).
Portland Timbers met St. Louis City in the Major League Soccer (Regular Season - 24). Kick-off was Thursday, 10 September 2026, 02:30 UTC at Providence Park. Referee: Fotis Bazakos. Attendance: 19,351.
Team pages: Portland Timbers · St. Louis City · Major League Soccer
Key moments
- 1' Goal: Rafael Navarro (assist: Tomas Totland) — 0–1
- 32' Goal: Kristoffer Velde — 1–1
- 51' Goal: Rafael Navarro (assist: Alexandru Mățan) — 1–2
- 89' Goal: Kristoffer Velde (assist: Cole Bassett) — 2–2
Starting line-ups
Portland Timbers (4-3-3)
St. Louis City (3-1-4-2)
Sirius · Why these numbers
Before kick-off Sirius gave Portland Timbers 47%, the draw 23%, St. Louis City 30%. It finished Portland Timbers 2–2 St. Louis City.
Home ground outweighs St. Louis City's rating edge — St. Louis City are the stronger side on our strength rating, but Major League Soccer home advantage plus St. Louis City's hot finishing due to cool give Portland Timbers the lean. The draw at 23% is held down by a high-scoring environment.
Why Portland Timbers at 47%?
Home ground, against the rating. St. Louis City sit 61 points higher on our strength rating — 1562 to 1623. Sides with a 50–100-point rating edge on the road won 33.0% of 10,618 such games. Major League Soccer home sides out-perform the global norm — and the difference mostly flows to away wins (25.7% vs 30.2%). Major League Soccer homes won 49.4% of 5,145 games vs 44.9% across all 100,021 — outside the noise band, so the tally moves accordingly. St. Louis City scored +0.56 goals per game beyond chance-quality lately — hot streaks like that have cooled off. Visitors running this hot went on to win 28.8% of 1,492 games, vs 29.2% for visitors finishing normally.
Why only 47%?
Because St. Louis City are the stronger side on our strength rating. The rest is the draw at 23% and St. Louis City at 30%.
Why is the draw only 23%?
With a rating gap this size the draw starts at 28.3%. These teams' recent games average 3.8 goals — a high-scoring environment. Games in that environment drew 22.8% of 17,158. The goals environment takes 2.4 points off the draw. The cool-off factor takes 1.7 points off the draw.
What did we measure but not count?
St. Louis City have gained 102 strength-rating points over their last 10 games. Momentum is measured but not yet proven: climbing sides won 41.4% of 12,336 such games vs 40.7% class-expected — inside the noise band, so it stays at 0 points until the receipt clears its evidence bar. Portland Timbers are missing 2 regular starters — Jimer Fory, Brandon Bye — about 16% of their usual starting-XI weight. A body count alone told us nothing.
Sirius probabilities, frozen at kick-off. Analysis, not betting advice. How Sirius is doing this season · Full breakdown, evidence cards and squad news in the Match Insights tab
About this match
On this page: the Portland Timbers vs St. Louis City final score and result, goal highlights and video clips of every goal, who scored, starting lineups, match stats and the full match report from this Major League Soccer fixture.
- Who scored and when — a goal-by-goal timeline of the match.
- Match stats — possession, shots, expected goals (xG), corners and cards.
- Starting lineups and player ratings for both teams.
- Head-to-head record and recent form for both sides.
Watch the goals: goal highlights and video clips of every goal from Portland Timbers 2–2 St. Louis City. Explore more on the Portland Timbers and St. Louis City team pages or the Major League Soccer page.

