Here's how David Moyes's side rated at the London Stadium...
Alphonse Areola 6
Made a brilliant early save from Awoniyi header but could only parry Gibbs-White effort to the same player.
Vladimir Coufal 4
Struggled to contain the pacy Elanga and walking a tightrope after early booking.
Kurt Zouma 5
Back after three games out with a knee injury but didn't look full fit.
Nayef Aguerd 6
Some nice switches of play but spent more time on the ball than West Ham would have liked amid some cautious play. Took a painful whack to head late on.
Caught out as Gibbs-White got the jump on him in build-up to equaliser. Twice went close to restoring lead.
Two more assists for the Englishman - his tenth and eleventh goal involvements since signing from Southampton.
Edson Alvarez 5
Unable to provide the kind of passing incision West Ham need in games like this.
Tomas Soucek 6
Preferred to Said Benrahma in midfield rejig. Missed two fine chances, hitting the bar and then seeing header tipped over late on, but brave header won it.
Mohammed Kudus 6
Lost the ball in the lead-up to leveller. Booked.
Jarrod Bowen 7
Struggled to get involved from his new central berth but rose brilliantly to guide home from Ward-Prowse's corner.
Lucas Paqueta 8
Took his opener brilliantly, firing low for a second goal in as many games.
Michail Antonio (Alvarez 79')
Unused: Fabianski, Cresswell, Mavropanos, Ogbonna, Kehrer, Fornals, Benrahma, Ings