Michail Antonio’s 90th-minute goal gave West Ham a 2-1 comeback victory over winless Leeds in a pulsating contest at Elland Road.
On his return from suspension, Antonio slotted home having been released by Declan Rice to keep Leeds without a victory this season after six games.
In a breathless game which had 35 shots on goal, Leeds went ahead through Raphinha’s fine finish from the edge of the box (19), but with Illan Meslier making three excellent saves and Raphinha hitting the post again, a 3-3 half-time scoreline wouldn’t have looked out of place.
Tomas Soucek saw his leveller disallowed after VAR spotted a foul by Antonio on Meslier in the build-up (53), but West Ham did get their equaliser as Jarrod Bowen’s shot ricocheted off Firpo and into the net (67), before Antonio’s late winner.
The result leaves West Ham seventh, while Leeds are yet to taste victory in their first six top-flight games for the first time since 1935/36, and sit 18th.
Leeds: Meslier (8), Firpo (6), Cooper (7), Cresswell (7), Dallas (6), Shackleton (6), Phillips (6), Klich (6), Raphinha (8), James (6), Rodrigo (6)
Subs: Harrison (6), Roberts (5), Summerville (NA)
West Ham: Fabianski (7), Coufal (7), Zouma (7), Ogbonna (7), Cresswell (6), Soucek (6), Rice (7), Benrahma (7), Fornals (6), Bowen (8), Antonio (7)
Subs: Vlasic (6), Dawson (NA), Yarmolenko (NA)
Man of the match: Jarrod Bowen
How West Ham grabbed win in thrilling contest
The first half was gloriously indisciplined as both sides created several chances, the first falling to Antonio, denied by a good Meslier block from an angle.
Meslier then tipped wide Said Benrahma’s stroked effort, and as Leeds looked to play on the break, Stuart Dallas then produced an excellent stop from Lukasz Fabianski, touching over his long-range effort.
Leeds’ strength on the counter brought the first goal as Dan James found Rodrigo on the left channel, with the hosts matching West Ham for numbers in the final third. Rodrigo pulled back for Mateusz Klich, who laid on Raphinha, and the Brazilian’s first-time stroked shot found the bottom left corner past Fabianski.
Raphinha nearly scored again from the same square of grass, this time striking the foot of the post in the same corner as the ball fell kindly to him, before West Ham found rhythm in the final stages of the first half.
They should have levelled in injury time as Antonio played Pablo Fornals through on goal; his first and second touches were good, but the third took the ball slightly away from him, and Meslier did well to block his shot low down. Fornals almost had too much time to think.
Neither side calmed down in the second half with the game almost exclusively played in the final third. West Ham thought they’d levelled as Soucek tapped home after Meslier had spilled a looping ball, but VAR spotted an arm from Antonio on the goalkeeper as they challenged for the ball.
Meslier was a busy man all afternoon, tipping away Soucek’s header from a corner, before moments later Klich passed the ball inches wide in space in the box from a Raphinha cut back at the other end.
West Ham exploited space down the right to equalise as Vladimir Coufal played in Bowen; he entered the boxed, lashed an effort left-footed at goal, the ball taking two deflections and beating Meslier. The final touch came off Leeds defender Firpo.
With Leeds looking more leggy in the final third as the game came to a close, West Ham looked to pounce for a winner. It nearly came five minutes from time as Antonio’s swivel and shot was blocked by both Jamie Shackleton and Meslier, but his winner did come in the final minute.
On the right of midfield, Rice picked out Antonio centrally in space, and after a wonderful touch over the foot of Shackleton, Antonio composed himself and slotted bottom corner to send the travelling fans wild. Antonio told Sky Sports afterwards: “It was up there with one of my best goals.”
Leeds made two changes from the draw at Newcastle as the injured Patrick Bamford and Luke Ayling came out for Jamie Shackleton and 19-year-old Charlie Cresswell, who made his first Premier League appearance for the club.
West Ham welcomed back Michail Antonio from suspension, meaning summer signing Nikola Vlasic moved to the bench.
Leeds’ unapologetically risky style of play was evident again over a 90 minutes in which they both dominated and left gigantic gaps in the final third, none more so than in the final stages of a contest they perhaps should have shut out.
Leeds now host Watford in the Premier League on Saturday October 2 at 3pm, while West Ham host Rapid Vienna on Thursday at 8pm in the Europa League before welcoming Brentford in the Premier League at 2pm on Sunday.