Corner, West Ham United. Conceded by Saido Berahino.
Stoke City 0-0 West Ham United
Stoke and West Ham edged closer to Premier League safety with a goalless draw at the Bet365 Stadium.
Mark Hughes will be the happier of the two managers after the Potters reached the 40-point mark, nine points clear of Swansea in 18th with three games remaining.
In a match with plenty of chances, goalkeepers Jack Butland and Adrian were in top form to ensure both sides kept a clean sheet.
Andre Ayew had the best of West Ham's chances, with an acrobatic overhead kick forcing an equally impressive save from Butland.
Marko Arnautovic looked to be through on goal for Stoke, but his volley from point-blank range was saved by Adrian.
A happy homecoming for Butland
The biggest cheer of the afternoon came when Butland's name was announced prior to kick-off.
This was the 24-year-old's first Premier League appearance at home since 12 March 2016 - 413 days ago.
The Stoke goalkeeper was called into action early on when Manuel Lanzini forced a save inside the first minute. He cut inside from the left, but his shot did not trouble Butland.
Butland was the busier of the two goalkeepers in the first half, and he produced a moment of magic to prevent what would have been a spectacular goal from Ayew's overhead kick.
England manager Gareth Southgate, who was watching from the stand, will have liked what he saw from Butland, who injured an ankle in England's 3-2 win over Germany last March.
"I felt really good just being out there again. I'm pleased to be able to contribute and keep a clean sheet," he said.
"The fans have been incredible throughout the last 13 months and supported me. It's been tough personally and I thoroughly enjoyed the really good reception."
The 'magic 40 points'
After a run of five straight Premier League defeats, the Hammers have gone four games unbeaten and manager Slaven Bilic looks to have steadied the ship.
West Ham are finding their form at the business end of the season, after a much-needed win over Premier League strugglers Swansea earlier in April followed by three consecutive draws against Sunderland, Everton and Stoke.
Stoke have reached the 40-point benchmark, which usually secures Premier League safety, and West Ham are now just one point behind them with three games to play.
Bilic guided West Ham to seventh last term - his first season in charge - while Stoke have finished ninth for the past three seasons.
As it stands, just two points separate the Hammers in 14th and Southampton in ninth, leaving it all to play for in the congested mid-table battle.
If Swansea lose against Manchester United on Sunday, Stoke will will require a single point to be mathematically safe, while West Ham will need just an additional two points.
Man of the match - Jack Butland
'We're trying to get a fourth top-10 finish' - What the managers said
Stoke City boss Mark Hughes: "It was a difficult game for us. We needed to work hard today and try to break down a resolute West Ham team. They made it difficult for Everton last weekend and they made it difficult for us today. Sometimes you have to acknowledge the job that the opposition has done.
"We just needed that one moment to convert a chance and open the game up, but credit to West Ham. In the past couple of games they've struck on something that looks to be working for them.
"It's a season that has, at times, frustrated us and we've still got games to go and are trying to get a fourth top-10 finish, which this club hasn't done in the past."
West Ham boss Slaven Bilic: "We defended as a team and limited them to a couple of chances. We created four or five chances but the problem is that we didn't score.
"The clean sheet is giving the defenders a big dose of self-confidence, but we created more than enough chances to score a goal.
"We want and we need to win games and for that we need to score goals. But let's be positive, it's a good point for us and we are now four games unbeaten and we are going to approach the remainder of the season in a positive way."
A rare clean sheet on the road - The stats
- Stoke have enjoyed just one win in their past eight top-flight games (D2 L5).
- West Ham have played out back-to-back goalless draws in the top-flight for the first time since December 2015 (three in a row).
- Stoke failed to direct a single shot on target in the first half for only the second time in a Premier League home game this season.
- Five of the past six Premier League meetings between these two sides have ended level.
- The Potters mustered 19 shots without scoring, their highest shot tally without a goal in the Premier League since September 2014 (0-1 v Leicester).
- Slaven Bilic's side kept their first clean sheet on the road in a Premier League game since October (vs Crystal Palace), ending a run of 13 games without one.
Stoke travel to Bournemouth on Saturday, 6 May (15:00 BST) while West Ham host Tottenham in their penultimate home game of the season on Friday, 5 May (20:00).
- 15Martins Indi
- 5MuniesaBooked at 17mins
- 6WhelanSubstituted forAdamat 80'minutes
- 4AllenSubstituted forCrouchat 70'minutes
- 23José Fonte
- 26MasuakuSubstituted forCresswellat 45'minutes
- 20A AyewSubstituted forNobleat 69'minutes
- 28CalleriSubstituted forSnodgrassat 80'minutes
- Lee Probert
- Shots on Target
Match ends, Stoke City 0, West Ham United 0.
Second Half ends, Stoke City 0, West Ham United 0.
Charlie Adam (Stoke City) wins a free kick in the attacking half.
Foul by Cheikhou Kouyaté (West Ham United).
Attempt blocked. Charlie Adam (Stoke City) left footed shot from outside the box is blocked.
Foul by Xherdan Shaqiri (Stoke City).
Håvard Nordtveit (West Ham United) wins a free kick in the defensive half.
Attempt missed. Peter Crouch (Stoke City) header from the centre of the box is too high. Assisted by Xherdan Shaqiri with a cross.
Delay over. They are ready to continue.
Delay in match Cheikhou Kouyaté (West Ham United) because of an injury.
Attempt blocked. Charlie Adam (Stoke City) left footed shot from outside the box is blocked. Assisted by Saido Berahino.
Offside, West Ham United. José Fonte tries a through ball, but Robert Snodgrass is caught offside.
Offside, West Ham United. Adrián tries a through ball, but Manuel Lanzini is caught offside.
Substitution, West Ham United. Robert Snodgrass replaces Jonathan Calleri.
Substitution, Stoke City. Charlie Adam replaces Glenn Whelan.
Foul by Saido Berahino (Stoke City).
Winston Reid (West Ham United) wins a free kick in the defensive half.
Offside, West Ham United. Manuel Lanzini tries a through ball, but Jonathan Calleri is caught offside.
Attempt blocked. Xherdan Shaqiri (Stoke City) left footed shot from the right side of the box is blocked. Assisted by Marko Arnautovic.
Foul by Geoff Cameron (Stoke City).
Mark Noble (West Ham United) wins a free kick in the defensive half.
Corner, Stoke City. Conceded by Adrián.
Attempt saved. Marko Arnautovic (Stoke City) right footed shot from the centre of the box is saved in the bottom left corner. Assisted by Xherdan Shaqiri.
Attempt missed. Geoff Cameron (Stoke City) left footed shot from outside the box is high and wide to the left.
Attempt blocked. Xherdan Shaqiri (Stoke City) left footed shot from outside the box is blocked. Assisted by Geoff Cameron.
Substitution, Stoke City. Peter Crouch replaces Joe Allen.
Substitution, West Ham United. Mark Noble replaces André Ayew.
Attempt saved. Manuel Lanzini (West Ham United) header from the left side of the six yard box is saved in the centre of the goal. Assisted by Jonathan Calleri.
Attempt missed. Jonathan Calleri (West Ham United) right footed shot from the right side of the box misses to the left. Assisted by Aaron Cresswell with a cross.
Attempt saved. André Ayew (West Ham United) left footed shot from outside the box is saved in the top centre of the goal. Assisted by Cheikhou Kouyaté.
Attempt missed. Marc Muniesa (Stoke City) left footed shot from outside the box is too high. Assisted by Glen Johnson.
Corner, Stoke City. Conceded by Adrián.
Attempt saved. Saido Berahino (Stoke City) right footed shot from the right side of the box is saved in the bottom left corner. Assisted by Xherdan Shaqiri.
Attempt saved. Joe Allen (Stoke City) right footed shot from outside the box is saved in the centre of the goal. Assisted by Marko Arnautovic.
Attempt missed. José Fonte (West Ham United) header from the centre of the box misses to the left. Assisted by Manuel Lanzini with a cross following a set piece situation.
Foul by Marko Arnautovic (Stoke City).
Edimilson Fernandes (West Ham United) wins a free kick on the right wing.
Corner, Stoke City. Conceded by Adrián.
Attempt saved. Xherdan Shaqiri (Stoke City) left footed shot from long range on the right is saved in the top centre of the goal.