
Needing a two-goal win to depose Liverpool at the top of the table, Chelsea struggled to make clear chances despite having the majority of possession and stayed third behind the Merseysiders and champions Manchester City.
The home side could have punished them but Michail Antonio, who was deputising for the injured Marko Arnautović, missed two first-half chances and Andriy Yarmolenko headed wastefully wide.
West Ham, with only one win so far from their six matches, remain 17th, one place above the relegation zone.
Despite having barely 30% of possession in the first half, West Ham finally came alive after 30 minutes with two good chances for Antonio.
Sent through by record signing Felipe Anderson, he shot too high, and later forced goalkeeper Kepa Arrizabalaga into a good save after being set up by Yarmolenko.
For all their dominance, Chelsea made barely one real opportunity before the interval when N’Golo Kanté arrived to head wide from Willian’s smart volleyed cross.
In the second half it was two of Chelsea’s substitutes who went closest. Álvaro Morata’s first attempt hit goalkeeper Łukasz Fabiański in the face, and later, Ross Barkley’s curler was also kept out by the home goalkeeper.
Chelsea’s third substitute was experienced defender Gary Cahill, getting a first opportunity under new manager Maurizio Sarri when replacing the injured Antonio Rüdiger.
The best chance of the game, however, fell West Ham’s way when Yarmolenko was alone at the far post to meet a perfect cross from Robert Snodgrass, but put his header wide.
After losing their first four games but winning at Everton last weekend, West Ham are showing signs of improvement.
“Signing nine players and with a new manager it was always going to be difficult,” Antonio told Sky Sports.
“Now we’re starting to gel.”
Chelsea have another chance to knock Liverpool off the top when they play them at Stamford Bridge on Saturday, three days after the clubs meet in the Carabao Cup at Anfield.