Match previews and recaps to help you decide which games are worth watching

Futmetrix Verdict
90
FT
Thu, Sep 10
Portland Timbers
2-2
St. Louis City
⚡ Intensity 76
⚖️ Balance 84
🏆 Stakes 44
🎲 Upset 46
Double braces define Providence Park thriller.

Win Probability

  • Portland Timbers 42%
  • Draw 25%
  • St. Louis City 33%

Futmetrix AI estimate

Double Braces and Late Drama Deny St. Louis City at Providence Park

Must-Watch Futmetrix Score: 90/100. A relentless back-and-forth thriller showcased elite attacking execution as a spectacular late equalizer robbed the visitors of a crucial road victory.

First-Minute Fireworks

The Intensity was red-hot from the literal opening kickoff at Providence Park. Fans had barely settled into their seats when Rafael Navarro Leal stunned the home crowd, finding the back of the net in the first minute to give St. Louis City a dream start. Instead of crumbling under the early pressure, the Portland Timbers dug their heels in, edging possession at 51 percent and dictating the tempo across the middle of the park. They applied massive set-piece pressure with nine corner kicks throughout the game, constantly testing the visitors' resolve. The sheer volume of 26 combined shots between the two sides turned the field into a veritable shooting gallery. Portland's relentless push finally paid dividends in the 32nd minute when Kristoffer Velde found his first breakthrough, leveling the Balance of a game that felt destined to become an all-out shootout.

Trading Blows in the Second Half

After the halftime break, the Stakes rose dramatically as both Western Conference contenders looked for a decisive edge in the standings. St. Louis City absorbed Portland's physical pressure, surviving a game heavily interrupted by the visitors' own aggressive tactics, evidenced by their 21 fouls. In the 51st minute, Navarro struck again to silence the home supporters once more. Securing his brace, the dynamic forward capitalized on a momentary lapse in the Timbers' defensive shape to restore the visitors' lead. The match settled into a gritty, tense rhythm. St. Louis attempted to lock down the midfield, effectively suffocating Portland's build-up play for long stretches. The home side peppered the penalty area, registering 16 total shots, but frequently struggled to find the target. It looked as though the away team had successfully engineered a smash-and-grab victory to solidify their top-four standing.

A Deserved Dramatic Finale

Just as an Upset road win seemed inevitable, Providence Park erupted in absolute pandemonium. Pushing every available man forward in the 89th minute, Cole Bassett delivered a perfectly timed pass into the danger zone, finding Velde in stride. The attacker made no mistake, burying his second goal of the night with clinical precision to snatch a 2-2 draw from the jaws of defeat. For Portland, this late equalizer salvages a vital point in their push up the standings, keeping them firmly in the mid-table mix and protecting their pride at home. St. Louis, meanwhile, will undoubtedly rue the missed opportunity to close out a game they led on two separate occasions, despite putting in a deeply resilient defensive shift. Ultimately, a shared point perfectly reflects the chaotic, pendulum-swinging nature of this spectacular four-goal contest.

Key Questions

What made K. Velde the Man of the Match?

He single-handedly kept Portland in the game, securing a brilliant brace that included a dramatic 89th-minute equalizer to snatch a hard-fought point.

Did Portland Timbers deserve the late equalizer?

Absolutely. They generated 16 total shots, forced nine corners, and applied constant pressure until Velde finally broke through the defense in the dying moments.

What is the Futmetrix Score?

The Futmetrix Score is our 0-100 verdict on how entertaining a match is. We look at intensity, balance, stakes, and star quality to tell you if it's worth your time.

Match Statistics

Possession
51%
49%
Portland Timbers 51%
St. Louis City 49%
Shots
16
10
Portland Timbers 16
St. Louis City 10
Shots on Target
3
4
Portland Timbers 3
St. Louis City 4
Expected Goals (xG)
0.85
1.68
Portland Timbers 0.85
St. Louis City 1.68
Passes
456
441
Portland Timbers 456
St. Louis City 441
Corners
9
2
Portland Timbers 9
St. Louis City 2
Fouls
10
21
Portland Timbers 10
St. Louis City 21
Yellow Cards
1
4
Portland Timbers 1
St. Louis City 4
Red Cards
0
0
Portland Timbers 0
St. Louis City 0

Match Events

18' 🔄 David Da Costa Diego Chará
Dante Polvara 🟨 31'
Jaziel Alberto Orozco Landeros Lukas MacNaughton 🔄 45'
Tomas Totland 🟨 45'+2
HT
58' 🟨 Eric Miller
65' 🔄 Eric Miller Ronald Hernández
Sang-bin Jung Simon Becher 🔄 65'
65' 🔄 Ariel Lassiter Antony
Dante Polvara Fallou Fall 🔄 65'
Alexandru Măţan Carlo Holse 🔄 80'
Rafael Santos Mykhi Joyner 🔄 80'
81' 🔄 Julio Joao Ortiz Landazuri Omir Fernandez
81' 🔄 Kamal Miller Ian Smith
89' Kristoffer Velde (Cole Bassett)
Rafael Navarro Leal Damion Downs 🔄 89'
90' 🔄 Vincent Janssen Gage Guerra
FT

Player Cards

Our take on every player in this match

Portland Timbers

Goalkeepers
James Pantemis
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
90
Total Mins
Started
Entry
Defenders
Eric Miller
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
65
Total Mins
65
Entry
Finn Surman
WALL
WALL
0
Dribbled Past
0
Dribbled Past
2
Tackles
62%
Duel Win %
Kamal Miller
LATE SHIFT
LATE SHIFT
9
Late Mins
9
Late Mins
81
Total Mins
81
Entry
Jimer Fory
WALL
WALL
0
Dribbled Past
0
Dribbled Past
2
Tackles
62%
Duel Win %
Midfielders
Cole Bassett
ARCHITECT
ARCHITECT
4
Key Passes
4
Key Passes
1
Assists
36%
Pass Acc
Joao Ortiz
LATE SHIFT
LATE SHIFT
9
Late Mins
9
Late Mins
81
Total Mins
81
Entry
David Costa
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
18
Total Mins
18
Entry
Forwards
Ariel Lassiter
PROVOCATEUR
PROVOCATEUR
4
Fouls Won
4
Fouls Won
5
Duels Won
0
Pens Won
Vincent Janssen
DRIBBLER
DRIBBLER
3
Dribbles
3
Dribbles
3
Attempts
100%
Success %
Kristoffer Velde
CLUTCH HERO
CLUTCH HERO
89
Goal Time
89
Goal Time
Goal
Impact
8.8
Rating
BENCH
Hunter Sulte
SPECTATOR
SPECTATOR
0
Saves
0
Saves
0
Conceded
0
Minutes
Alexander Bonetig
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Ronald Hernández
ARCHITECT
ARCHITECT
2
Key Passes
2
Key Passes
0
Assists
15%
Pass Acc
Ian Smith
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
9
Total Mins
Started
Entry
Joel Waterman
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Diego Chará
ENFORCER
ENFORCER
3
Tackles
3
Tackles
5
Duels Won
71%
Win %
Antony
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
25
Total Mins
Started
Entry
Omir Fernandez
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
9
Total Mins
Started
Entry
Andrew Guerra
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry

St. Louis City

Goalkeepers
Roman Bürki
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
90
Total Mins
Started
Entry
Defenders
Jaziel Orozco
WALL
WALL
0
Dribbled Past
0
Dribbled Past
4
Tackles
67%
Duel Win %
Timo Baumgartl
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
90
Total Mins
Started
Entry
Dante Polvara
STORMTROOPER
STORMTROOPER
1
Shots
1
Shots
0
Goals
0
On Target
Midfielders
Tomas Totland
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
90
Total Mins
Started
Entry
Chris Durkin
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
90
Total Mins
Started
Entry
Alexandru Matan
ARCHITECT
ARCHITECT
3
Key Passes
3
Key Passes
0
Assists
33%
Pass Acc
Daniel Edelman
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
90
Total Mins
Started
Entry
Rafael Santos
LATE SHIFT
LATE SHIFT
10
Late Mins
10
Late Mins
80
Total Mins
80
Entry
Jeong Sang-bin
STORMTROOPER
STORMTROOPER
2
Shots
2
Shots
0
Goals
1
On Target
Forwards
Rafael Navarro
HITMAN
HITMAN
2
Goals
2
Goals
2
On Target
8.6
Rating
BENCH
Ben Lundt
SPECTATOR
SPECTATOR
0
Saves
0
Saves
0
Conceded
0
Minutes
Fallou Fall
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
25
Total Mins
Started
Entry
Lukas MacNaughton
WALL
WALL
0
Dribbled Past
0
Dribbled Past
2
Tackles
50%
Duel Win %
Mykhi Joyner
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
10
Total Mins
Started
Entry
Tomas Ostrak
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Miguel Perez
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Simon Becher
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
25
Total Mins
Started
Entry
Damion Downs
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
1
Total Mins
Started
Entry
Carl Johan Holse Justesen
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
10
Total Mins
Started
Entry

Head to Head

Date Home Score Away Competition Venue
07/13/2025 St. Louis City 2 - 1 Portland Timbers Major League Soccer Energizer Park
06/08/2025 Portland Timbers 2 - 1 St. Louis City Major League Soccer Providence Park
08/25/2024 Portland Timbers 4 - 4 St. Louis City Major League Soccer Providence Park
08/10/2024 St. Louis City 3 - 1 Portland Timbers Leagues Cup CITYPARK
06/09/2024 St. Louis City 0 - 0 Portland Timbers Major League Soccer CITYPARK
04/30/2023 St. Louis City 1 - 2 Portland Timbers Major League Soccer CITYPARK
03/12/2023 Portland Timbers 1 - 2 St. Louis City Major League Soccer Providence Park
07/13/2025
Major League Soccer Energizer Park
06/08/2025
Major League Soccer Providence Park
08/25/2024
Major League Soccer Providence Park
08/10/2024
Leagues Cup CITYPARK
06/09/2024
Major League Soccer CITYPARK
04/30/2023
Major League Soccer CITYPARK
03/12/2023
Major League Soccer Providence Park
Portland Timbers Win
St. Louis City Win
Draw

League Standings

Pos Team P Pts GF GA GD Form
1 Vancouver Whitecaps 20 40 44 17 +27 WVancouver Whitecaps 3 - 0 Los Angeles Galaxy (10-09-2026)LVancouver Whitecaps 1 - 3 St. Louis City (06-09-2026)WSporting Kansas City 0 - 3 Vancouver Whitecaps (30-08-2026)WVancouver Whitecaps 5 - 0 FC Dallas (23-08-2026)LVancouver Whitecaps 0 - 1 Houston Dynamo (20-08-2026)
2 Colorado Rapids 20 32 27 20 +7 DAustin 1 - 1 Colorado Rapids (10-09-2026)WColorado Rapids 1 - 0 Real Salt Lake (30-08-2026)LSan Diego 3 - 0 Colorado Rapids (23-08-2026)WColorado Rapids 1 - 0 Los Angeles FC (20-08-2026)WColorado Rapids 2 - 0 Sporting Kansas City (16-08-2026)
3 Houston Dynamo 19 32 26 25 +1 WHouston Dynamo 2 - 1 Real Salt Lake (10-09-2026)DHouston Dynamo 0 - 0 San Jose Earthquakes (30-08-2026)LSt. Louis City 2 - 1 Houston Dynamo (23-08-2026)WVancouver Whitecaps 0 - 1 Houston Dynamo (20-08-2026)WHouston Dynamo 1 - 0 Los Angeles Galaxy (16-08-2026)
4 St. Louis City 19 31 30 27 +3 WVancouver Whitecaps 1 - 3 St. Louis City (06-09-2026)DSt. Louis City 3 - 3 FC Dallas (30-08-2026)WSt. Louis City 2 - 1 Houston Dynamo (23-08-2026)DSporting Kansas City 1 - 1 St. Louis City (20-08-2026)WSan Jose Earthquakes 1 - 3 St. Louis City (16-08-2026)
5 Los Angeles FC 20 30 27 21 +6 DReal Salt Lake 2 - 2 Los Angeles FC (06-09-2026)DLos Angeles FC 1 - 1 Portland Timbers (23-08-2026)LColorado Rapids 1 - 0 Los Angeles FC (20-08-2026)LLos Angeles FC 0 - 1 San Diego (16-08-2026)DVancouver Whitecaps 1 - 1 Los Angeles FC (01-08-2026)
6 FC Dallas 20 30 38 39 -1 WMinnesota United FC 1 - 2 FC Dallas (10-09-2026)WFC Dallas 4 - 3 Sporting Kansas City (06-09-2026)DSt. Louis City 3 - 3 FC Dallas (30-08-2026)LVancouver Whitecaps 5 - 0 FC Dallas (23-08-2026)WReal Salt Lake 3 - 4 FC Dallas (20-08-2026)
7 San Jose Earthquakes 18 28 34 25 +9 DAustin 1 - 1 San Jose Earthquakes (06-09-2026)DHouston Dynamo 0 - 0 San Jose Earthquakes (30-08-2026)LSan Jose Earthquakes 1 - 5 Minnesota United FC (23-08-2026)LLos Angeles Galaxy 1 - 0 San Jose Earthquakes (20-08-2026)LSan Jose Earthquakes 1 - 3 St. Louis City (16-08-2026)
8 Portland Timbers 19 27 38 35 +3 WPortland Timbers 5 - 4 Minnesota United FC (06-09-2026)LPortland Timbers 1 - 2 Austin (30-08-2026)DLos Angeles FC 1 - 1 Portland Timbers (23-08-2026)WPortland Timbers 3 - 1 San Diego (20-08-2026)WPortland Timbers 2 - 1 Seattle Sounders (02-08-2026)
9 Real Salt Lake 20 26 33 31 +2 LHouston Dynamo 2 - 1 Real Salt Lake (10-09-2026)DReal Salt Lake 2 - 2 Los Angeles FC (06-09-2026)LColorado Rapids 1 - 0 Real Salt Lake (30-08-2026)LReal Salt Lake 3 - 4 FC Dallas (20-08-2026)DReal Salt Lake 1 - 1 Minnesota United FC (16-08-2026)
10 San Diego 20 26 32 30 +2 WSan Diego 3 - 1 Los Angeles Galaxy (30-08-2026)WSan Diego 3 - 0 Colorado Rapids (23-08-2026)LPortland Timbers 3 - 1 San Diego (20-08-2026)WLos Angeles FC 0 - 1 San Diego (16-08-2026)DMinnesota United FC 1 - 1 San Diego (02-08-2026)
11 Seattle Sounders 18 24 21 25 -4 LSeattle Sounders 1 - 2 Austin (20-08-2026)LSeattle Sounders 0 - 2 Vancouver Whitecaps (17-08-2026)LPortland Timbers 2 - 1 Seattle Sounders (02-08-2026)LAustin 3 - 1 Seattle Sounders (23-07-2026)LSeattle Sounders 1 - 5 Portland Timbers (17-07-2026)
12 Minnesota United FC 18 22 25 27 -2 LMinnesota United FC 1 - 2 FC Dallas (10-09-2026)LPortland Timbers 5 - 4 Minnesota United FC (06-09-2026)WSan Jose Earthquakes 1 - 5 Minnesota United FC (23-08-2026)DReal Salt Lake 1 - 1 Minnesota United FC (16-08-2026)DMinnesota United FC 1 - 1 San Diego (02-08-2026)
13 Austin 19 20 22 34 -12 DAustin 1 - 1 Colorado Rapids (10-09-2026)DAustin 1 - 1 San Jose Earthquakes (06-09-2026)WPortland Timbers 1 - 2 Austin (30-08-2026)WSeattle Sounders 1 - 2 Austin (20-08-2026)LAustin 1 - 2 FC Dallas (17-08-2026)
14 Los Angeles Galaxy 19 18 19 32 -13 LVancouver Whitecaps 3 - 0 Los Angeles Galaxy (10-09-2026)LSan Diego 3 - 1 Los Angeles Galaxy (30-08-2026)WLos Angeles Galaxy 1 - 0 San Jose Earthquakes (20-08-2026)LHouston Dynamo 1 - 0 Los Angeles Galaxy (16-08-2026)DLos Angeles Galaxy 0 - 0 FC Dallas (02-08-2026)
15 Sporting Kansas City 19 14 19 47 -28 LFC Dallas 4 - 3 Sporting Kansas City (06-09-2026)LSporting Kansas City 0 - 3 Vancouver Whitecaps (30-08-2026)DSporting Kansas City 1 - 1 St. Louis City (20-08-2026)LColorado Rapids 2 - 0 Sporting Kansas City (16-08-2026)LSporting Kansas City 0 - 2 Houston Dynamo (02-08-2026)

Find your next match faster.

Honest match ratings. Find what is worth watching—without the clutter.

Bookmark this page

This page updates as new matches arrive.

Keep these picks handy.

Press Ctrl+D, then confirm in your browser.

Viewed labels stay on this device. We don't receive your reading history.

Keep Futmetrix handy

Honest match ratings. Find what is worth watching—without the clutter.