Major League Soccer · 2026Providence Park

Portland Timbers 2–1 Real Salt Lake · Major League Soccer

2–1Full-time analysis

This page describes the completed match context. The result is not presented as a prior forecast.

Match at a glance

Portland Timbers won 2–1.

Shots
226
Shots on target
62
Expected goals
2.210.21
Possession
61%39%

Full time

What the match recorded

Portland Timbers beat Real Salt Lake 2–1. Recorded in this match (Portland Timbers – Real Salt Lake): shots 22–6, shots on target 6–2, expected goals 2.21–0.21, possession 61%–39%. This is what was recorded. It is not a claim that the result was foreseeable.

Pre-match record

What the data showed before kick-off. Kept for reference; it did not know the result.

Portland Timbers's recent record differs from the season

moderate

Portland Timbers's last-five shots average is above their season average.

17.8 shots/match ▲ShotsLast 5 · Season13.5 shots/match
Evidence and caveat

Comparison: An unweighted last-five average is compared with the unweighted season average.

Window: last_5 versus season

MetricLast 5SeasonBaseline
Shots17.8 shots/match13.5 shots/match13 shots/match

Caveat: Five matches are sensitive to opponent mix and isolated match states.

Recent scheduling adds useful context

moderate

A compressed recent schedule is recorded for Portland Timbers, Real Salt Lake.

3 days ▲Rest daysPortland Timbers · Real Salt Lake3 days
Evidence and caveat

Comparison: Rest days and completed matches in the prior 14 days are shown directly.

Window: previous 14 days

MetricPortland TimbersReal Salt LakeBaseline
Rest days3 days3 days—
Matches last 14 days2 matches1 match—

Caveat: The database does not describe travel, rotation decisions or player-level workload.

Real Salt Lake show a distinct attacking-volume record

strong

Real Salt Lake's shot volume and the opposing shot-allowance context sit above their competition baselines.

13.5 shots/match ▲ShotsPortland Timbers · Real Salt Lake15.4 shots/match
Evidence and caveat

Comparison: Team shot volume is paired with the opponent's recorded shot allowance.

Window: season

MetricPortland TimbersReal Salt LakeBaseline
Shots13.5 shots/match15.4 shots/match13 shots/match
Shots against16.4 shots/match12.8 shots/match12.4 shots/match

Caveat: Shot volume describes activity; it does not establish finishing quality or a match outcome.

This match

Match statistics

  • Shots22 shots6 shotsPortland Timbers 22 shots, Real Salt Lake 6 shots
  • Shots on target6 shots2 shotsPortland Timbers 6 shots, Real Salt Lake 2 shots
  • Expected goals2.21 xG0.21 xGPortland Timbers 2.21 xG, Real Salt Lake 0.21 xG
  • Possession61%39%Portland Timbers 61%, Real Salt Lake 39%
  • Corners14 corners5 cornersPortland Timbers 14 corners, Real Salt Lake 5 corners
  • Fouls12 fouls13 foulsPortland Timbers 12 fouls, Real Salt Lake 13 fouls
  • Yellow cards2 cards1 cardPortland Timbers 2 cards, Real Salt Lake 1 card
  • Passes526 passes340 passesPortland Timbers 526 passes, Real Salt Lake 340 passes
  • Pass accuracy88.4%77.7%Portland Timbers 88.4%, Real Salt Lake 77.7%
  • Shots inside box17 shots2 shotsPortland Timbers 17 shots, Real Salt Lake 2 shots
  • Blocked shots8 blocks0 blocksPortland Timbers 8 blocks, Real Salt Lake 0 blocks
  • Goalkeeper saves1 save4 savesPortland Timbers 1 save, Real Salt Lake 4 saves
  • Offsides4 offsides2 offsidesPortland Timbers 4 offsides, Real Salt Lake 2 offsides

Every shot

Shot map

Every recorded shot, placed where it was taken and sized by its expected-goals value. Arrows show each team’s attacking direction.

Kristoffer Velde · Portland Timbers · 26′ · 0.01 xG · off target or blockedLukas Engel · Real Salt Lake · 47′ · 0.01 xG · off target or blockedNoel Caliskan · Real Salt Lake · 14′ · 0.02 xG · off target or blockedKristoffer Velde · Portland Timbers · 16′ · 0.02 xG · off target or blockedCole Bassett · Portland Timbers · 52′ · 0.02 xG · off target or blockedCole Bassett · Portland Timbers · 63′ · 0.02 xG · off target or blockedStijn Spierings · Real Salt Lake · 80′ · 0.02 xG · off target or blockedBrandon Bye · Portland Timbers · 85′ · 0.02 xG · off target or blockedJuan Sanabria · Real Salt Lake · 18′ · 0.03 xG · goalJímer Fory · Portland Timbers · 29′ · 0.03 xG · off target or blockedKristoffer Velde · Portland Timbers · 30′ · 0.03 xG · off target or blockedDavid Pereira Da Costa · Portland Timbers · 49′ · 0.03 xG · on targetKristoffer Velde · Portland Timbers · 50′ · 0.03 xG · on targetBrandon Bye · Portland Timbers · 63′ · 0.03 xG · off target or blockedSergi Solans · Real Salt Lake · 71′ · 0.03 xG · off target or blockedZavier Gozo · Real Salt Lake · 14′ · 0.04 xG · on targetKristoffer Velde · Portland Timbers · 40′ · 0.04 xG · off target or blockedAlexander Aravena · Portland Timbers · 88′ · 0.06 xG · off target or blockedDavid Pereira Da Costa · Portland Timbers · 87′ · 0.09 xG · off target or blockedKristoffer Velde · Portland Timbers · 89′ · 0.10 xG · on targetFelipe Mora · Portland Timbers · 16′ · 0.11 xG · off target or blockedKristoffer Velde · Portland Timbers · 27′ · 0.11 xG · off target or blockedCole Bassett · Portland Timbers · 45′ · 0.11 xG · on targetFelipe Mora · Portland Timbers · 39′ · 0.14 xG · off target or blockedJosé Caicedo · Portland Timbers · 90′ · 0.14 xG · off target or blockedFelipe Mora · Portland Timbers · 67′ · 0.18 xG · goalFelipe Mora · Portland Timbers · 56′ · 0.27 xG · goalAlexander Aravena · Portland Timbers · 90′ · 0.60 xG · off target or blocked
  • off target
  • on target
  • goal
  • penalty
  • size = xG

Portland Timbers: 22 shots, 6 on target, 2.19 xG. Real Salt Lake: 6 shots, 2 on target, 0.15 xG.

How the match built

Expected-goals timeline

Expected goals accumulated minute by minute. Circles mark the goals that were actually scored.

01.252.50′HT90′Felipe Mora · Portland Timbers · 56′Felipe Mora · Portland Timbers · 67′Juan Sanabria · Real Salt Lake · 18′

The step line is cumulative expected goals; circles mark goals. Final: Portland Timbers 2.19 xG · Real Salt Lake 0.15 xG.

History

Head-to-head

Recent meetings between these teams.

Last 5 meetings

1Portland Timbers
2Draws
2Real Salt Lake
Real Salt Lake — Portland Timbers · Major League Soccer2–0
Portland Timbers — Real Salt Lake · Major League Soccer3–1
Portland Timbers — Real Salt Lake · Major League Soccer0–1
Real Salt Lake — Portland Timbers · Major League Soccer0–0
Real Salt Lake — Portland Timbers · Major League Soccer3–3

Head-to-Head & Recent Meetings

Metric comparison

Team comparison

Season averages, with the sample size beside each metric.

Where the edge is

Season: Portland Timbers favored in 0 of 13 directional metrics · Real Salt Lake in 11 · 2 too close

led this metric higher value (descriptive) too close

Window

Season

Portland Timbers17 matchesReal Salt Lake16 matches
1.82 goals/matchGoals scored17/161.75 goals/match
1.88 goals/matchGoals allowed17/16▲ 1.5 goals/match
1.49 xG/matchExpected goals14/13▲ 1.63 xG/match
13.5 shots/matchShots17/16▲ 15.4 shots/match
4.76 shots/matchShots on target17/16▲ 5.69 shots/match
51.2% ●Possession17/1650.6%
5 corners/match ●Corners17/164.75 corners/match
2.86 cards/matchCards7/52.6 cards/match
9.88 fouls/matchFouls17/1612 fouls/match

Evidence quality

How much supports this analysis

Grade A · Strong evidenceStrong evidence — ready
Season samples17 / 16home / away teams
Recent samples5 / 5last-five windows
FreshnessLess than one dayfrom nearest prior match
  • Recent samples and important metric coverage meet the strong evidence threshold.

Known unknowns

  • Lineups, injuries, suspensions and tactical changes are not available in the retained dataset.
Analysis cutoff: Sun, 26 Jul 2026, 06:30 UTC · analysis-v4

Team rankings in Major League Soccer

Make a graphic from this match

Creator Studio builds a branded post from this match's recorded data, with its evidence grade and source cutoff carried into the export.

Turn this match into a graphicReady-made from PitchMath data · No sign-up required