Match ends, West Ham United 0, Watford 2.
Manager Javi Gracia praised captain Troy Deeney's influence as his Watford team ended West Ham's winning run to move up to seventh in the Premier League.
Deeney opened the scoring with a first-half penalty after defender Fabian Balbuena fouled Roberto Pereyra at the end of a neat move involving Jose Holebas and Gerard Deulofeu.
He celebrated by punching the corner flag, and one home supporter reacted by throwing a paper cup in his direction.
"I like the way he plays, his commitment, all the things he does day by day," Gracia said.
"Like all the players he maybe makes mistakes but he is our captain and an important player for us."
Deulofeu sealed the points late on for the Hornets with a precise 88th-minute finish into the bottom-right corner.
Michail Antonio hit the woodwork twice with headers for the Hammers, who had been bidding for a fifth consecutive victory for the first time since 2006.
But their wastefulness in front of goal, as well as some resolute defending from the visitors saw them slip to 12th in the table.
Resilient Hornets and fantastic Foster
While Watford's triumph was secured thanks to two flowing moves, they were also forced to withstand periods of incessant pressure from the hosts.
Gracia's side have not been noted for their defensive resilience of late, having conceded at least twice in their five previous fixtures.
However, defender Christian Kabasele set the tone for a much-improved showing inside two minutes, intercepting Antonio's cross, with Javier Hernandez well placed to score.
The Belgium centre-back hardly put a foot wrong, making 10 clearances and four blocks in a dominant performance.
And even when the Hammers did penetrate the Watford back four, they were faced by former England goalkeeper Ben Foster, who delivered an inspired performance, saving all seven of West Ham's shots on target.
Foster brilliantly repelled a Hernandez volley in the first period and preserved Watford's lead moments before their second goal with a reflex save from Robert Snodgrass' deflected effort.
"It's true they had many chances but we also created many clear chances," Gracia added.
"You have to suffer a lot but at the end of the game we got the result we deserved. The keeper always has a good performance and he gives confidence to the rest of the team."
Woodwork and wastefulness for West Ham
Unlike West Ham's clinical victory at Fulham last weekend, this was a more frustrating match in front of goal.
Despite having 18 shots on goal, Manuel Pellegrini's side toiled in attack and when they did forge a clear opening they were guilty of wayward finishing.
"I think we were a bit unlucky to not at least draw," said Pellegrini.
"The penalty was the only action in our box in the first half, and we had three or four chances to draw the game."
The best of those opportunities fell to Antonio, who headed against the post at the start of the second half, then spurned a gilt-edged chance to level the scores late on.
Reacting first to Foster's save from Snodgrass, Antonio - with six goals in his past eight games against Watford - somehow managed to head against the crossbar from no more than four yards out.
There were other missed opportunities too, with Hernandez uncharacteristically snatching at a shot from Felipe Anderson's cut-back.
At the other end, Lukasz Fabianski heroically saved point-blank efforts from Abdoulaye Doucoure and Deeney, as the second half drew on but those missed chances did not cost the visitors.
Man of the match - Ben Foster (Watford)
Deeney excels at London Stadium - the stats
- Watford have won five of their past eight Premier League games against West Ham (D1 L2), winning three away from home in this run (1-0 in Feb 2007, 4-2 in Sept 2016 and 2-0 in Dec 2018).
- West Ham lost just their second game in their past nine in the Premier League, having won each of the last four before today.
- West Ham have failed to keep a clean sheet in 10 of their past 11 Premier League home games.
- Deeney has scored in three of his past four league appearances against West Ham, with two of those goals coming at London Stadium.
- Deulofeu scored in consecutive Premier League appearances for the first time in his career.
- Watford ended a run of seven consecutive Premier League games in which they failed to keep a clean sheet.
West Ham face trips to Southampton on Thursday 27 December (19:45 GMT) and Burnley on 30 December (14:15) before returning to the London Stadium on 2 January (19:45) to take on Brighton in front of an increased capacity of 60,000.
Watford host Chelsea on 26 December (19:30) and Newcastle on 29 December (15:00) before travelling to Bournemouth on 2 January (19:45).
- 4BalbuenaBooked at 27minsSubstituted forOgbonnaat 34'minutes
- 23DiopBooked at 90mins
- 16NobleSubstituted forCarrollat 56'minutes
- 8Felipe Anderson
- 30AntonioBooked at 69mins
- 17HernándezSubstituted forDianganaat 75'minutes
- 32Costa Silva
- 27KabaseleBooked at 55mins
- 25HolebasBooked at 60mins
- 12SemaSubstituted forCleverleyat 75'minutes
- 7DeulofeuSubstituted forMariappaat 90+1'minutes
- 9DeeneySubstituted forSuccessat 86'minutes
- Lee Mason
- Shots on Target
Second Half ends, West Ham United 0, Watford 2.
Issa Diop (West Ham United) is shown the yellow card for a bad foul.
Foul by Issa Diop (West Ham United).
Isaac Success (Watford) wins a free kick in the defensive half.
Substitution, Watford. Adrian Mariappa replaces Gerard Deulofeu.
Offside, West Ham United. Grady Diangana tries a through ball, but Issa Diop is caught offside.
Grady Diangana (West Ham United) wins a free kick in the defensive half.
Foul by José Holebas (Watford).
Goal! West Ham United 0, Watford 2. Gerard Deulofeu (Watford) right footed shot from the centre of the box to the bottom right corner. Assisted by Roberto Pereyra.
Attempt missed. Andy Carroll (West Ham United) header from the centre of the box is high and wide to the right following a corner.
Corner, West Ham United. Conceded by Ben Foster.
Attempt saved. Andy Carroll (West Ham United) header from the centre of the box is saved in the top left corner. Assisted by Felipe Anderson with a cross.
Substitution, Watford. Isaac Success replaces Troy Deeney.
Corner, West Ham United. Conceded by Etienne Capoue.
Michail Antonio (West Ham United) hits the bar with a header from very close range.
Attempt saved. Robert Snodgrass (West Ham United) header from the centre of the box is saved in the top centre of the goal. Assisted by Grady Diangana with a cross.
Corner, West Ham United. Conceded by Etienne Capoue.
Corner, West Ham United. Conceded by José Holebas.
Attempt saved. Troy Deeney (Watford) right footed shot from the centre of the box is saved in the centre of the goal. Assisted by Gerard Deulofeu with a through ball.