Conor Gallagher scored the first goals of Patrick Vieira's Crystal Palace reign as West Ham's winning start to the season came to a frustrating end in a belting London derby.
The Hammers were on course to make it three wins out of three when Spaniard Pablo Fornals scored in the 39th minute after playing a slick one-two with forward Michail Antonio.
But Palace were much better after half-time and levelled when midfielder Gallagher, who is on a season-long loan from Chelsea, found the target.
In-form Antonio thought he had won it when he rifled past Vicente Guaita for his fourth goal of the campaign - and his 50th in the Premier League.
However, Gallagher's clever turn and finish - after James McArthur's pass - earned Palace their second point of the season.
Earlier in the game, Palace defender Joel Ward was forced to make a dramatic clearance off his line at 0-0 after Vladimir Coufal's free-kick almost led to an own goal.