Real Salt Lake vs St. Louis City

6 July 2025 · MLS · 2025 · Referee Allen Chapman

Full time 3 – 2

Half-time: 2–0

  • Noel Caliskan 6’
  • Diogo Gonçalves 43’
  • Joshua Yaro 64’ (og)
  • João Klauss 51’
  • Joshua Yaro 80’

Match summary

Real Salt Lake beat St. Louis City 3-2. Real Salt Lake led 2-0 at half-time.

In the first half, Noel Caliskan put Real Salt Lake ahead from a corner in the 6th minute and Diogo Gonçalves made it 2-0 in the 43rd minute. In the second half, João Klauss pulled one back to make it 2-1 with a header in the 51st minute, Yaro's own goal made it 3-1 in the 64th minute, and Joshua Yaro made it 3-2 from a corner in the 80th minute.

St. Louis City can feel hard done by, creating 2.03 expected goals (xG) from 18 shots to Real Salt Lake's 1.68 from 15.

Match stats

49% Possession 51%
15 Shots 18
6 Shots on target 6
5 Corners 10
446 Passes 456
81.6% Pass accuracy 84.9%
19 Tackles 15
10 Fouls 8
1 Yellow cards 1
1 Offsides 1

Key events

Real Salt Lake St. Louis City
Kick-off
Noel CaliskanRight foot shot1-0 (Real Salt Lake)
6’
9’
Simon BecherShot on target
17’
21’
Cedric TeuchertShot on target
22’
Simon BecherShot on target
Johnny RussellShot on target
23’
Johnny Russell
32’
Alexandros KatranisShot on target
37’
Johnny RussellShot on target
40’
Diogo GonçalvesRight foot shot2-0 (Real Salt Lake)
43’
Half-time2-0
Second half underway
51’
João KlaussHeader2-1 (St. Louis City)
Zavier GozoShot on target
54’
Dominik MarczukJohnny Russell
60’
Joshua YaroOwn goal3-1 (Real Salt Lake)
64’
71’
Celio PompeuCedric Teuchert
71’
Joseph ZalinskyTomas Totland
75’
João KlaussShot on target
80’
Joshua Yaro3-2 (St. Louis City)
Ariath PiolWilliam Agada
90+5’
Full-time3-2

How the chances added up

Running total of expected goals (xG) for each side through the match. xG rates each chance by how often similar shots are scored. A goal is marked where it was scored.

0.0 0.5 1.0 1.5 2.0 2.5 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 1.68 2.03 6’ Noel Caliskan (Real Salt Lake), 1-0 6’ 43’ Diogo Gonçalves (Real Salt Lake), 2-0 43’ 51’ João Klauss (St. Louis City), 2-1 51’ 64’ Joshua Yaro (Real Salt Lake) own goal, 3-1 64’ 80’ Joshua Yaro (St. Louis City), 3-2 80’ 0.0 0.5 1.0 1.5 2.0 2.5 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 1.68 2.03 6’ Noel Caliskan (Real Salt Lake), 1-0 Caliskan 6’ 43’ Diogo Gonçalves (Real Salt Lake), 2-0 Gonçalves 43’ 51’ João Klauss (St. Louis City), 2-1 Klauss 51’ 64’ Joshua Yaro (Real Salt Lake) own goal, 3-1 Yaro 64’ 80’ Joshua Yaro (St. Louis City), 3-2 Yaro 80’
Real Salt Lake 1.68 xGSt. Louis City 2.03 xG Goal

Tap a goal for the scorer and score.

Shot map

Every shot and where it was taken from.

 St. Louis City attacking Real Salt Lake attacking 
54’ Zavier Gozo (Real Salt Lake), open play, 0.36 xG, saved 23’ Johnny Russell (Real Salt Lake), open play, 0.29 xG, saved 80’ Joshua Yaro (St. Louis City), from a corner, 0.26 xG, goal 23’ William Agada (Real Salt Lake), open play, 0.24 xG, blocked 22’ Simon Becher (St. Louis City), set piece, 0.22 xG, saved 9’ Simon Becher (St. Louis City), open play, 0.21 xG, saved 61’ Jaziel Orozco (St. Louis City), from a corner, 0.19 xG, blocked 71’ Marcel Hartel (St. Louis City), open play, 0.17 xG, off target 90+8’ João Klauss (St. Louis City), open play, 0.14 xG, off target 26’ João Klauss (St. Louis City), from a corner, 0.12 xG, off target 23’ Johnny Russell (Real Salt Lake), open play, 0.12 xG, blocked 43’ Diogo Gonçalves (Real Salt Lake), open play, 0.12 xG, goal 83’ William Agada (Real Salt Lake), open play, 0.12 xG, off target 79’ João Klauss (St. Louis City), open play, 0.11 xG, off target 21’ Cedric Teuchert (St. Louis City), open play, 0.11 xG, saved 41’ Justen Glad (Real Salt Lake), from a corner, 0.10 xG, off target 51’ João Klauss (St. Louis City), from a corner, 0.10 xG, goal 75’ João Klauss (St. Louis City), open play, 0.10 xG, saved 90+3’ João Klauss (St. Louis City), from a corner, 0.10 xG, off target 2’ Johnny Russell (Real Salt Lake), open play, 0.09 xG, blocked 42’ Cedric Teuchert (St. Louis City), open play, 0.06 xG, off target 40’ Johnny Russell (Real Salt Lake), open play, 0.06 xG, saved 19’ Justen Glad (Real Salt Lake), from a corner, 0.06 xG, blocked 50’ Simon Becher (St. Louis City), open play, 0.04 xG, blocked 49’ João Klauss (St. Louis City), open play, 0.04 xG, blocked 83’ Diogo Gonçalves (Real Salt Lake), open play, 0.04 xG, blocked 6’ Noel Caliskan (Real Salt Lake), from a corner, 0.03 xG, goal 49’ Conrad Wallem (St. Louis City), open play, 0.03 xG, off target 49’ Marcel Hartel (St. Louis City), open play, 0.03 xG, blocked 59’ Alexandros Katranis (Real Salt Lake), open play, 0.03 xG, blocked 73’ Dominik Marczuk (Real Salt Lake), open play, 0.02 xG, blocked 37’ Alexandros Katranis (Real Salt Lake), from a corner, 0.02 xG, saved 87’ Jaziel Orozco (St. Louis City), set piece, 0.01 xG, off target 64’ Joshua Yaro (St. Louis City), own goal 54’ Zavier Gozo (Real Salt Lake), open play, 0.36 xG, saved 23’ Johnny Russell (Real Salt Lake), open play, 0.29 xG, saved 80’ Joshua Yaro (St. Louis City), from a corner, 0.26 xG, goal 23’ William Agada (Real Salt Lake), open play, 0.24 xG, blocked 22’ Simon Becher (St. Louis City), set piece, 0.22 xG, saved 9’ Simon Becher (St. Louis City), open play, 0.21 xG, saved 61’ Jaziel Orozco (St. Louis City), from a corner, 0.19 xG, blocked 71’ Marcel Hartel (St. Louis City), open play, 0.17 xG, off target 90+8’ João Klauss (St. Louis City), open play, 0.14 xG, off target 26’ João Klauss (St. Louis City), from a corner, 0.12 xG, off target 43’ Diogo Gonçalves (Real Salt Lake), open play, 0.12 xG, goal 83’ William Agada (Real Salt Lake), open play, 0.12 xG, off target 23’ Johnny Russell (Real Salt Lake), open play, 0.12 xG, blocked 79’ João Klauss (St. Louis City), open play, 0.11 xG, off target 21’ Cedric Teuchert (St. Louis City), open play, 0.11 xG, saved 41’ Justen Glad (Real Salt Lake), from a corner, 0.10 xG, off target 75’ João Klauss (St. Louis City), open play, 0.10 xG, saved 90+3’ João Klauss (St. Louis City), from a corner, 0.10 xG, off target 51’ João Klauss (St. Louis City), from a corner, 0.10 xG, goal 2’ Johnny Russell (Real Salt Lake), open play, 0.09 xG, blocked 42’ Cedric Teuchert (St. Louis City), open play, 0.06 xG, off target 40’ Johnny Russell (Real Salt Lake), open play, 0.06 xG, saved 19’ Justen Glad (Real Salt Lake), from a corner, 0.06 xG, blocked 50’ Simon Becher (St. Louis City), open play, 0.04 xG, blocked 49’ João Klauss (St. Louis City), open play, 0.04 xG, blocked 83’ Diogo Gonçalves (Real Salt Lake), open play, 0.04 xG, blocked 6’ Noel Caliskan (Real Salt Lake), from a corner, 0.03 xG, goal 49’ Conrad Wallem (St. Louis City), open play, 0.03 xG, off target 49’ Marcel Hartel (St. Louis City), open play, 0.03 xG, blocked 59’ Alexandros Katranis (Real Salt Lake), open play, 0.03 xG, blocked 73’ Dominik Marczuk (Real Salt Lake), open play, 0.02 xG, blocked 37’ Alexandros Katranis (Real Salt Lake), from a corner, 0.02 xG, saved 87’ Jaziel Orozco (St. Louis City), set piece, 0.01 xG, off target 64’ Joshua Yaro (St. Louis City), own goal
Size shows xG Goal On target Off target or blocked

Hover or tap a shot for the player, minute and xG.

Lineups

Real Salt Lake 4-2-3-1 Starting XI
Cabral
Junqua
Katranis 82’
Glad
Caliskan
Palacio
Ruíz 90’
Russell 60’
Gonçalves
Gozo
Agada 90’
St. Louis City 4-1-4-1 Starting XI
Bürki
Girdwood-Reich 80’
Yaro
Orozco
Totland 71’
Wallem
Teuchert 71’
Ostrák 63’
Hartel
Becher 80’
Klauss

Player stats

Goalkeeper1 player
90′ 4 2 45 – – – – –
Defenders4 players
90′ 5 1 – 10 4 47 – – – –
90′ 2 – – 3 1 46 – – – –
Alexandros Katranis Taken off
82′ – – – – – 28 – – – –
Brayan Vera Came on as a substitute
8′ – – – – – 7 1 – – –
Midfielders7 players
90′ 1 – 58 1 0.09 4 – 6 1 1 –
90′ – – 59 1 0.04 2 – 3 2 1 –
Pablo Ruíz Taken off
89′ – – 50 3 0.40 4 1 5 – 1 –
Johnny Russell Taken off
60′ – – 17 – 0.02 – – 2 2 1 –
90′ – – 14 – 0.32 1 1 1 2 – –
90′ 1 – 36 4 0.27 1 2 3 1 2 –
Dominik Marczuk Came on as a substitute
30′ – – 14 – 0.00 – – 1 – 1 –
Forwards1 player
William Agada Taken off
89′ – 1 2 – 0.35 0.02 3 6 1 24 –
Came on Taken off Sent off Red is the most in that position for the team

Every player who took the pitch, starters first and then substitutes. A dash means none. xG and xA are expected goals and assists.

Form going into the game

Last five league games before this one, oldest first. Select one to open it.

Previous and next meeting

Shots, expected goals, timeline, lineups, team and player statistics from Bzzoiro Sports Data (sports.bzzoiro.com). Results and odds from football-data.co.uk. Referee data before 2025/26 from the Transfermarkt datasets project.