Portland Timbers vs Real Salt Lake, 2025 MLS, Western Conference Playoffs - Wild Card
· MLS3 - 1
Mora scores 2, Timbers beat Real Salt Lake to advance in MLS playoffs
Felipe Mora's two first-half goals propelled the Portland Timbers to a 3-1 wild-card victory over Real Salt Lake on Wednesday night, setting up a first-round playoff series against San Diego FC.
Match Timeline
- 0': Lineups are announced and players are warming up.
- 0': First Half begins.
- 3': Antony (Portland Timbers) wins a free kick in the defensive half.
- 3': Foul by Brayan Vera (Real Salt Lake).
- 4': Corner, Portland Timbers. Conceded by Alexandros Katranis.
- 4': Attempt missed. David Ayala (Portland Timbers) left footed shot from the centre of the box is too high. Assisted by Kristoffer Velde with a cross following a corner.
- 8': Foul by Finn Surman (Portland Timbers).
- 8': Victor Olatunji (Real Salt Lake) wins a free kick in the attacking half.
- 9': Alexandros Katranis (Real Salt Lake) wins a free kick in the defensive half.
- 9': Foul by Antony (Portland Timbers).
- 11': Attempt blocked. Felipe Mora (Portland Timbers) right footed shot from the centre of the box is blocked. Assisted by Kristoffer Velde.
- 13': Attempt blocked. Victor Olatunji (Real Salt Lake) right footed shot from the right side of the box is blocked. Assisted by Diego Luna.
- 15': Corner, Portland Timbers. Conceded by Zavier Gozo.
- 15': Attempt blocked. Jimer Fory (Portland Timbers) header from the centre of the box is blocked. Assisted by Kristoffer Velde with a cross.
- 15': Corner, Portland Timbers. Conceded by Brayan Vera.
- 16': Corner, Portland Timbers. Conceded by Rafael Cabral.
- 16': Attempt blocked. David Ayala (Portland Timbers) header from the centre of the box is blocked. Assisted by Kristoffer Velde with a cross.
- 16': Offside, Portland Timbers. Felipe Mora is caught offside.
- 21': Foul by Diego Luna (Real Salt Lake).
- 21': Jimer Fory (Portland Timbers) wins a free kick in the defensive half.
- 22': Felipe Mora (Portland Timbers) wins a free kick in the defensive half.
- 22': Foul by Brayan Vera (Real Salt Lake).
- 22': Noel Caliskan (Real Salt Lake) is shown the yellow card.
- 23': Diego Chará (Portland Timbers) wins a free kick on the right wing.
- 23': Foul by Noel Caliskan (Real Salt Lake).
- 24': Attempt saved. Felipe Mora (Portland Timbers) header from the right side of the box is saved in the bottom right corner by Rafael Cabral (Real Salt Lake). Assisted by Kristoffer Velde with a cross.
- 24': Goal! Portland Timbers 1, Real Salt Lake 0. Felipe Mora (Portland Timbers) right footed shot from the right side of the six yard box to the centre of the goal following a set piece situation.
- 28': Attempt missed. Victor Olatunji (Real Salt Lake) right footed shot from the right side of the box is high and wide to the right. Assisted by Zavier Gozo.
- 32': Attempt blocked. Zavier Gozo (Real Salt Lake) left footed shot from the right side of the box is blocked. Assisted by Brayan Vera.
- 32': Corner, Real Salt Lake. Conceded by James Pantemis.
- 34': Attempt missed. Diogo Gonçalves (Real Salt Lake) left footed shot from the centre of the box is too high. Assisted by Braian Ojeda with a cross.
- 35': Attempt saved. Felipe Mora (Portland Timbers) header from very close range is saved in the centre of the goal by Rafael Cabral (Real Salt Lake). Assisted by Kristoffer Velde with a cross.
- 35': Goal! Portland Timbers 2, Real Salt Lake 0. Felipe Mora (Portland Timbers) right footed shot from very close range to the bottom right corner.
- 38': Corner, Real Salt Lake. Conceded by Kristoffer Velde.
- 39': Goal! Portland Timbers 2, Real Salt Lake 1. Justen Glad (Real Salt Lake) header from the centre of the box to the top left corner. Assisted by Diogo Gonçalves with a cross following a corner.
- 39': David da Costa (Portland Timbers) wins a free kick in the defensive half.
- 39': Foul by Zavier Gozo (Real Salt Lake).
- 41': Foul by Diego Luna (Real Salt Lake).
- 41': Jimer Fory (Portland Timbers) wins a free kick in the attacking half.
- 43': DeAndre Yedlin (Real Salt Lake) wins a free kick in the defensive half.
- 43': Foul by Kristoffer Velde (Portland Timbers).
- 45': Corner, Real Salt Lake. Conceded by Juan Mosquera.
- 45': Fourth official has announced 3 minutes of added time.
- 45'+1': Foul by DeAndre Yedlin (Real Salt Lake).
- 45'+1': Kristoffer Velde (Portland Timbers) wins a free kick on the left wing.
- 45'+1': Diego Luna (Real Salt Lake) wins a free kick in the defensive half.
- 45'+1': Foul by Diego Chará (Portland Timbers).
- 45'+3': Diogo Gonçalves (Real Salt Lake) wins a free kick in the defensive half.
- 45'+3': Foul by Antony (Portland Timbers).
- 45'+4': First Half ends, Portland Timbers 2, Real Salt Lake 1.
- 45': Second Half begins Portland Timbers 2, Real Salt Lake 1.
- 45': Substitution, Real Salt Lake. Emeka Eneli replaces Noel Caliskan.
- 49': Attempt blocked. Zavier Gozo (Real Salt Lake) right footed shot from outside the box is blocked. Assisted by DeAndre Yedlin.
- 49': Attempt blocked. Diogo Gonçalves (Real Salt Lake) right footed shot from the centre of the box is blocked.
- 50': Foul by Justen Glad (Real Salt Lake).
- 50': Kristoffer Velde (Portland Timbers) wins a free kick in the defensive half.
- 51': Handball by Victor Olatunji (Real Salt Lake).
- 51': Alexandros Katranis (Real Salt Lake) wins a free kick in the defensive half.
- 51': Foul by Antony (Portland Timbers).
- 53': Corner, Real Salt Lake. Conceded by Diego Chará.
- 54': Attempt missed. DeAndre Yedlin (Real Salt Lake) right footed shot from outside the box misses to the left following a corner.
- 54': Offside, Real Salt Lake. Justen Glad is caught offside.
- 55': Attempt missed. Diogo Gonçalves (Real Salt Lake) right footed shot from outside the box misses to the left.
- 56': Foul by Finn Surman (Portland Timbers).
- 56': Victor Olatunji (Real Salt Lake) wins a free kick in the attacking half.
- 57': Attempt blocked. Alexandros Katranis (Real Salt Lake) left footed shot from outside the box is blocked. Assisted by Diego Luna.
- 57': Antony (Portland Timbers) wins a free kick in the defensive half.
- 57': Foul by Alexandros Katranis (Real Salt Lake).
- 58': Attempt saved. David da Costa (Portland Timbers) right footed shot from outside the box is saved in the top right corner by Rafael Cabral (Real Salt Lake). Assisted by Felipe Mora.
- 59': Attempt missed. Victor Olatunji (Real Salt Lake) right footed shot from outside the box is high and wide to the right. Assisted by Zavier Gozo following a fast break.
- 60': Diego Chará (Portland Timbers) wins a free kick in the defensive half.
- 60': Foul by Alexandros Katranis (Real Salt Lake).
- 62': Attempt saved. DeAndre Yedlin (Real Salt Lake) right footed shot from the right side of the box is saved in the bottom right corner by James Pantemis (Portland Timbers). Assisted by Zavier Gozo.
- 63': Attempt saved. Emeka Eneli (Real Salt Lake) right footed shot from the right side of the box is saved in the centre of the goal by James Pantemis (Portland Timbers). Assisted by Victor Olatunji.
- 64': Delay in match because of an injury Jimer Fory (Portland Timbers).
- 65': Substitution, Real Salt Lake. Rwan Cruz replaces Zavier Gozo.
- 65': Substitution, Real Salt Lake. William Agada replaces Victor Olatunji.
- 65': Delay over. They are ready to continue.
- 69': Attempt saved. Diogo Gonçalves (Real Salt Lake) right footed shot from outside the box is saved in the centre of the goal by James Pantemis (Portland Timbers).
- 70': Offside, Real Salt Lake. William Agada is caught offside.
- 71': Corner, Portland Timbers. Conceded by Justen Glad.
- 72': Corner, Portland Timbers. Conceded by William Agada.
- 72': Attempt saved. Kamal Miller (Portland Timbers) header from the centre of the box is saved in the top centre of the goal by Rafael Cabral (Real Salt Lake).
- 73': Corner, Real Salt Lake. Conceded by Kamal Miller.
- 73': William Agada (Real Salt Lake) hits the bar with a right footed shot from the centre of the box. Assisted by Diego Luna following a corner.
- 74': Antony (Portland Timbers) wins a free kick in the defensive half.
- 74': Foul by Brayan Vera (Real Salt Lake).
- 74': Brayan Vera (Real Salt Lake) is shown the yellow card for a bad foul.
- 74': Attempt saved. Rwan Cruz (Real Salt Lake) right footed shot from outside the box is saved in the centre of the goal by James Pantemis (Portland Timbers). Assisted by Diogo Gonçalves.
- 75': Handball by David Ayala (Portland Timbers).
- 76': (Portland Timbers) wins a free kick in the defensive half.
- 76': Rwan Cruz (Real Salt Lake).
- 77': Offside, Real Salt Lake. Rwan Cruz is caught offside.
- 78': Substitution, Portland Timbers. Ariel Lassiter replaces Antony.
- 78': Substitution, Portland Timbers. Cristhian Paredes replaces David Ayala.
- 78': Substitution, Real Salt Lake. Jesús Barea replaces Braian Ojeda.
- 79': Emeka Eneli (Real Salt Lake) wins a free kick in the defensive half.
- 79': Foul by Felipe Mora (Portland Timbers).
- 79': DeAndre Yedlin (Real Salt Lake) is shown the yellow card for a bad foul.
- 79': Foul by DeAndre Yedlin (Real Salt Lake).
- 79': Kristoffer Velde (Portland Timbers) wins a free kick on the left wing.
- 80': DeAndre Yedlin (Real Salt Lake) wins a free kick in the defensive half.
- 80': Foul by Kristoffer Velde (Portland Timbers).
- 81': Attempt saved. Kristoffer Velde (Portland Timbers) left footed shot from the left side of the box is saved in the bottom left corner by Rafael Cabral (Real Salt Lake). Assisted by Felipe Mora.
- 81': Corner, Portland Timbers. Conceded by Rafael Cabral.
- 82': Goal! Portland Timbers 3, Real Salt Lake 1. Kamal Miller (Portland Timbers) header from the left side of the six yard box to the centre of the goal. Assisted by Ariel Lassiter following a corner.
- 84': Foul by Rwan Cruz (Real Salt Lake).
- 84': Jimer Fory (Portland Timbers) wins a free kick in the defensive half.
- 84': Diego Luna (Real Salt Lake) is shown the yellow card.
- 86': Substitution, Portland Timbers. Kevin Kelsy replaces Felipe Mora.
- 86': Substitution, Portland Timbers. Joao Ortiz replaces David da Costa.
- 86': Attempt saved. Diego Luna (Real Salt Lake) right footed shot from outside the box is saved in the top right corner by James Pantemis (Portland Timbers). Assisted by Diogo Gonçalves.
- 86': Corner, Real Salt Lake. Conceded by James Pantemis.
- 87': DeAndre Yedlin (Real Salt Lake) wins a free kick in the attacking half.
- 87': Foul by Kristoffer Velde (Portland Timbers).
- 88': Foul by Alexandros Katranis (Real Salt Lake).
- 88': Juan Mosquera (Portland Timbers) wins a free kick in the defensive half.
- 88': Alexandros Katranis (Real Salt Lake) is shown the yellow card for a bad foul.
- 88': Substitution, Real Salt Lake. Johnny Russell replaces DeAndre Yedlin.
- 89': Foul by Diego Chará (Portland Timbers).
- 89': Jesús Barea (Real Salt Lake) wins a free kick in the attacking half.
- 90': Attempt blocked. Brayan Vera (Real Salt Lake) right footed shot from outside the box is blocked.
- 90': Substitution, Portland Timbers. Omir Fernandez replaces Kristoffer Velde.
- 90': Fourth official has announced 7 minutes of added time.
- 90'+1': Attempt missed. William Agada (Real Salt Lake) right footed shot from the right side of the box is high and wide to the right. Assisted by Emeka Eneli.
- 90'+4': Delay in match because of an injury Alexandros Katranis (Real Salt Lake).
- 90'+4': Delay in match because of an injury Omir Fernandez (Portland Timbers).
- 90'+5': Delay over. They are ready to continue.
- 90'+6': Offside, Portland Timbers. Kevin Kelsy is caught offside.
- 90'+6': Attempt saved. Rwan Cruz (Real Salt Lake) header from the centre of the box is saved in the bottom left corner by James Pantemis (Portland Timbers). Assisted by Justen Glad with a cross.
- 90'+7': Alexandros Katranis (Real Salt Lake) wins a free kick in the defensive half.
- 90'+7': Foul by Kevin Kelsy (Portland Timbers).
- 90'+7': Attempt blocked. Jesús Barea (Real Salt Lake) right footed shot from the left side of the box is blocked. Assisted by Rwan Cruz.
- 90'+8': Dangerous play by Kevin Kelsy (Portland Timbers).
- 90'+8': Rwan Cruz (Real Salt Lake) wins a free kick in the attacking half.
- 90'+8': Attempt missed. Diogo Gonçalves (Real Salt Lake) right footed shot from outside the box misses to the right following a set piece situation.
- 90'+9': Second Half ends, Portland Timbers 3, Real Salt Lake 1.
- 0': Match ends, Portland Timbers 3, Real Salt Lake 1.
Statistics
RSL |
POR![]() |
|
|---|---|---|
| 16 | Fouls | 14 |
| 5 | Yellow Cards | 0 |
| 0 | Red Cards | 0 |
| 3 | Offsides | 2 |
| 6 | Corner Kicks | 7 |
| 5 | Saves | 6 |
| 52.2 | Possession | 47.8 |
| 22 | SHOTS | 12 |
| 7 | ON GOAL | 8 |
| 0.3 | On Target % | 0.7 |
| 0 | Penalty Goals | 0 |
| 0 | Penalty Kicks Taken | 0 |
| 443 | Accurate Passes | 386 |
| 520 | Passes | 466 |
| 0.9 | Pass Completion % | 0.8 |
| 6 | Accurate Crosses | 6 |
| 17 | Crosses | 22 |
| 0.4 | Cross % | 0.3 |
| 48 | Long Balls | 46 |
| 25 | Accurate Long Balls | 25 |
| 0.5 | Long Balls % | 0.5 |
| 7 | Blocked Shots | 3 |
| 5 | Effective Tackles | 3 |
| 9 | Tackles | 11 |
| 0.6 | Tackle % | 0.3 |
| 20 | Interceptions | 3 |
| 24 | Effective Clearances | 42 |
| 24 | Clearances | 42 |
Game Information
Venue: Providence Park
Location: Portland, Oregon, USA
Attendance: 16,243
Line-Ups
Portland Timbers (4-2-3-1)
| No. | Name |
|---|---|
| 41 | James Pantemis (GK) |
| 4 | Kamal Miller |
| 20 | Finn Surman |
| 27 | Jimer Fory |
| 29 | Juan Mosquera |
| 10 | David Da Costa |
| 24 | David Ayala |
| 21 | Diego Chará |
| 9 | Felipe Mora |
| 99 | Kristoffer Velde |
| 11 | Antony |
Real Salt Lake (4-2-3-1)
| No. | Name |
|---|---|
| 1 | Rafael (GK) |
| 4 | Brayan Vera |
| 15 | Justen Glad |
| 98 | Alexandros Katranis |
| 2 | DeAndre Yedlin |
| 8 | Diego Luna |
| 92 | Noel Caliskan |
| 6 | Braian Ojeda |
| 17 | Victor Olatunji |
| 10 | Diogo Gonçalves |
| 72 | Zavier Gozo |
MLS News
St. Louis City SC has agreed personal terms with former CF Montreal executive Corey Wray to be the team's next sporting director, sources told ESPN.
Herculez Gomez and Shaka Hislop debate the best duo in Major League Soccer.
Herculez Gomez reacts to Lionel Messi's comments about the spending rules in MLS.
The Seattle Sounders are seeking a large minority partner through a strategic capital raise to fund major project ambitions, including a potential new soccer-specific stadium.
Hirving "Chucky" Lozano's exile from San Diego FC's squad will end this weekend but the Mexico forward will not go straight back into the club's starting lineup.
RSL