Championship · 2025The Den

Millwall 2–1 Swansea City · Championship

2–1Historical match

A completed match from a finished season. This page is the record of what happened.

Match at a glance

Millwall won 2–1.

Shots
1713
Shots on target
97
Expected goals
1.931.05
Possession
47%53%

Full time

What the match recorded

Millwall beat Swansea City 2–1. Recorded in this match (Millwall – Swansea City): shots 17–13, shots on target 9–7, expected goals 1.93–1.05, possession 47%–53%. 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.

Recent scheduling adds useful context

moderate

A compressed recent schedule is recorded for Millwall, Swansea City.

3 days ▲Rest daysMillwall · Swansea City3 days
Evidence and caveat

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

Window: previous 14 days

MetricMillwallSwansea CityBaseline
Rest days3 days3 days—
Matches last 14 days3 matches3 matches—

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

Millwall's recent record differs from the season

moderate

Millwall's last-five goals scored average is below their season average.

0.8 goals/match ▲Goals forLast 5 · Season1.12 goals/match
Evidence and caveat

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

Window: last_5 versus season

MetricLast 5SeasonBaseline
Goals for0.8 goals/match1.12 goals/match1.37 goals/match

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

The teams have contrasting possession records

moderate

Swansea City have recorded the higher season possession share.

46%PossessionMillwall · Swansea City● 54.9%
Evidence and caveat

Comparison: The recorded possession gap is 8.9 percentage points.

Window: season

MetricMillwallSwansea CityBaseline
Possession46%54.9%50.5%

Caveat: Possession share does not show where possession occurred or how chances were created.

This match

Match statistics

  • Shots17 shots13 shotsMillwall 17 shots, Swansea City 13 shots
  • Shots on target9 shots7 shotsMillwall 9 shots, Swansea City 7 shots
  • Expected goals1.93 xG1.05 xGMillwall 1.93 xG, Swansea City 1.05 xG
  • Possession47%53%Millwall 47%, Swansea City 53%
  • Corners12 corners3 cornersMillwall 12 corners, Swansea City 3 corners
  • Fouls12 fouls8 foulsMillwall 12 fouls, Swansea City 8 fouls

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.

Jay Fulton · Swansea City · 47′ · 0.01 xG · off target or blockedŽan Vipotnik · Swansea City · 47′ · 0.01 xG · off target or blockedEthan Galbraith · Swansea City · 67′ · 0.01 xG · off target or blockedFemi Azeez · Millwall · 37′ · 0.02 xG · on targetGonçalo Franco · Swansea City · 41′ · 0.02 xG · on targetBilly Mitchell · Millwall · 49′ · 0.02 xG · on targetJi-sung Eom · Swansea City · 61′ · 0.02 xG · off target or blockedJake Cooper · Millwall · 76′ · 0.02 xG · off target or blockedMelker Widell · Swansea City · 78′ · 0.02 xG · off target or blockedCaleb Taylor · Millwall · 90′ · 0.02 xG · off target or blockedTristan Crama · Millwall · 8′ · 0.03 xG · off target or blockedRonald · Swansea City · 45′ · 0.04 xG · on targetMihailo Ivanović · Millwall · 84′ · 0.04 xG · on targetEthan Galbraith · Swansea City · 90′ · 0.04 xG · on targetMacaulay Langstaff · Millwall · 22′ · 0.05 xG · off target or blockedRonald · Swansea City · 42′ · 0.05 xG · on targetMihailo Ivanović · Millwall · 35′ · 0.06 xG · on targetCaleb Taylor · Millwall · 62′ · 0.06 xG · off target or blockedEthan Galbraith · Swansea City · 73′ · 0.06 xG · off target or blockedTristan Crama · Millwall · 86′ · 0.07 xG · off target or blockedMihailo Ivanović · Millwall · 7′ · 0.09 xG · off target or blockedBilly Mitchell · Millwall · 76′ · 0.11 xG · off target or blockedMihailo Ivanović · Millwall · 17′ · 0.12 xG · on targetBen Cabango · Swansea City · 43′ · 0.12 xG · on targetJay Fulton · Swansea City · 73′ · 0.12 xG · on targetCaleb Taylor · Millwall · 90′ · 0.17 xG · goalMihailo Ivanović · Millwall · 38′ · 0.25 xG · goalMacaulay Langstaff · Millwall · 35′ · 0.36 xG · on targetMacaulay Langstaff · Millwall · 17′ · 0.49 xG · on targetBen Cabango · Swansea City · 47′ · 0.55 xG · goal
  • off target
  • on target
  • goal
  • penalty
  • size = xG

Millwall: 17 shots, 9 on target, 1.98 xG. Swansea City: 13 shots, 7 on target, 1.07 xG.

How the match built

Expected-goals timeline

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

0120′HT90′Mihailo Ivanović · Millwall · 38′Caleb Taylor · Millwall · 90′Ben Cabango · Swansea City · 47′

The step line is cumulative expected goals; circles mark goals. Final: Millwall 1.98 xG · Swansea City 1.07 xG.

History

Head-to-head

Recent meetings between these teams.

Last 5 meetings

3Millwall
1Draws
1Swansea City
Swansea City — Millwall · Championship1–1
Millwall — Swansea City · Championship1–0
Swansea City — Millwall · Championship0–1
Swansea City — Millwall · Championship0–1
Millwall — Swansea City · Championship0–3

Head-to-Head & Recent Meetings

Metric comparison

Team comparison

Season averages, with the sample size beside each metric.

Where the edge is

Season: Millwall favored in 5 of 11 directional metrics · Swansea City in 1 · 5 too close

led this metric higher value (descriptive) too close

Window

Season

Millwall26 matchesSwansea City26 matches
1.12 goals/match ▲Goals scored26/261.04 goals/match
1.27 goals/matchGoals allowed26/261.27 goals/match
1.23 xG/match ▲Expected goals26/260.87 xG/match
12.4 shots/match ▲Shots25/2511.6 shots/match
4.04 shots/matchShots on target25/253.84 shots/match
46%Possession25/25● 54.9%
5.4 corners/match ●Corners25/254.64 corners/match
13.4 fouls/matchFouls24/2410.1 fouls/match

Evidence quality

How much supports this analysis

Grade A · Strong evidenceStrong evidence — limited
Season samples26 / 26home / away teams
Recent samples5 / 5last-five windows
FreshnessLess than one dayfrom nearest prior match
  • The fixture is outside the configured active season.
  • 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.
  • Some metrics are unavailable or below their observation minimum: cards.
  • The fixture season differs from the competition's configured active season.
Analysis cutoff: Sun, 4 Jan 2026, 19:00 UTC · analysis-v4

Team rankings in Championship

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