Sporting Kansas City vs Portland Timbers

13 April 2025 · MLS · 2025 · Referee Armando Villarrea

Full time 2 – 4

Half-time: 2–2

  • Shapi Suleymanov 16’
  • Dejan Joveljić 33’ (pen)
  • David Ayala 10’
  • Kevin Kelsy 25’, 49’
  • Jansen Miller 54’ (og)

Match summary

Portland Timbers won 4-2 away at Sporting Kansas City. It was 2-2 at half-time.

In the first half, David Ayala put Portland Timbers ahead from a corner in the 10th minute, Shapi Suleymanov equalised with a direct free kick in the 16th minute, Kevin Kelsy put Portland Timbers back in front in the 25th minute, and Dejan Joveljić equalised from the penalty spot in the 33rd minute. In the second half, Kelsy put Portland Timbers back in front in the 49th minute and Miller's own goal made it 2-4 from a corner in the 54th minute.

Sporting Kansas City can feel hard done by, creating 2.16 expected goals (xG) from 9 shots to Portland Timbers's 1.00 from 14. Dejan Joveljić had a penalty saved for Sporting Kansas City.

Match stats

45% Possession 55%
9 Shots 14
6 Shots on target 8
6 Corners 7
423 Passes 516
84.6% Pass accuracy 88.0%
17 Tackles 18
9 Fouls 16
1 Yellow cards 4
4 Offsides 3

Key events

Sporting Kansas City Portland Timbers
Kick-off
Dániel SallóiShot on target
2’
10’
David AyalaRight foot shot0-1 (Portland Timbers)
Shapi SuleymanovFree Kick1-1 (Sporting Kansas City)
16’
22’
25’
Kevin KelsyLeft foot shot1-2 (Portland Timbers)
27’
David Pereira Da CostaShot on target
28’
Shapi SuleymanovVAR: No penalty
30’
Dejan JoveljićPenalty2-2 (Sporting Kansas City)
33’
Joaquín Fernández
45+6’
Half-time2-2
46’
Claudio BravoIan Smith
49’
Kevin KelsyLeft foot shot2-3 (Portland Timbers)
Second half underway
54’
Jansen MillerOwn goal2-4 (Portland Timbers)
54’
Claudio BravoShot on target
58’
62’
David Pereira Da CostaShot on target
Jacob DavisShot on target
67’
Memo RodríguezKhiry Shelton
69’
Tim LeiboldLogan Ndenbe
69’
69’
Jonathan RodríguezSantiago Moreno
69’
Cristhian ParedesDiego Chará
76’
Felipe MoraKevin Kelsy
78’
Dejan JoveljićShot on target
79’
81’
David Pereira Da CostaShot on target
William AgadaManu García
89’
89’
Jonathan RodríguezShot on target
Dejan JoveljićMissed penaltysaved
90+3’
Dejan JoveljićShot on target
90+3’
Full-time2-4

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 2.16 1.00 10’ David Ayala (Portland Timbers), 0-1 10’ 16’ Shapi Suleymanov (Sporting Kansas City), 1-1 16’ 25’ Kevin Kelsy (Portland Timbers), 1-2 25’ 33’ Dejan Joveljić (Sporting Kansas City), 2-2 33’ 49’ Kevin Kelsy (Portland Timbers), 2-3 49’ 54’ Jansen Miller (Portland Timbers) own goal, 2-4 54’ 0.0 0.5 1.0 1.5 2.0 2.5 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 2.16 1.00 10’ David Ayala (Portland Timbers), 0-1 Ayala 10’ 16’ Shapi Suleymanov (Sporting Kansas City), 1-1 Suleymanov 16’ 25’ Kevin Kelsy (Portland Timbers), 1-2 Kelsy 25’ 33’ Dejan Joveljić (Sporting Kansas City), 2-2 Joveljić 33’ 49’ Kevin Kelsy (Portland Timbers), 2-3 Kelsy 49’ 54’ Jansen Miller (Portland Timbers) own goal, 2-4 Miller 54’
Sporting Kansas City 2.16 xGPortland Timbers 1.00 xG Goal

Tap a goal for the scorer and score.

Shot map

Every shot and where it was taken from.

 Portland Timbers attacking Sporting Kansas City attacking 
33’ Dejan Joveljić (Sporting Kansas City), penalty, 0.79 xG, goal 90+3’ Dejan Joveljić (Sporting Kansas City), penalty, 0.79 xG, saved 47’ David Pereira Da Costa (Portland Timbers), open play, 0.22 xG, off target 2’ Dániel Sallói (Sporting Kansas City), open play, 0.20 xG, saved 79’ Dejan Joveljić (Sporting Kansas City), open play, 0.14 xG, saved 10’ David Ayala (Portland Timbers), from a corner, 0.11 xG, goal 40’ Joaquín Fernández (Sporting Kansas City), from a corner, 0.11 xG, off target 49’ Kevin Kelsy (Portland Timbers), open play, 0.09 xG, goal 62’ David Pereira Da Costa (Portland Timbers), open play, 0.10 xG, saved 81’ David Pereira Da Costa (Portland Timbers), open play, 0.09 xG, saved 27’ David Pereira Da Costa (Portland Timbers), open play, 0.08 xG, saved 25’ Kevin Kelsy (Portland Timbers), open play, 0.07 xG, goal 54’ Claudio Bravo (Portland Timbers), from a corner, 0.07 xG, saved 67’ Jacob Davis (Sporting Kansas City), open play, 0.06 xG, saved 25’ David Ayala (Portland Timbers), open play, 0.04 xG, blocked 21’ Santiago Moreno (Portland Timbers), open play, 0.04 xG, off target 16’ Shapi Suleymanov (Sporting Kansas City), direct free kick, 0.03 xG, goal 89’ Jonathan Rodríguez (Portland Timbers), open play, 0.03 xG, saved 51’ Santiago Moreno (Portland Timbers), open play, 0.02 xG, blocked 36’ Jacob Davis (Sporting Kansas City), open play, 0.02 xG, off target 63’ Santiago Moreno (Portland Timbers), open play, 0.02 xG, off target 51’ Antony Alves (Portland Timbers), open play, 0.01 xG, blocked 90+3’ Dejan Joveljić (Sporting Kansas City), from a corner, 0.01 xG, blocked 54’ Jansen Miller (Sporting Kansas City), own goal 33’ Dejan Joveljić (Sporting Kansas City), penalty, 0.79 xG, goal 90+3’ Dejan Joveljić (Sporting Kansas City), penalty, 0.79 xG, saved 47’ David Pereira Da Costa (Portland Timbers), open play, 0.22 xG, off target 2’ Dániel Sallói (Sporting Kansas City), open play, 0.20 xG, saved 79’ Dejan Joveljić (Sporting Kansas City), open play, 0.14 xG, saved 10’ David Ayala (Portland Timbers), from a corner, 0.11 xG, goal 40’ Joaquín Fernández (Sporting Kansas City), from a corner, 0.11 xG, off target 62’ David Pereira Da Costa (Portland Timbers), open play, 0.10 xG, saved 49’ Kevin Kelsy (Portland Timbers), open play, 0.09 xG, goal 81’ David Pereira Da Costa (Portland Timbers), open play, 0.09 xG, saved 27’ David Pereira Da Costa (Portland Timbers), open play, 0.08 xG, saved 25’ Kevin Kelsy (Portland Timbers), open play, 0.07 xG, goal 54’ Claudio Bravo (Portland Timbers), from a corner, 0.07 xG, saved 67’ Jacob Davis (Sporting Kansas City), open play, 0.06 xG, saved 25’ David Ayala (Portland Timbers), open play, 0.04 xG, blocked 21’ Santiago Moreno (Portland Timbers), open play, 0.04 xG, off target 16’ Shapi Suleymanov (Sporting Kansas City), direct free kick, 0.03 xG, goal 89’ Jonathan Rodríguez (Portland Timbers), open play, 0.03 xG, saved 51’ Santiago Moreno (Portland Timbers), open play, 0.02 xG, blocked 36’ Jacob Davis (Sporting Kansas City), open play, 0.02 xG, off target 63’ Santiago Moreno (Portland Timbers), open play, 0.02 xG, off target 90+3’ Dejan Joveljić (Sporting Kansas City), from a corner, 0.01 xG, blocked 51’ Antony Alves (Portland Timbers), open play, 0.01 xG, blocked 54’ Jansen Miller (Sporting Kansas 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

Sporting Kansas City 4-3-3 Starting XI
Pulskamp
Shelton 69’
Miller
Fernández
Ndenbe 69’
Bartlett 88’
García 89’
Davis
Sallói
Joveljić
Suleymanov 55’
Portland Timbers 4-2-3-1 Starting XI
Pantemis
Smith 46’
Surman
Miller
Mosquera
Chará 69’
Ayala
Alves 76’
Costa
Moreno 69’
Kelsy 2 76’

Player stats

Goalkeeper1 player
90′ 5 4 28 – – – – –
Defenders7 players
Khiry Shelton Taken off
69′ – 2 – 3 1 29 3 – – –
90′ 2 – – 2 – 50 – – – –
Joaquín Fernández
90′ 2 – – 6 1 47 1 – – –
Logan Ndenbe Taken off
69′ 2 1 – 3 – 27 – – – –
90′ 1 1 – 2 – 39 – – – –
Tim Leibold Came on as a substitute
21′ – – – 2 – 11 1 – – –
Memo Rodríguez Came on as a substitute
21′ – – – – – 17 – – – –
Midfielders6 players
Jacob Bartlett Taken off
88′ – – 46 – 0.01 3 – 4 – 1 –
Manu García Taken off
89′ – – 39 1 0.21 2 – 4 – 2 –
Shapi Suleymanov Taken off
55′ 1 – 20 1 0.12 2 1 9 1 4 –
90′ – – 33 2 0.16 1 1 1 1 – –
Erik Thommy Came on as a substitute
35′ – – 17 – 0.01 1 – 1 – – –
William Agada Came on as a substitute
1′ – – 3 – 0.00 – – – 1 – –
Forwards2 players
90′ 1 – 4 3 1.73 0.03 1 4 1 17 –
Stephen Afrifa Came on as a substitute
8′ – – – – – – – 3 1 – –
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.