Two controversial Mark Noble penalties saw West Ham beat wasteful Nottingham Forest to go top of the Championship for the first time this season.
Forest had the better of the first half with Marcus Tudgay, Lewis McGugan and Paul Anderson all missing good chances.
But Noble blasted in the opener in first-half injury time after Guy Moussi was penalised for handball and made it 2-0 following Chris Gunter's handball.
McGugan did find the net with a fine 20-yard strike but the Hammers held on.
McGugan's injury-time effort - just Forest's fourth goal in their last 12 games - came too late to threaten the home side's lead and lift the gloom at the City Ground.
Steve Cotterill's Forest side remain in the relegation zone, four points from safety.
But although they will feel unfortunate to be on the wrong end of two tough penalty calls, the Reds should have been at least two goals up by the time referee Tony Bates award a spot-kick when Moussi blocked Sam Baldock's cross with his hand.
Tudgay twice fired over over and McGugan also failed to find the target when well placed.
However their best opening saw Anderson shoot tamely at goal after great work by Marlon Harewood and McGugan.
Kevin Nolan and George McCartney both had half-chances before the Hammers went ahead, despite Lee Camp getting a hand to Noble's strike.
The visitors continued to have the upper hand after the interval with home goalkeeper Robert Green denying Gunter and a McGugan cross coming back off the post and then being smashed off the line by Noble.
At the other end Jack Collison could have doubled the lead after a fine run and Camp made a fine diving save to keep out a Henri Lansbury effort.
But Noble did add a second soon after the hour, and West Ham were able to enjoy going top despite McGugan's last-gasp strike.
Robert Hall fires a strike on goal direct from the free kick, Lee Camp makes a save. Inswinging corner taken by Robert Hall from the right by-line played to the near post, clearance made by Marcus Tudgay. Robert Hall decides to take a short corner.
Substitution Frederic Piquionne comes on in place of Carlton Cole.
Chris Gunter concedes a free kick for a foul on Robert Hall.
90:00 +3:36 Full time
Full Time The referee blows for the end of the match.
90:00 +2:49 Goal scored
Goal - Lewis McGugan - West Ham 2 - 1 Nott'm For Lewis McGugan fires in a goal from outside the penalty box to the top left corner of the goal. West Ham 2-1 Nottm Forest.
Foul by Marcus Tudgay on James Tomkins, free kick awarded. Robert Green restarts play with the free kick.
Short corner worked by Jack Collison.
Lewis McGugan takes a inswinging corner to the near post, Frederic Piquionne manages to make a clearance.
Short corner taken by Mark Noble from the left by-line.
Booking Guy Moussi is booked.
Shot on goal comes in from Robert Hall from the free kick, save by Lee Camp. Corner taken left-footed by Robert Hall to the near post, clearance by Marcus Tudgay. Short corner taken by Robert Hall from the right by-line.
Substitution Carlton Cole leaves the field to be replaced by Frederic Piquionne.
Free kick awarded for an unfair challenge on Robert Hall by Chris Gunter.
Marcus Tudgay challenges James Tomkins unfairly and gives away a free kick. Robert Green restarts play with the free kick.
Shot by Lewis McGugan from a long way out goes over the crossbar.
The assistant referee signals for offside against Carlton Cole. Joel Lynch takes the indirect free kick.
Headed effort from deep inside the penalty area by Carlton Cole misses to the left of the goal.
Substitution Robert Hall on for Sam Baldock.
Free kick awarded for a foul by Ishmael Miller on Robert Green. Robert Green takes the free kick.
Lewis McGugan takes the inswinging corner, Wes Morgan takes a shot. Save by Robert Green.
Free kick awarded for an unfair challenge on Ishmael Miller by Winston Reid. Lewis McGugan restarts play with the free kick.
Sam Baldock takes a shot. Save made by Lee Camp. Effort from deep inside the area by Henri Lansbury misses to the right of the goal.
Foul by Dexter Blackstock on Winston Reid, free kick awarded. George McCartney takes the free kick.
Substitution Ishmael Miller joins the action as a substitute, replacing Marlon Harewood.
Mark Noble has an effort at goal from just outside the box which goes wide of the left-hand post.
The assistant referee flags for offside against Dexter Blackstock. Robert Green takes the indirect free kick.
Corner taken right-footed by Mark Noble from the right by-line to the near post, clearance by Garath McCleary.
Carlton Cole fouled by Guy Moussi, the ref awards a free kick. Mark Noble takes the free kick.
62:11 Goal scored
Goal - Mark Noble - West Ham 2 - 0 Nott'm For Placed penalty scored by Mark Noble. West Ham 2-0 Nottm Forest.
Handball decision goes against Chris Gunter.
Henri Lansbury takes a shot. Save by Lee Camp. Outswinging corner taken from the right by-line by Mark Noble, clearance by Wes Morgan.
Jack Collison takes a shot. Save by Lee Camp. Outswinging corner taken by Mark Noble from the right by-line, Marcus Tudgay makes a clearance.
Lewis McGugan takes the inswinging corner, clearance made by George McCartney.
Substitution Dexter Blackstock is brought on as a substitute for Jonathan Greening.
Chris Gunter takes a shot. Save made by Robert Green.
Outswinging corner taken by Lewis McGugan from the right by-line, Header from deep inside the area by Marcus Tudgay goes over the bar.
Carlton Cole challenges Joel Lynch unfairly and gives away a free kick. Joel Lynch takes the free kick.
The referee gets the second half started.
45:00 +3:32 Half time
Half Time The referee blows for half time.
45:00 +2:33 Goal scored
Goal - Mark Noble - West Ham 1 - 0 Nott'm For Penalty taken right-footed by Mark Noble and scored. West Ham 1-0 Nottm Forest.
Handball decision goes against Guy Moussi.
Corner taken right-footed by Mark Noble from the left by-line, clearance made by Wes Morgan.
Substitution Papa Bouba Diop goes off and Henri Lansbury comes on.
Mark Noble is adjudged to have handled the ball. The free kick is delivered right-footed by Lewis McGugan from right wing, clearance by Carlton Cole.
Corner from the right by-line taken by Jack Collison, Marcus Tudgay manages to make a clearance.
Corner taken by Jack Collison, clearance made by Paul Anderson.
Jack Collison takes a shot. Save made by Lee Camp. Corner taken by Jack Collison, clearance made by Marcus Tudgay.
Foul by Paul Anderson on Julien Faubert, free kick awarded. Direct free kick taken by Robert Green.
Corner taken by Mark Noble.
The referee blows for offside. Lee Camp restarts play with the free kick.
Paul Anderson takes a shot. Save by Robert Green.
Mark Noble produces a right-footed shot from the edge of the box and misses to the left of the target.
Substitution Greg Cunningham goes off and Paul Anderson comes on.
Outswinging corner taken from the right by-line by Jack Collison, Header by Carlton Cole from deep inside the penalty area misses to the left of the target.
Mark Noble takes the inswinging corner, save by Lee Camp.
Marcus Tudgay takes a shot. Winston Reid gets a block in. Outswinging corner taken by Lewis McGugan, Winston Reid manages to make a clearance.
Julien Faubert challenges Greg Cunningham unfairly and gives away a free kick. Free kick taken by Lee Camp.
Shot from deep inside the area by Lewis McGugan goes over the bar.
Inswinging corner taken by Lewis McGugan, save by Robert Green.
Lewis McGugan takes the outswinging corner, Shot from deep inside the area by Marcus Tudgay clears the crossbar.
Joel Lynch takes the direct free kick.
Booking Carlton Cole receives a yellow card for unsporting behaviour.
Free kick awarded for an unfair challenge on Greg Cunningham by Carlton Cole.
The referee starts the match.
Live text and data provided by The Press Association
This page is best viewed in an up-to-date web browser with style sheets (CSS) enabled. While you will be able to view the content of this page in your current browser, you will not be able to get the full visual experience. Please consider upgrading your browser software or enabling style sheets (CSS) if you are able to do so.