MLS
· Regular Season - 17
July 26, 2026 04:30
F. Mora
(ast. A. Lassiter)
56'
F. Mora
(ast. K. Velde)
67'
18'
(ast. M. Guilavogui)
J. Sanabria
The ForzaPitch pre-match prediction gave Portland Timbers a 48% win probability (draw 23%, Real Salt Lake 28%). The final result was Portland Timbers 2–1 Real Salt Lake. In 1 previous meetings, Portland Timbers have won 0 times, with 0 draws and 1 wins for Real Salt Lake.
Match statistics
14
Total shots
6
6
Shots on target
2
2.58
Actual xG
0.15
1
Saves
4
61%
Possession
39%
13
Corners
5
12
Tackles
17
2
🟨 Yellow cards
1
0
🟥 Red cards
1
Match Events
C. Bassett
10'
18'
ast. M. Guilavogui ·
J. Sanabria⚽
34'
M. Guilavogui
D. Chara
41'
55'
S. Solans
⚽F. Mora
· ast. A. Lassiter
56'
A. Lassiter
/ Antony
57'
58'
S. Junqua
/
D. Yedlin
⚽F. Mora
· ast. K. Velde
67'
D. Chara
/ J. Caicedo
72'
F. Mora
/ A. Aravena
72'
74'
S. Lobjanidze
/
D. Luna
74'
V. Olatunji
/
S. Solans
74'
J. J. Arias
/
L. Engel
85'
A. Katranis
/
J. Sanabria
C. Bassett
/ J. Ortiz
86'
Pre-match prediction
48.0%
Portland ←
23.88%
X
28.12%
Real
we assigned to the actual result (Portland Timbers)
48.0%
(medium confidence)
Expected vs actual xG
Exp.
Actual
Δ
1.76
2.58
+0.82
1.26
0.15
-1.11
Portland Timbers dominated by xG (2.58 vs 0.15).
The final result reflects the playing dominance.
The model's xG estimates diverged from reality.
Lineups
41
James Pantemis
G
James Pantemis
G
27
J. Fory
D
J. Fory
D
4
K. Miller
D
K. Miller
D
20
Finn Surman
D
Finn Surman
D
5
Brandon Bye
D
Brandon Bye
D
21
Diego Chará
72'
M
Diego Chará
72'
M
99
Kristoffer Velde
1 👟
M
Kristoffer Velde
1 👟
M
10
David Pereira da Costa
M
David Pereira da Costa
M
17
Cole Bassett
86'
M
Cole Bassett
86'
M
7
Ariel Lassiter
1 👟
57'
M
Ariel Lassiter
1 👟
57'
M
9
Felipe Mora
2 ⚽
72'
F
Felipe Mora
2 ⚽
72'
F
Bench
28
Alexander Aravena
24'
F
Alexander Aravena
24'
F
6
Alex Bonetig
D
Alex Bonetig
D
11
Antony Alves
39'
F
Antony Alves
39'
F
15
Eric Miller
D
Eric Miller
D
23
Ian Smith
D
Ian Smith
D
80
Joao Ortíz
10'
M
Joao Ortíz
10'
M
30
José Caicedo
24'
M
José Caicedo
24'
M
53
Sawyer Jura
D
Sawyer Jura
D
25
Trey Muse
G
Trey Muse
G
1
Rafael Cabral
G
Rafael Cabral
G
4
Lukas Engel
74'
D
Lukas Engel
74'
D
26
Philip Quinton
D
Philip Quinton
D
2
DeAndre Yedlin
58'
D
DeAndre Yedlin
58'
D
8
Juan Sanabria
1 ⚽
85'
M
Juan Sanabria
1 ⚽
85'
M
92
Noel Caliskan
M
Noel Caliskan
M
6
Stijn Spierings
M
Stijn Spierings
M
72
Z. Gozo
M
Z. Gozo
M
9
Morgan Guilavogui
1 👟
34'
F
Morgan Guilavogui
1 👟
34'
F
22
Sergi Solans
74'
F
Sergi Solans
74'
F
10
D. Luna
74'
F
D. Luna
74'
F
Bench
98
Alexandros Katranis
11'
D
Alexandros Katranis
11'
D
27
Griffin Dillon
M
Griffin Dillon
M
21
Juan Jose Arias
22'
D
Juan Jose Arias
22'
D
31
Mason Stajduhar
G
Mason Stajduhar
G
7
Pablo Ruíz
M
Pablo Ruíz
M
12
Saba Lobzhanidze
22'
M
Saba Lobzhanidze
22'
M
29
Sam Junqua
38'
D
Sam Junqua
38'
D
17
Victor Olatunji
22'
F
Victor Olatunji
22'
F
23
Zach Booth
M
Zach Booth
M
Best on the pitch
Kristoffer Velde
M · Portland
8.30
1 👟
4 shots
· 35 pass
Felipe Mora
F · Portland
8.20
2 ⚽
3 shots
· 6 pass
Juan Sanabria
M · Real
7.90
1 ⚽
1 shots
· 34 pass
K. Miller
D · Portland
7.70
· 79 pass
Rafael Cabral
G · Real
7.60
· 36 pass
Ariel Lassiter
M · Portland
7.30
1 👟
· 20 pass
Portland Timbers — Player statistics
| Team | Pos | Min | Rating | ⚽ | 👟 | Shots | Pass | Acc% | Tck | YC | RC |
|---|---|---|---|---|---|---|---|---|---|---|---|
| James Pantemis | G | 96 | 6.60 | — | — | — | 23 | 20% | — | — | — |
| J. Fory | D | 96 | 6.60 | — | — | 1 | 56 | 45% | 2 | — | — |
| K. Miller | D | 96 | 7.70 | — | — | — | 79 | 71% | 2 | — | — |
| Finn Surman | D | 96 | 7.00 | — | — | — | 69 | 64% | — | — | — |
| Brandon Bye | D | 96 | 7.00 | — | — | — | 60 | 49% | 1 | — | — |
| Diego Chará | M | 72 | 7.20 | — | — | — | 39 | 37% | 1 | 1 | — |
| Kristoffer Velde | M | 96 | 8.30 | — | 1 | 4 | 35 | 28% | 2 | — | — |
| David Pereira da Costa | M | 96 | 7.20 | — | — | 1 | 58 | 55% | 2 | — | — |
| Cole Bassett | M | 86 | 5.90 | — | — | 2 | 40 | 34% | — | 1 | — |
| Ariel Lassiter | M | 57 | 7.30 | — | 1 | — | 20 | 17% | — | — | — |
| Felipe Mora | F | 72 | 8.20 | 2 | — | 3 | 6 | 4% | — | — | — |
| Alexander Aravena | F | 24 | 6.70 | — | — | 2 | 6 | 6% | — | — | — |
| Antony Alves | F | 39 | 6.70 | — | — | — | 10 | 10% | — | — | — |
| Joao Ortíz | M | 10 | 6.30 | — | — | — | 5 | 5% | — | — | — |
| José Caicedo | M | 24 | 6.90 | — | — | 1 | 12 | 12% | 2 | — | — |
Real Salt Lake — Player statistics
| Team | Pos | Min | Rating | ⚽ | 👟 | Shots | Pass | Acc% | Tck | YC | RC |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Rafael Cabral | G | 96 | 7.60 | — | — | — | 36 | 22% | — | — | — |
| Lukas Engel | D | 74 | 6.50 | — | — | 1 | 41 | 33% | 1 | — | — |
| Philip Quinton | D | 96 | 7.20 | — | — | — | 36 | 26% | 1 | — | — |
| DeAndre Yedlin | D | 58 | 7.00 | — | — | — | 19 | 16% | 3 | — | — |
| Juan Sanabria | M | 85 | 7.90 | 1 | — | 1 | 34 | 28% | 2 | — | — |
| Noel Caliskan | M | 96 | 7.20 | — | — | 1 | 49 | 40% | 1 | — | — |
| Stijn Spierings | M | 96 | 6.90 | — | — | 1 | 33 | 30% | 3 | — | — |
| Z. Gozo | M | 96 | 6.30 | — | — | 1 | 21 | 14% | 4 | — | — |
| Morgan Guilavogui | F | 34 | 5.70 | — | 1 | — | 8 | 7% | 1 | — | 1 |
| Sergi Solans | F | 74 | 6.20 | — | — | 1 | 11 | 8% | — | 1 | — |
| D. Luna | F | 74 | 6.90 | — | — | — | 29 | 26% | 1 | — | — |
| Alexandros Katranis | D | 11 | 6.60 | — | — | — | 2 | 2% | — | — | — |
| Juan Jose Arias | D | 22 | 6.70 | — | — | — | 7 | 5% | — | — | — |
| Saba Lobzhanidze | M | 22 | 6.20 | — | — | — | 2 | 1% | — | — | — |
| Sam Junqua | D | 38 | 6.70 | — | — | — | 8 | 6% | — | — | — |
| Victor Olatunji | F | 22 | 6.30 | — | — | — | 2 | — | — | — | — |
Frequently Asked Questions
What was the final score of Portland Timbers vs Real Salt Lake?
The final score was Portland Timbers 2–1 Real Salt Lake.
What did the model predict before Portland Timbers vs Real Salt Lake?
The model assigned 48% probability to a Portland Timbers win, 23% to a draw, and 28% to an Real Salt Lake win.