Match report

Portsmouth Stuns Millwall with 3-1 Victory in Championship Clash

Millwall
Millwall
1–3
FT
Portsmouth
Portsmouth
Feb 21, 2026

Portsmouth delivered a stunning performance to defeat Millwall with a final score of 3-1. Goals from G. Caballero, John Swift, and M. Pack powered the visitors to an important victory in their quest for promotion in the Championship.

Key Facts

  • Portsmouth scored three goals by G. Caballero (46'), John Swift (55'), and M. Pack (67')
  • Millwall's only goal came from C. De Norre at 64'
  • M. Alli of Portsmouth received a yellow card in the 17th minute
  • John Swift was also given a yellow card for Millwall during the match
  • Millwall made multiple substitutions, including T. Watson (61') and A. Doughty (81')

Lineups

Millwall

Formation: 4-2-3-1

Starting XI

  • 13 A. Patterson (G)
  • 4 T. Crama (D)
  • 6 C. Taylor (D)
  • 5 J. Cooper (D)
  • 14 A. Doughty (D)
  • 24 C. De Norre (M)
  • 8 B. Mitchell (M)
  • 11 F. Azeez (M)
  • 10 C. Neghli (M)
  • 22 T. Watson (M)
  • 9 M. Ivanovic (F)

Substitutes

  • 15 M. Crocombe
  • 3 Z. Sturge
  • 7 T. Ballo
  • 17 M. Langstaff
  • 18 R. Leonard
  • 25 L. Cundle
  • 31 R. Bangura-Williams
  • 49 D. Mazou-Sacko
  • 67 B. Bannan

Portsmouth

Formation: 4-2-3-1

Starting XI

  • 1 N. Schmid (G)
  • 24 T. Devlin (D)
  • 5 R. Poole (D)
  • 3 C. Ogilvie (D)
  • 22 Z. Swanson (D)
  • 7 M. Pack (M)
  • 38 E. Adams (M)
  • 47 G. Caballero (M)
  • 8 J. Swift (M)
  • 27 M. Alli (M)
  • 9 C. Bishop (F)

Substitutes

  • 26 J. Bursik
  • 2 J. Williams
  • 10 A. Segecic
  • 16 L. Le Roux
  • 17 I. Bowat
  • 28 R. Swann
  • 29 H. Blair
  • 40 J. Brown
  • 55 M. Dia

Timeline

  1. Portsmouth
    17' Portsmouth Card · Yellow Card
    M. Alli

    Foul

  2. Portsmouth
    46' Portsmouth Goal · Normal Goal
    G. Caballero
  3. Portsmouth
    55' Portsmouth Goal · Normal Goal
    John Swift
  4. Portsmouth
    60' Portsmouth Card · Yellow Card
    John Swift

    Foul

  5. Millwall
    61' Millwall subst · Substitution 1
    Off: T. Watson · On: M. Langstaff
  6. Millwall
    64' Millwall Goal · Normal Goal
    C. De Norre · Assist: M. Langstaff
  7. Portsmouth
    67' Portsmouth Goal · Normal Goal
    M. Pack
  8. Portsmouth
    70' Portsmouth subst · Substitution 1
    Off: John Swift · On: A. Segecic
  9. Millwall
    75' Millwall Card · Yellow Card
    T. Crama

    Foul

  10. Millwall
    81' Millwall subst · Substitution 2
    Off: A. Doughty · On: Z. Sturge
  11. Millwall
    81' Millwall subst · Substitution 3
    Off: F. Azeez · On: T. Ballo
  12. Millwall
    81' Millwall subst · Substitution 4
    Off: T. Crama · On: R. Leonard
  13. Millwall
    82' Millwall subst · Substitution 5
    Off: C. De Norre · On: Barry Bannan
  14. Portsmouth
    86' Portsmouth subst · Substitution 2
    Off: G. Caballero · On: J. Brown
  15. Portsmouth
    90'+2 Portsmouth subst · Substitution 3
    Off: M. Alli · On: I. Bowat

Match Stats

Stat Millwall Portsmouth
Fouls 13 8
Pass Accuracy 74% 69%
Offsides
Red Cards
Total Shots 6 15
Corners 6 4
Total Passes 362 327
Yellow Cards 1 2
Blocked Shots 1 4
Shots on Target 3 8
xG 0.42 1.52
Shots off Target 2 3
Possession 53% 47%
Goals Prevented 0 0
Accurate Passes 269 224
Shots Inside Box 4 10
Saves 4 2
Shots Outside Box 2 5

Key Match Notes

  • Portsmouth's early goal by G. Caballero in the 46th minute set the tone for their victory.
  • Millwall responded with a goal from C. De Norre just four minutes later, but Portsmouth quickly regained control with John Swift's goal shortly after.