Kevin Nolan dramatically rescued a draw for West Ham with an injury-time goal against Sunderland.
In-form striker Steven Fletcher had put the visitors ahead when he angled home a powerful shot.
West Ham piled on the pressure but were denied when Nolan's volley was impressively saved by Simon Mignolet.
A header from Hammers defender James Collins struck the top of the crossbar before Modibo Maiga headed on to Nolan, who hooked in a shot.
The draw leaves Sunderland without a win in 12 league games since March and while the manner of the draw will leave them frustrated and deflated, they will also be sick of the sight of Nolan.
West Ham's skipper has scored six goals against them in the top flight, including a hat-trick for former club Newcastle in the Tyne-Wear derby against the Black Cats in October 2010.
The home side deserved at least a point as they finally broke the resistance of a Sunderland side who spent most of the second period camped in their own half trying to resolutely defend the 11th minute lead given to them by Fletcher.
There have been calls for the striker to resolve his differences with Scotland manager Craig Levein in order to regain his place in the national team.
"West Ham tried and tried for an equaliser but couldn't find a way though until deep into stoppage time when the player who looked most likely to score did as Kevin Nolan cancelled out Steven Fletcher's opener. You could argue Sunderland deserved a point for their stoic efforts but equally you can argue West Ham didn't deserve to lose."
His finishing prowess, including an impressive goal which put Martin O'Neill's side ahead, added weight to the argument.
Collins gave the ball away and winger Sebastian Larsson steered a cross to the far post, where Fletcher cushioned the ball to control with his first touch before driving in a left-foot shot past keeper Jussi Jaaskelainen.
It was a fourth goal in three top-flight games for Fletcher this season and, shortly afterwards, he showed there was more to his game when he held the ball up and released James McClean.
The Black Cats outnumbered the home defence but McClean's ambitious 25-yard strike went horribly wide.
West Ham went close to an equaliser when Matt Taylor crossed for Ricardo Vaz Te, whose far-post header went just wide.
The Hammers had been kept at bay by the visitors until they ended the first half in the ascendancy and Nolan twice went close.
He acrobatically put a shot wide before meeting a Vaz Te cross with a sweetly struck volley. Mignolet flung himself to his left to palm the ball away for a smart save.
Sunderland had not won away in the league since February and their goal was living a charmed life.
But for all of West Ham's pressure, they were let down by some poor finishing.
Hammers striker Carlton Cole climbed highest when he rose to meet a Mark Noble free-kick, but his mistimed effort went wide off the top of his head.
Collins also had a good chance from a corner only to see his header graze the top of the crossbar.
It seemed West Ham would be punished for their profligacy before their captain struck.
Matt Jarvis did well to keep the ball in play and Maiga headed the ball on to midfielder Nolan, who swivelled and turned in a shot to preserve West Ham's unbeaten home league record this season, while Sunderland have now drawn all of their four top-flight games.
West Ham boss Sam Allardyce:
"In terms of play and chances we created enough to get back into the game.
"We had pinned them back and were waiting for the quality of finish, which came in injury time.
"Even in the dressing room the lads are disappointed we didn't win considering the attempts on goal we had."
Sunderland manager Martin O'Neill:
"We are frustrated with the late equaliser in terms of the way it was conceded and the timing.
"We defended manfully but I thought we could have won. We had some good chances on the break.
"Overall, it was a tough game. We knew it would be and so it proved."
West Ham United
- 22 Jaaskelainen Booked
- 02 Reid Booked
- 17 O'Brien
- 19 Collins
- 20 Demel
- 04 Nolan
- 14 Taylor (Benayoun - 57' )
- 16 Noble
- 21 Diame
- 09 Cole (Maiga - 77' )
- 12 Vaz Te (Jarvis - 57' )
- 13 Henderson
- 03 McCartney
- 05 Tomkins
- 07 Jarvis
- 15 Benayoun
- 32 O'Neil
- 11 Maiga
- 22 Mignolet
- 16 O'Shea
- 19 Bramble
- 03 Rose
- 06 Cattermole
- 07 Larsson (Vaughan - 62' )
- 08 Gardner Booked
- 14 Colback
- 23 McClean
- 28 Sessegnon (Campbell - 71' )
- 26 Fletcher
- 20 Westwood
- 12 Kilgallon
- 15 Vaughan
- 18 Meyler
- 09 Campbell (Meyler - 90' )
- 10 Wickham
- 25 Saha
Live Text Commentary
Full Time The referee signals the end of the game.90:00 +2:37
Assist by Modibo Maiga.90:00 +2:37 Goal scored
Goal! - Kevin Nolan - West Ham 1 - 1 Sunderland Kevin Nolan finds the net with a goal from inside the box to the bottom right corner of the goal. West Ham 1-1 Sunderland.90:00 +0:15 Substitution
Substitution Fraizer Campbell goes off and David Meyler comes on.90:00 +0:15 Booking
Booking Jussi Jaaskelainen is shown a yellow card for dissent.88:42
Modibo Maiga gives away a free kick for an unfair challenge on Titus Bramble. Simon Mignolet takes the direct free kick.87:43
Mark Noble takes a inswinging corner from the left by-line to the near post.84:49
Header by Modibo Maiga from deep inside the penalty area misses to the left of the goal.84:18
Unfair challenge on Matthew Jarvis by Craig Gardner results in a free kick. Direct free kick taken by Mark Noble.83:48
Free kick awarded for a foul by James McClean on Winston Reid. Free kick taken by Jussi Jaaskelainen.82:57
Steven Fletcher is flagged offside by the assistant referee. Free kick taken by Jussi Jaaskelainen.81:40
Free kick taken by Craig Gardner.81:40 Booking
Booking The referee books Winston Reid for unsporting behaviour.81:26
Free kick awarded for an unfair challenge on David Vaughan by Winston Reid.78:36
Effort on goal by Steven Fletcher from just inside the penalty area goes over the target.77:49
Outswinging corner taken by Mark Noble from the right by-line, Steven Fletcher manages to make a clearance.76:38 Substitution
Substitution (West Ham) makes a substitution, with Modibo Maiga coming on for Carlton Cole.74:39
Outswinging corner taken by Mark Noble, James Collins takes a shot.71:25
James Collins takes a shot. Jack Colback gets a block in.69:51
Inswinging corner taken by Mark Noble from the left by-line, clearance made by Steven Fletcher. Matthew Jarvis takes a shot. Craig Gardner gets a block in.
Substitution Fraizer Campbell joins the action as a substitute, replacing Stephane Sessegnon.69:51
Mohamed Diame takes a shot. Blocked by Lee Cattermole.68:58
Joey O'Brien takes a shot. Save made by Simon Mignolet.64:36
Corner taken by Mark Noble from the right by-line to the near post.61:46 Substitution
Substitution Sebastian Larsson leaves the field to be replaced by David Vaughan.61:25
Carlton Cole produces a header from deep inside the six-yard box that clears the crossbar.60:44
Handball decision goes against Danny Rose. Mark Noble restarts play with the free kick.60:08
Free kick taken by Mark Noble.60:08 Booking
Booking Booking for Craig Gardner for unsporting behaviour.59:56
Craig Gardner gives away a free kick for an unfair challenge on Matthew Jarvis.59:21
Free kick awarded for an unfair challenge on John O'Shea by Carlton Cole. Simon Mignolet restarts play with the free kick.58:56
Lee Cattermole gives away a free kick for an unfair challenge on Mohamed Diame. Yossi Benayoun takes the direct free kick.57:36
Carlton Cole concedes a free kick for a foul on John O'Shea. Direct free kick taken by Simon Mignolet.56:16 Substitution
Substitution Yossi Benayoun is brought on as a substitute for Matthew Taylor.56:16 Substitution
Substitution (West Ham) makes a substitution, with Matthew Jarvis coming on for Ricardo Vaz Te.54:17
Corner taken right-footed by Mark Noble, Simon Mignolet makes a save. Corner taken right-footed by Mark Noble from the left by-line to the near post, clearance made by Sebastian Larsson.51:42
Danny Rose fouled by Ricardo Vaz Te, the ref awards a free kick. Simon Mignolet restarts play with the free kick.50:33
Free kick awarded for a foul by Mark Noble on James McClean. Direct free kick taken by Jack Colback.48:23
Kevin Nolan takes a shot. Blocked by Craig Gardner.45:20
Joey O'Brien gives away a free kick for an unfair challenge on Stephane Sessegnon. Craig Gardner restarts play with the free kick.45:01
The second half begins.45:00 +2:19 Half time
Half Time The referee blows for half time.44:49
Free kick awarded for a foul by Sebastian Larsson on Joey O'Brien. Mark Noble restarts play with the free kick.42:41
Kevin Nolan takes a shot. Save by Simon Mignolet.39:04
Unfair challenge on Lee Cattermole by Mohamed Diame results in a free kick. Titus Bramble takes the free kick.38:03
James McClean takes a shot. Blocked by Guy Demel.35:41
Effort from inside the six-yard box by Kevin Nolan goes wide right of the goal.34:49
Free kick awarded for an unfair challenge on Ricardo Vaz Te by Titus Bramble. Mark Noble restarts play with the free kick.33:46
Carlton Cole has a headed effort from close range and clears the crossbar.31:55
Free kick awarded for a foul by Kevin Nolan on Lee Cattermole. Titus Bramble restarts play with the free kick.30:14
Sebastian Larsson is penalised for handball and concedes a free kick. Free kick taken by Winston Reid. Guy Demel takes a shot. Blocked by Danny Rose. Matthew Taylor takes the inswinging corner, Effort from inside the six-yard box by Winston Reid goes wide right of the goal.27:45
Shot from outside the box by James McClean goes wide right of the target.26:13
Jack Colback gives away a free kick for an unfair challenge on Mohamed Diame. Mark Noble restarts play with the free kick. Kevin Nolan takes a shot. Blocked by Jack Colback.24:42
Mohamed Diame has an effort at goal from outside the area which goes wide right of the goal.22:45
Close range header by Ricardo Vaz Te misses to the right of the target.22:22
Kevin Nolan takes a shot. Blocked by Titus Bramble.21:15
Corner taken by Sebastian Larsson from the left by-line played to the near post, clearance by Carlton Cole.19:37
Danny Rose fouled by Guy Demel, the ref awards a free kick. Simon Mignolet takes the direct free kick.18:57
Unfair challenge on Mohamed Diame by Lee Cattermole results in a free kick. Mark Noble restarts play with the free kick.16:12
Foul by Kevin Nolan on Titus Bramble, free kick awarded. Free kick taken by Simon Mignolet.13:25
Foul by Sebastian Larsson on Joey O'Brien, free kick awarded. Winston Reid takes the free kick.11:58
Close range header by James Collins goes wide of the left-hand upright.11:24
Inswinging corner taken right-footed by Mark Noble, Titus Bramble makes a clearance.10:15
Matthew Taylor takes a shot. Blocked by Craig Gardner. Mark Noble takes the inswinging corner, clearance by Lee Cattermole.8:59
Assist by Sebastian Larsson.8:59 Goal scored
Goal! - Steven Fletcher - West Ham 0 - 1 Sunderland Steven Fletcher finds the back of the net with a goal from close in to the bottom right corner of the goal. West Ham 0-1 Sunderland.7:37
Carlton Cole is adjudged to have handled the ball. Simon Mignolet takes the free kick.6:53
Free kick awarded for a foul by Sebastian Larsson on Matthew Taylor. Direct free kick taken by James Collins.1:29
The assistant referee flags for offside against Carlton Cole. Simon Mignolet restarts play with the free kick.0:19
Free kick awarded for a foul by Ricardo Vaz Te on Danny Rose. Direct free kick taken by Danny Rose.0:00
The match has kicked off.
Live data and text provided by our data suppliers