St. Louis City vs Real Salt Lake

2 August 2026 · MLS · 2026 · Referee Chris Penso

Full time 1 – 1

Half-time: 0–0

  • Marcel Hartel 72’
  • Sergi Solans 60’

Match summary

St. Louis City and Real Salt Lake shared the points in a 1-1 draw. It was goalless at half-time.

Sergi Solans put Real Salt Lake ahead in the 60th minute and Marcel Hartel equalised in the 72nd minute.

There was little between the sides on chances: St. Louis City created 1.71 expected goals (xG) from 20 shots, Real Salt Lake 1.47 from 9.

Match stats

67% Possession 33%
20 Shots 9
4 Shots on target 3
9 Corners 4
100 Attacks 40
68 Dangerous attacks 19
657 Passes 318
88.0% Pass accuracy 78.6%
10 Tackles 14
12 Fouls 10
3 Yellow cards 3
2 Offsides 1

Key events

St. Louis City Real Salt Lake
Kick-off
5’
Conrad WallemShot on target
18’
28’
29’
40’
43’
Half-time0-0
Second half underway
54’
Corner
55’
Sam JunquaShot on target
58’
Corner
60’
Sergi SolansLeft foot shot0-1 (Real Salt Lake)
Corner
65’
Corner
69’
Corner
71’
Marcel HartelRight foot shot1-1 (St. Louis City)
72’
Marcel HartelShot on target
74’
Corner
74’
Corner
75’
Corner
76’
Corner
79’
80’
81’
Saba LobzhanidzeShot on target
81’
Corner
81’
Corner
Corner
85’
Corner
85’
Marcel HartelShot on target
90’
Full-time1-1

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 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 1.71 1.47 60’ Sergi Solans (Real Salt Lake), 0-1 60’ 72’ Marcel Hartel (St. Louis City), 1-1 72’ 0.0 0.5 1.0 1.5 2.0 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 1.71 1.47 60’ Sergi Solans (Real Salt Lake), 0-1 Solans 60’ 72’ Marcel Hartel (St. Louis City), 1-1 Hartel 72’
St. Louis City 1.71 xGReal Salt Lake 1.47 xG Goal

Tap a goal for the scorer and score.

Shot map

Every shot and where it was taken from.

 Real Salt Lake attacking St. Louis City attacking 
60’ Sergi Solans (Real Salt Lake), open play, 0.83 xG, goal 72’ Marcel Hartel (St. Louis City), open play, 0.50 xG, goal 81’ Victor Olatunji (Real Salt Lake), from a corner, 0.22 xG, blocked 68’ Simon Becher (St. Louis City), open play, 0.21 xG, blocked 55’ Sam Junqua (Real Salt Lake), from a corner, 0.19 xG, saved 58’ Stijn Spierings (Real Salt Lake), from a corner, 0.16 xG, off target 42’ Simon Becher (St. Louis City), open play, 0.13 xG, off target 90’ Marcel Hartel (St. Louis City), open play, 0.12 xG, saved 83’ Marcel Hartel (St. Louis City), open play, 0.12 xG, off target 76’ Marcel Hartel (St. Louis City), open play, 0.10 xG, blocked 39’ Christopher Durkin (St. Louis City), open play, 0.07 xG, off target 74’ Marcel Hartel (St. Louis City), open play, 0.06 xG, blocked 74’ Marcel Hartel (St. Louis City), open play, 0.06 xG, blocked 16’ Eduard Löwen (St. Louis City), open play, 0.05 xG, off target 37’ Conrad Wallem (St. Louis City), open play, 0.04 xG, blocked 38’ Christopher Durkin (St. Louis City), set piece, 0.04 xG, blocked 72’ Alexandru Mățan (St. Louis City), from a corner, 0.04 xG, blocked 18’ Conrad Wallem (St. Louis City), open play, 0.03 xG, saved 41’ Eduard Löwen (St. Louis City), direct free kick, 0.03 xG, blocked 51’ Conrad Wallem (St. Louis City), open play, 0.03 xG, off target 71’ Simon Becher (St. Louis City), open play, 0.03 xG, blocked 74’ Marcel Hartel (St. Louis City), open play, 0.03 xG, saved 54’ Stijn Spierings (Real Salt Lake), open play, 0.02 xG, blocked 85’ Conrad Wallem (St. Louis City), from a corner, 0.03 xG, blocked 70’ Alexandru Mățan (St. Louis City), from a corner, 0.02 xG, off target 89’ Zach Booth (Real Salt Lake), open play, 0.02 xG, blocked 81’ Saba Lobzhanidze (Real Salt Lake), set piece, 0.01 xG, saved 81’ Saba Lobzhanidze (Real Salt Lake), from a corner, 0.01 xG, blocked 82’ DeAndre Yedlin (Real Salt Lake), from a corner, 0.01 xG, off target 60’ Sergi Solans (Real Salt Lake), open play, 0.83 xG, goal 72’ Marcel Hartel (St. Louis City), open play, 0.50 xG, goal 81’ Victor Olatunji (Real Salt Lake), from a corner, 0.22 xG, blocked 68’ Simon Becher (St. Louis City), open play, 0.21 xG, blocked 55’ Sam Junqua (Real Salt Lake), from a corner, 0.19 xG, saved 58’ Stijn Spierings (Real Salt Lake), from a corner, 0.16 xG, off target 42’ Simon Becher (St. Louis City), open play, 0.13 xG, off target 90’ Marcel Hartel (St. Louis City), open play, 0.12 xG, saved 83’ Marcel Hartel (St. Louis City), open play, 0.12 xG, off target 76’ Marcel Hartel (St. Louis City), open play, 0.10 xG, blocked 39’ Christopher Durkin (St. Louis City), open play, 0.07 xG, off target 74’ Marcel Hartel (St. Louis City), open play, 0.06 xG, blocked 74’ Marcel Hartel (St. Louis City), open play, 0.06 xG, blocked 16’ Eduard Löwen (St. Louis City), open play, 0.05 xG, off target 37’ Conrad Wallem (St. Louis City), open play, 0.04 xG, blocked 72’ Alexandru Mățan (St. Louis City), from a corner, 0.04 xG, blocked 38’ Christopher Durkin (St. Louis City), set piece, 0.04 xG, blocked 18’ Conrad Wallem (St. Louis City), open play, 0.03 xG, saved 41’ Eduard Löwen (St. Louis City), direct free kick, 0.03 xG, blocked 51’ Conrad Wallem (St. Louis City), open play, 0.03 xG, off target 71’ Simon Becher (St. Louis City), open play, 0.03 xG, blocked 74’ Marcel Hartel (St. Louis City), open play, 0.03 xG, saved 85’ Conrad Wallem (St. Louis City), from a corner, 0.03 xG, blocked 54’ Stijn Spierings (Real Salt Lake), open play, 0.02 xG, blocked 70’ Alexandru Mățan (St. Louis City), from a corner, 0.02 xG, off target 89’ Zach Booth (Real Salt Lake), open play, 0.02 xG, blocked 81’ Saba Lobzhanidze (Real Salt Lake), set piece, 0.01 xG, saved 81’ Saba Lobzhanidze (Real Salt Lake), from a corner, 0.01 xG, blocked 82’ DeAndre Yedlin (Real Salt Lake), from a corner, 0.01 xG, off target
Size shows xG Goal On target Off target or blocked

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

Lineups

St. Louis City 3-4-2-1 Starting XI
Bürki
MacNaughton
Baumgartl
Totland
Polvara
Edelman
Durkin 65’
Wallem
Löwen 65’
Sang-bin 84’
Becher 90’
Real Salt Lake 3-4-1-2 Starting XI
Cabral
Junqua
Quinton
Yedlin
Sanabria
Dillon 45’
Caliskan
Booth 90’
Luna 78’
Rodrigues 46’
Solans 90’

Player stats

Goalkeeper1 player
94′ 2 1 16 – – – – –
Defenders3 players
94′ 1 3 – 9 7 87 1 – – –
94′ 2 1 – 6 1 80 – – – –
94′ – – – 2 – 43 – – – –
Midfielders7 players
94′ – – 86 – 0.05 2 – 4 1 – –
94′ – – 54 2 0.10 1 1 5 – 2 –
94′ – – 67 1 0.11 1 – 6 2 – –
Christopher Durkin Taken off
65′ – – 50 1 0.08 2 1 5 4 –
Eduard Löwen Taken off
65′ – – 67 1 0.20 1 – 4 1 –
Alexandru Mățan Came on as a substitute
25′ – – 20 1 0.12 – – 3 – – –
Tomáš Ostrák Came on as a substitute
10′ – – 5 – 0.00 – – 1 – – –
Forwards3 players
Jeong Sang-bin Taken off
84′ – – – – – 0.14 3 1 – 42
Simon Becher Taken off
92′ – – 3 – 0.37 0.07 1 7 3 23 –
Marcel Hartel Came on as a substitute
25′ 1 – 7 3 0.98 0.02 1 1 – 11 –
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.