Jarrod Bowen won West Ham's penalty late in the first half before curling into the far corner from the edge of the box in the second
Arthur Masuaku scored a bizarre late winner as top-four hopefuls West Ham twice came from behind to beat Premier League leaders Chelsea in a pulsating encounter at London Stadium.
After collecting the ball wide on the left, Masuaku arrowed a cross-cum-shot past Chelsea goalkeeper Edouard Mendy at his near post to send the Hammers supporters into ecstasy.
Thiago Silva broke the deadlock for Chelsea in the first half, heading Mason Mount's corner past Lukasz Fabianski via the inside of the post.
West Ham were gifted a chance to equalise when Edouard Mendy brought down Jarrod Bowen following a poor backpass from Jorginho, allowing Manuel Lanzini to stroke home from the penalty spot.
Bowen's low drive from the edge of the area restored parity once more before Masuaku's remarkable 87th-minute winner.
The win consolidates West Ham's place in the top four, while Chelsea will drop to third if Manchester City and Liverpool win this weekend.
More to follow.
- Reaction to West Ham's win over Chelsea, plus the rest of Saturday's Premier League matchesGo straight to all the best West Ham contentVisit our Chelsea page
Player of the match
BowenJarrod Bowen
with an average of 8.57
- West HamWest Ham UnitedWest Ham UnitedChelseaChelseaChelsea
West Ham UnitedAvgSquad number20Player nameBowenAverage rating
8.57
Squad number41Player nameRiceAverage rating
8.14
Squad number26Player nameMasuakuAverage rating
7.96
Squad number10Player nameLanziniAverage rating
7.96
Squad number28Player nameSoucekAverage rating
7.71
Squad number9Player nameAntonioAverage rating
7.64
Squad number5Player nameCoufalAverage rating
7.61
Squad number4Player nameZoumaAverage rating
7.52
Squad number8Player nameFornalsAverage rating
7.45
Squad number22Player nameBenrahmaAverage rating
7.44
Squad number23Player nameDiopAverage rating
7.40
Squad number15Player nameDawsonAverage rating
7.31
Squad number31Player nameJohnsonAverage rating
7.23
Squad number1Player nameFabianskiAverage rating
7.15
ChelseaAvgSquad number19Player nameMountAverage rating
6.12
Squad number6Player nameThiago SilvaAverage rating
5.32
Squad number24Player nameJamesAverage rating
4.91
Squad number2Player nameRüdigerAverage rating
4.84
Squad number12Player nameLoftus-CheekAverage rating
4.72
Squad number29Player nameHavertzAverage rating
4.63
Squad number22Player nameZiyechAverage rating
4.49
Squad number4Player nameChristensenAverage rating
4.33
Squad number3Player nameAlonsoAverage rating
3.96
Squad number20Player nameHudson-OdoiAverage rating
3.91
Squad number5Player nameJorginhoAverage rating
3.70
Squad number16Player nameMendyAverage rating
3.63
Squad number10Player namePulisicAverage rating
3.62
Squad number9Player nameLukakuAverage rating
3.50
- Line-upsMatch StatsLive Text
Line-upsWest Ham
Formation 3-4-2-1
1Fabianski15Dawson4Zouma23Diop5Coufal28Soucek41Rice31Johnson20Bowen10Lanzini9Antonio
- 1Fabianski15Dawson4ZoumaSubstituted forFornalsat 71'minutes23Diop5CoufalBooked at 90mins28Soucek41Rice31JohnsonSubstituted forMasuakuat 45+2'minutes20Bowen10LanziniSubstituted forBenrahmaat 85'minutes9Antonio
Substitutes
- 7Yarmolenko8Fornals11Vlasic13Areola16Noble22Benrahma26Masuaku33Král50Ashby
Chelsea
Formation 3-4-2-1
16Mendy4Christensen6Thiago Silva2Rüdiger24James12Loftus-Cheek5Jorginho3Alonso22Ziyech19Mount29Havertz
- 16Mendy4ChristensenBooked at 90mins6Thiago Silva2Rüdiger24JamesBooked at 90mins12Loftus-Cheek5JorginhoBooked at 23mins3AlonsoSubstituted forPulisicat 72'minutes22ZiyechSubstituted forHudson-Odoiat 64'minutes19Mount29HavertzSubstituted forLukakuat 45'minutes
Substitutes
- 1Arrizabalaga9Lukaku10Pulisic11Werner17Saúl18Barkley20Hudson-Odoi28Azpilicueta31Sarr
Referee:Andre MarrinerMatch StatsHome TeamWest HamAway TeamChelseaPossessionHome36%Away64%ShotsHome11Away19Shots on TargetHome5Away7CornersHome1Away9FoulsHome10Away10Live TextPost update
Match ends, West Ham United 3, Chelsea 2.
90'+5'Full Time
Second Half ends, West Ham United 3, Chelsea 2.
90'+4'Booking
Andreas Christensen (Chelsea) is shown the yellow card for a bad foul.
90'+4'Post update
Foul by Andreas Christensen (Chelsea).
90'+4'Post update
Michail Antonio (West Ham United) wins a free kick on the left wing.
90'+3'Post update
Attempt missed. Christian Pulisic (Chelsea) header from the centre of the box misses to the left. Assisted by Mason Mount with a cross.
90'+2'Booking
Reece James (Chelsea) is shown the yellow card for a bad foul.
90'+2'Post update
Foul by Reece James (Chelsea).
90'+2'Post update
Tomas Soucek (West Ham United) wins a free kick in the defensive half.
90'+1'Booking
Vladimir Coufal (West Ham United) is shown the yellow card for a bad foul.
90'+1'Post update
Callum Hudson-Odoi (Chelsea) wins a free kick on the left wing.
90'+1'Post update
Foul by Vladimir Coufal (West Ham United).
90'Post update
Foul by Ruben Loftus-Cheek (Chelsea).
90'Post update
Saïd Benrahma (West Ham United) wins a free kick on the left wing.
89'Post update
Attempt missed. Jarrod Bowen (West Ham United) left footed shot from the right side of the box is too high. Assisted by Michail Antonio.
87'goalGoal!
Goal! West Ham United 3, Chelsea 2. Arthur Masuaku (West Ham United) left footed shot from a difficult angle and long range on the left to the top left corner. Assisted by Michail Antonio with a headed pass.
85'Substitution
Substitution, West Ham United. Saïd Benrahma replaces Manuel Lanzini.
80'Post update
Attempt missed. Romelu Lukaku (Chelsea) header from the centre of the box is just a bit too high. Assisted by Antonio Rüdiger with a cross.
78'Post update
Attempt blocked. Ruben Loftus-Cheek (Chelsea) header from the centre of the box is blocked. Assisted by Mason Mount with a cross.
77'Post update
Corner, Chelsea. Conceded by Issa Diop.
Page 1 of 5rewindpreviousNavigate to the next pagenextNavigate to the last pageforward
- Our coverage of your Premier League club is bigger and better than ever before - here's everything you need to know to make sure you never miss a moment
Source: bbc.com