Angelo Ogbonna's glancing header just over 15 minutes from time earned West Ham a deserved 1-0 win over Everton at Goodison Park.
It wasn't a classic at Merseyside by any stretch of the imagination as both sides struggled to carve out clear-cut chances. But there was always a sense that West Ham had a little more in the tank, and they were rewarded for a spirited display when Ogbonna rose highest to glance home Jarrod Bowen's superb in-swinging corner.
The first half was relatively devoid of action, though it was the Hammers who enjoyed large spells of possession and looked the more likely to score.
They could, and perhaps should, have taken the lead when Bowen had plenty of time to drive a low shot past Jordan Pickford. But he couldn't beat England's number one goalkeeper from the edge of the area, and Tomas Soucek's subsequent rebound - which did find the back of the net - was ruled out for a clear offside.
Pablo Fornals should also have done better for the Hammers when well placed on the edge of the box, but the half's most glaring miss - and Everton's only real opportunity - came from Alex Iwobi.
Somehow, the 25-year-old missed his kick from six yards out after Demarai Gray had done well to beat Ogbonna and square from the byline.
Rafa Benitez's Everton were a little quicker out of the blocks after the break, but the continued absence of both Dominic Calvert-Lewin and Richarlison was noticeable as the Toffees lacked any kind of cutting edge.
Lukasz Fabianski barely had anything to do in West Ham's goal, and instead he watched on from the other end of the field as Ogbonna got up above Ben Godfrey to leave Pickford groping at thin air - scoring the only goal of the game in the process.
Here's how both sets of players rated...
Everton player ratings
1. Goalkeeper & defenders
Jordan Pickford (GK) - 6/10 - Saved smartly from Bowen midway through the first half, also acrobatically palming away an effort from him late on. Could do nothing to stop Ogbonna's header.
Seamus Coleman (RB) - 6/10 - Solid enough on his return to the side, keeping Benrahma quiet for the most part.
Ben Godfrey (CB) - 5/10 - Was beaten too easily in the air by Ogbonna and panicked in possession at times - just clearing his lines without assessing what was around him.
Michael Keane (CB) - 6/10 - Coped with the physical threat of Antonio, also making a good block to deny his goal-bound effort,
Lucas Digne (LB) - 6/10 - Wasn't able to get into the game at all. The lack of pace and rhythm to Everton's play didn't help.
Andros Townsend (RM) - 5/10 - Unusually wasteful with his final ball, though he did put in a couple of develish crosses into the penalty area.
Allan (CM) - 5/10 - Busy enough in midfield, congesting play and closing down any space that Antonio looked to drop into. That said, not the performance of somebody used to playing continental football.
Abdoulaye Doucoure (CM) - 6/10 - Didn't have much going on in front of him, but a decent box-to-box showing.
Alex Iwobi (LM) - 4/10 - It's never nice to see players going through a crisis of confidence, but really what kind of player is Iwobi meant to be? Not a goalscorer, that's for sure.
Demarai Gray (SS) - 6/10 - Always positive in possession, looking to drive at West Ham's back four whenever he could. Starved of the ball for the most part.
Salomon Rondon (ST) - 4/10 - Doesn't have the mobility or gusto of Dominic Calvert-Lewin or Richarlison. His aerial threat was nullified by the strong Zouma-Ogbonna combination and he looked sluggish.
Anthony Gordon (CM) - N/A
West Ham player ratings
5. Goalkeeper & defenders
Lukasz Fabianski (GK) - 5/10 - Hard to earn a higher rating when you have literally nothing to do. Still, caught the sun for a good 15 minutes.
Ben Johnson (RB) - 6/10 - Filling in for the energetic Vladimir Coufal was always going to be tricky, but Johnson did well.
Kurt Zouma (CB) - 7/10 - Had one uncertain moment in the second half when the ball dropped over his shoulder, but otherwise Zouma was super. A colossus in the air.
Angelo Ogbonna (CB) - 7/10 - Was bizarrely written off by some after a nervy performance against Brentford two weeks ago. None of that here, Ogbonna was solid and won the game with a terrific leap.
Aaron Cresswell (LB) - 6/10 - Could have offered more going forward, given the amount of possession West Ham had. Did okay on the whole.
Declan Rice (CM) - 8/10 - Dictated play from deep, setting the tempo for West Ham as they dominated the ball. Broke up play as well as he always does, and looked a cut above.
Tomas Soucek (CM) - 6/10 - Restored to a box-to-box midfielder role, Soucek looked a little brighter than in recent weeks. Got stuck in and had a goal ruled out for offside.
Pablo Fornals (CM) - 5/10 - A quiet display from the Spaniard. Should have hit the target when left with space to shoot in the first half, but bent his effort wide. Booked.
Jarrod Bowen (RW) - 7/10 - Buzzed around in the first half as West Ham saw plenty of the ball, eventually producing a superb set-piece for Ogbonna to glance home.
Michail Antonio (ST) - 6/10 - Didn't ever get a sight of goal but that didn't stop Antonio from working incredibly hard. Infectious work-rate
Said Benrahma (LW) - 6/10 - One of Benrahma's quieter displays this season, but did take the opportunity to run with the ball when he could.
Craig Dawson (CB) - 6/10 - Replaced Soucek after he took a blow to the face, shoring up West Ham's defence in a back three.
Manuel Lanzini (CM) - N/A