
Real Salt Lake vs Portland Timbers, 2025 MLS, Regular Season
· MLSAbout
Match Timeline
- 0': Lineups are announced and players are warming up.
- 0': First Half begins.
- 3': Attempt missed. Braian Ojeda (Real Salt Lake) right footed shot from outside the box is too high. Assisted by Diego Luna.
- 5': Diego Luna (Real Salt Lake) wins a free kick in the defensive half.
- 5': Foul by Dario Zuparic (Portland Timbers).
- 6': Attempt saved. Antony (Portland Timbers) right footed shot from the left side of the box is saved in the centre of the goal.
- 7': Emeka Eneli (Real Salt Lake) wins a free kick in the defensive half.
- 7': Foul by Kevin Kelsy (Portland Timbers).
- 9': Attempt missed. Santiago Moreno (Portland Timbers) right footed shot from outside the box misses to the left. Assisted by Kevin Kelsy with a headed pass.
- 15': Corner, Real Salt Lake. Conceded by Juan Mosquera.
- 16': Attempt saved. Sam Junqua (Real Salt Lake) right footed shot from outside the box is saved in the centre of the goal. Assisted by Diego Luna.
- 17': Foul by Alexandros Katranis (Real Salt Lake).
- 17': Santiago Moreno (Portland Timbers) wins a free kick on the right wing.
- 21': Foul by Bode Hidalgo (Real Salt Lake).
- 21': Kevin Kelsy (Portland Timbers) wins a free kick on the left wing.
- 21': Bode Hidalgo (Real Salt Lake) is shown the yellow card for a bad foul.
- 23': Attempt missed. Santiago Moreno (Portland Timbers) right footed shot from the right side of the box is close, but misses to the right. Assisted by Juan Mosquera.
- 24': Corner, Real Salt Lake. Conceded by Kamal Miller.
- 28': Offside, Real Salt Lake. Zavier Gozo is caught offside.
- 31': Attempt missed. David da Costa (Portland Timbers) right footed shot from outside the box is high and wide to the right. Assisted by Antony.
- 32': Antony (Portland Timbers) wins a free kick in the defensive half.
- 32': Foul by Noel Caliskan (Real Salt Lake).
- 33': Foul by Antony (Portland Timbers).
- 33': Zavier Gozo (Real Salt Lake) wins a free kick on the right wing.
- 35': Attempt saved. Zavier Gozo (Real Salt Lake) header from the centre of the box is saved in the centre of the goal. Assisted by Alexandros Katranis with a cross.
- 36': Foul by Emeka Eneli (Real Salt Lake).
- 36': Kevin Kelsy (Portland Timbers) wins a free kick in the attacking half.
- 39': Foul by Claudio Bravo (Portland Timbers).
- 39': Zavier Gozo (Real Salt Lake) wins a free kick on the right wing.
- 41': Cristhian Paredes (Portland Timbers) wins a free kick in the defensive half.
- 41': Foul by Braian Ojeda (Real Salt Lake).
- 42': Attempt blocked. Diogo Gonçalves (Real Salt Lake) left footed shot from the left side of the box is blocked. Assisted by Emeka Eneli.
- 42': Corner, Real Salt Lake. Conceded by Dario Zuparic.
- 43': Foul by Noel Caliskan (Real Salt Lake).
- 43': Santiago Moreno (Portland Timbers) wins a free kick in the defensive half.
- 45': Fourth official has announced 0 minutes of added time.
- 45'+1': First Half ends, Real Salt Lake 0, Portland Timbers 0.
- 45': Second Half begins Real Salt Lake 0, Portland Timbers 0.
- 46': Diogo Gonçalves (Real Salt Lake) wins a free kick in the attacking half.
- 46': Foul by Cristhian Paredes (Portland Timbers).
- 46': Cristhian Paredes (Portland Timbers) is shown the yellow card for a bad foul.
- 47': Diego Luna (Real Salt Lake) hits the bar with a right footed shot from outside the box from a direct free kick.
- 52': Attempt missed. Cristhian Paredes (Portland Timbers) right footed shot from outside the box is high and wide to the right. Assisted by David da Costa.
- 53': Attempt missed. Antony (Portland Timbers) right footed shot from the centre of the box misses to the right. Assisted by Santiago Moreno following a fast break.
- 59': Substitution, Real Salt Lake. Jesús Barea replaces Diogo Gonçalves.
- 59': Substitution, Real Salt Lake. Dominik Marczuk replaces Ariath Piol.
- 60': Attempt saved. Antony (Portland Timbers) left footed shot from the left side of the box is saved in the centre of the goal. Assisted by Kevin Kelsy.
- 61': Substitution, Portland Timbers. Jonathan Rodríguez replaces Antony.
- 61': Substitution, Portland Timbers. Diego Chará replaces Joao Ortiz.
- 62': Offside, Portland Timbers. Kevin Kelsy is caught offside.
- 63': Foul by Noel Caliskan (Real Salt Lake).
- 63': Jonathan Rodríguez (Portland Timbers) wins a free kick in the attacking half.
- 64': Noel Caliskan (Real Salt Lake) is shown the yellow card for a bad foul.
- 65': Attempt missed. David da Costa (Portland Timbers) right footed shot from outside the box is close, but misses to the left from a direct free kick.
- 66': Braian Ojeda (Real Salt Lake) wins a free kick in the defensive half.
- 66': Foul by Diego Chará (Portland Timbers).
- 67': Foul by Diego Chará (Portland Timbers).
- 67': Jesús Barea (Real Salt Lake) wins a free kick in the attacking half.
- 68': Attempt missed. Braian Ojeda (Real Salt Lake) header from the right side of the six yard box is too high. Assisted by Alexandros Katranis with a cross following a set piece situation.
- 69': Delay in match because of an injury Kevin Kelsy (Portland Timbers).
- 69': Diego Luna (Real Salt Lake) is shown the yellow card.
- 70': Delay over. They are ready to continue.
- 70': Dario Zuparic (Portland Timbers) wins a free kick in the defensive half.
- 70': Foul by Zavier Gozo (Real Salt Lake).
- 72': Diego Chará (Portland Timbers) wins a free kick in the attacking half.
- 72': Foul by Braian Ojeda (Real Salt Lake).
- 72': Substitution, Portland Timbers. Omir Fernandez replaces David da Costa.
- 72': Substitution, Portland Timbers. Felipe Mora replaces Kevin Kelsy.
- 72': Offside, Portland Timbers. Dario Zuparic is caught offside.
- 73': Foul by Cristhian Paredes (Portland Timbers).
- 73': Jesús Barea (Real Salt Lake) wins a free kick in the defensive half.
- 74': Foul by Omir Fernandez (Portland Timbers).
- 74': Noel Caliskan (Real Salt Lake) wins a free kick in the defensive half.
- 75': Foul by Braian Ojeda (Real Salt Lake).
- 75': Omir Fernandez (Portland Timbers) wins a free kick in the defensive half.
- 77': Attempt blocked. Zavier Gozo (Real Salt Lake) right footed shot from the centre of the box is blocked. Assisted by Diego Luna.
- 78': Substitution, Real Salt Lake. Pablo Ruiz replaces Braian Ojeda.
- 79': Substitution, Portland Timbers. Ariel Lassiter replaces Santiago Moreno.
- 81': Attempt missed. Jesús Barea (Real Salt Lake) header from the centre of the box misses to the right. Assisted by Alexandros Katranis with a cross.
- 81': Corner, Real Salt Lake. Conceded by Claudio Bravo.
- 84': Ariel Lassiter (Portland Timbers) wins a free kick in the defensive half.
- 84': Foul by Alexandros Katranis (Real Salt Lake).
- 85': Foul by Dario Zuparic (Portland Timbers).
- 85': Zavier Gozo (Real Salt Lake) wins a free kick in the attacking half.
- 86': Attempt missed. Jonathan Rodríguez (Portland Timbers) right footed shot from the left side of the box misses to the left. Assisted by Claudio Bravo.
- 89': Attempt saved. Jonathan Rodríguez (Portland Timbers) left footed shot from the centre of the box is saved in the top centre of the goal. Assisted by Claudio Bravo with a cross.
- 89': Attempt blocked. Omir Fernandez (Portland Timbers) right footed shot from the centre of the box is blocked.
- 89': Attempt blocked. Omir Fernandez (Portland Timbers) right footed shot from the left side of the six yard box is blocked.
- 89': Cristhian Paredes (Portland Timbers) wins a free kick in the attacking half.
- 89': Foul by Pablo Ruiz (Real Salt Lake).
- 90': Offside, Portland Timbers. Kamal Miller is caught offside.
- 90': Fourth official has announced 3 minutes of added time.
- 90'+2': Offside, Real Salt Lake. Jesús Barea is caught offside.
- 90'+3': Foul by Pablo Ruiz (Real Salt Lake).
- 90'+3': Omir Fernandez (Portland Timbers) wins a free kick on the left wing.
- 90'+4': Foul by Cristhian Paredes (Portland Timbers).
- 90'+4': Jesús Barea (Real Salt Lake) wins a free kick in the defensive half.
- 90'+4': Second Half ends, Real Salt Lake 0, Portland Timbers 0.
- 0': Match ends, Real Salt Lake 0, Portland Timbers 0.
Statistics
![]() |
RSL![]() |
|
---|---|---|
11 | Fouls | 13 |
1 | Yellow Cards | 3 |
0 | Red Cards | 0 |
3 | Offsides | 2 |
0 | Corner Kicks | 4 |
2 | Saves | 3 |
50.4 | Possession | 49.6 |
12 | SHOTS | 8 |
4 | ON GOAL | 2 |
0.3 | On Target % | 0.3 |
0 | Penalty Goals | 0 |
0 | Penalty Kicks Taken | 0 |
416 | Accurate Passes | 398 |
485 | Passes | 473 |
0.9 | Pass Completion % | 0.8 |
3 | Accurate Crosses | 3 |
11 | Crosses | 15 |
0.3 | Cross % | 0.2 |
46 | Long Balls | 49 |
22 | Accurate Long Balls | 25 |
0.5 | Long Balls % | 0.5 |
1 | Blocked Shots | 2 |
8 | Effective Tackles | 7 |
17 | Tackles | 14 |
0.5 | Tackle % | 0.5 |
18 | Interceptions | 8 |
23 | Effective Clearances | 16 |
23 | Clearances | 16 |
Game Information
Venue: America First Field
Location: Sandy, Utah, USA
Attendance: 19,616
MLS Table
# | TEAM | GP | GD | PTS |
---|---|---|---|---|
1 | Vancouver Whitecaps | 12 | +14 | 27 |
2 | San Diego FC | 13 | +9 | 23 |
3 | Minnesota United FC | 13 | +6 | 22 |
4 | Portland Timbers | 13 | +3 | 22 |
Line-Ups
Real Salt Lake (4-2-3-1)
No. | Name |
---|---|
1 | Rafael (GK) |
29 | Samuel Junqua |
19 | Bode Hidalgo ![]() |
98 | Alexandros Katranis |
92 | Noel Caliskan ![]() |
8 | Diego Luna ![]() |
6 | Braian Ojeda |
14 | Emeka Eneli |
23 | Ariath Piol |
10 | Diogo Gonçalves |
72 | Zavier Gozo |
Portland Timbers (4-2-3-1)
No. | Name |
---|---|
16 | Maxime Crépeau (GK) |
4 | Kamal Miller |
13 | Dario Zuparic |
5 | Claudio Bravo |
29 | Juan Mosquera |
10 | David Da Costa |
80 | Joao Ortiz |
17 | Cristhian Paredes ![]() |
19 | Kevin Kelsy |
11 | Antony |
30 | Santiago Moreno |
MLS News

Argentina will have captain Lionel Messi back for its FIFA World Cup qualifiers against Chile and Colombia, the national team announced Thursday.

With Lionel Messi in the final year of his contract with Inter Miami, ESPN provides game-by-game analysis of the World Cup winner's performances.

LeBron James is one of the longest-tenured players in sports. Find out who else makes the list in MLB, WNBA, NFL, NWSL, MLS and NHL.

Jordi Alba has agreed to a contract extension with Inter Miami, keeping the left back in south Florida through the end of the 2027 Major League Soccer season.

Tadeo Allende's brace led to a 3-3 draw between Inter Miami and San Jose on Wednesday night. This was Lionel Messi's first match in the Bay Area since joining the MLS in 2023.