Substitute Lukas Podolski's deflected free-kick earned Arsenal victory and left battling Stoke City deflated at Emirates Stadium.
Potters goalkeeper Asmir Begovic produced a series of fine saves before Podolski struck in the closing stages.
Begovic denied Alex Oxlade-Chamberlain from five-yards, kept out Laurent Koscielny's header, then saved Oxlade-Chamberlain's angled drive.
But Podolski's set-piece went in off Geoff Cameron to take the points.
It was tough on Stoke, who looked set to end a run of seven straight league defeats away to the Gunners before Podolski pounced 12 minutes from time.
The visitors claimed Olivier Giroud was in an offside position when the German's free-kick deceived Begovic after cannoning off Cameron. Referee Chris Foy consulted with his assistant before allowing the goal.
Stoke were clearly agitated by the decision, with the game threatening to boil over in the closing stages. Potters substitute Michael Owen appeared to thump Mikel Arteta on his back after the Spaniard had challenged the former England striker.
Arsenal, who included new £10m left-back Nacho Monreal, had scored 22 goals in the previous eight league games.
Smiles in the end for Arsene Wenger but it required a huge slice of luck for Arsenal to finally find the net after a battling Stoke performance. The visitors will complain about the goal while there were a couple of meaty challenges towards the end. But this was far from a comfortable win for the Gunners."
But their form has been erratic of late, with three wins, three draws and two defeats since the turn of the year.
And for long spells Gunners boss Arsene Wenger seemed frustrated as he prowled the touchline.
His side carved out a string of chances but found Begovic, 25, in inspirational form.
Stoke's decision to pay £3.5m for goalkeeper Jack Butland earlier in the week produced an impressive response from the first-choice Bosnian.
Having denied Oxlade-Chamberlain from inside the six-yard area after Stoke had failed to deal with a corner, the former Portsmouth goalkeeper kept out Koscielny's powerful header.
Yet his best save came four minutes before the interval. A delightful pass from Jack Wilshere presented Oxlade-Chamberlain with another opportunity but the Gunners were left frustrated.
Stoke created little going forward but their stubborn rearguard display looked like earning Tony Pulis's side a precious point.
That was until Andy Wilkinson's lunge on Theo Walcott, which earned the Stoke player a booking, and allowed Podolski to score from the free-kick.
Arsenal manager Arsene Wenger:
"I said already before the West Ham and Liverpool games, that we are in a position where we cannot drop points.
"We dropped two points against Liverpool but we couldn't do it again. What is more important is the quality of performances is there. The spirit is there.
"The target is to be in the top four and to focus on the two cups we are still in."
Stoke City manager Tony Pulis:
"We've leaked a lot of goals in the last couple of games and although we've played Manchester City twice, Chelsea and now Arsenal, it has been a difficult run.
"But that was the same at the beginning of the season and we only have Manchester United and Tottenham at our place now.
"We've got most of the big ones out of the way."
- 01 Szczesny
- 03 Sagna
- 04 Mertesacker
- 06 Koscielny
- 17 Monreal
- 02 Diaby (Cazorla - 68' )
- 08 Arteta
- 10 Wilshere
- 14 Walcott (Ramsey - 90' )
- 15 Oxlade-Chamberlain (Podolski - 68' )
- 12 Giroud
- 24 Mannone
- 11 Santos
- 25 Jenkinson
- 07 Rosicky
- 16 Ramsey
- 19 Cazorla
- 09 Podolski
- 01 Begovic
- 02 Cameron (Owen - 84' )
- 04 Huth
- 17 Shawcross Booked
- 28 Wilkinson Booked
- 30 Shotton
- 06 Whelan Booked
- 15 Nzonzi
- 26 Etherington
- 19 Walters (Jerome - 84' )
- 25 Crouch (Jones - 83' )
- 29 Sorensen
- 16 Adam
- 18 Whitehead
- 21 Kightly
- 09 Jones
- 10 Owen
- 33 Jerome
Live Text Commentary
Full Time The referee blows his whistle to end the game.90:00 +4:06
Unfair challenge on Laurent Koscielny by Kenwyne Jones results in a free kick. Wojciech Szczesny takes the free kick.90:00 +2:40
Michael Owen gives away a free kick for an unfair challenge on Mikel Arteta. Direct free kick taken by Mikel Arteta.89:58
Laurent Koscielny restarts play with the free kick.89:58 Substitution
Substitution Theo Walcott goes off and Aaron Ramsey comes on.89:58
Nacho Monreal fouled by Cameron Jerome, the ref awards a free kick.88:10
Mikel Arteta restarts play with the free kick.88:10 Booking
Booking Ryan Shawcross is given a yellow card.88:04
Free kick awarded for a foul by Ryan Shawcross on Laurent Koscielny.82:39
Ryan Shawcross takes the free kick.82:39 Substitution
Substitution (Stoke) makes a substitution, with Michael Owen coming on for Geoff Cameron.82:39 Substitution
Substitution Jonathan Walters goes off and Cameron Jerome comes on.82:39 Substitution
Substitution Kenwyne Jones is brought on as a substitute for Peter Crouch.82:39
Laurent Koscielny challenges Peter Crouch unfairly and gives away a free kick.80:50
Jack Wilshere takes the inswinging corner, Ryan Shawcross manages to make a clearance.79:48
Santi Cazorla takes a shot. Save by Asmir Begovic. Theo Walcott decides to take a short corner.79:41
Santi Cazorla takes a shot. Blocked by Ryan Shawcross. Santi Cazorla takes a shot. Blocked by Ryan Shawcross.77:11
Assist on the goal came from Theo Walcott.77:11 Goal scored
Goal! - Lukas Podolski - Arsenal 1 - 0 Stoke Lukas Podolski grabs a goal direct from the free kick from just outside the area low into the middle of the goal. Arsenal 1-0 Stoke.76:14 Booking
Booking Andy Wilkinson is given a yellow card.
Unfair challenge on Theo Walcott by Andy Wilkinson results in a free kick.74:12
The assistant referee signals for offside against Peter Crouch. Laurent Koscielny restarts play with the free kick.73:27
Shot from long distance by Nacho Monreal misses to the right of the goal.71:38
Headed effort from deep inside the area by Olivier Giroud misses to the right of the goal.69:42
Direct free kick taken by Jack Wilshere.69:42 Booking
Booking Glenn Whelan booked for unsporting behaviour.69:32
Santi Cazorla fouled by Glenn Whelan, the ref awards a free kick.68:46
Bacary Sagna challenges Matthew Etherington unfairly and gives away a free kick. Free kick crossed left-footed by Matthew Etherington from left wing, clearance made by Per Mertesacker.67:22 Substitution
Substitution Santi Cazorla replaces Vassiriki Diaby.67:22 Substitution
Substitution Lukas Podolski comes on in place of Alex Oxlade-Chamberlain.63:48
Ryan Shawcross has an effort at goal from just outside the area which goes wide of the left-hand post.61:09
Geoff Cameron is caught offside. Laurent Koscielny takes the indirect free kick.55:18
Effort on goal by Olivier Giroud from deep inside the area goes harmlessly over the bar.51:04
Ryan Shotton concedes a free kick for a foul on Alex Oxlade-Chamberlain. Jack Wilshere takes the free kick.50:20
Free kick awarded for an unfair challenge on Jack Wilshere by Robert Huth. Mikel Arteta takes the direct free kick.48:59
Inswinging corner taken by Theo Walcott, Asmir Begovic makes a save.46:45
Unfair challenge on Mikel Arteta by Peter Crouch results in a free kick. Mikel Arteta takes the free kick.45:01
The referee gets the second half underway.45:00 +3:23 Half time
Half Time The referee calls an end to the first half.40:01
Alex Oxlade-Chamberlain takes a shot. Save made by Asmir Begovic. Corner from the right by-line taken by Jack Wilshere, clearance made by Steven Nzonzi. Inswinging corner taken right-footed by Theo Walcott from the left by-line, clearance by Peter Crouch.38:25
Olivier Giroud is caught offside. Asmir Begovic restarts play with the free kick.34:31
Laurent Koscielny takes a shot. Asmir Begovic makes a save.33:58
Inswinging corner taken by Theo Walcott from the left by-line, Peter Crouch manages to make a clearance.30:39
Corner taken by Jack Wilshere from the right by-line, Alex Oxlade-Chamberlain takes a shot. Save by Asmir Begovic. Inswinging corner taken by Theo Walcott, Peter Crouch makes a clearance.29:36
Unfair challenge on Olivier Giroud by Ryan Shawcross results in a free kick. Free kick taken by Mikel Arteta.29:04
Effort on goal by Ryan Shawcross from just outside the area goes harmlessly over the target.25:37
Theo Walcott takes a shot. Blocked by Andy Wilkinson. Foul by Mikel Arteta on Geoff Cameron, free kick awarded. Free kick taken by Asmir Begovic.22:35
Corner from the right by-line taken by Jack Wilshere, save made by Asmir Begovic.21:50
Shot from just outside the box by Glenn Whelan goes over the bar.20:51
Alex Oxlade-Chamberlain takes a shot. Ryan Shawcross gets a block in. Olivier Giroud is caught offside. Asmir Begovic takes the free kick.17:04
Headed effort from the edge of the area by Ryan Shawcross goes wide of the right-hand post. Free kick awarded for an unfair challenge on Theo Walcott by Andy Wilkinson. Jack Wilshere crosses the ball from the free kick left-footed from right wing, Robert Huth manages to make a clearance.16:33
Peter Crouch takes a shot. Laurent Koscielny gets a block in. Inswinging corner taken by Matthew Etherington.14:38
Olivier Giroud produces a headed effort from deep inside the six-yard box which goes wide of the right-hand upright.13:49
Jonathan Walters takes a shot. Wojciech Szczesny makes a save.12:29
Free kick awarded for an unfair challenge on Theo Walcott by Matthew Etherington. Bacary Sagna takes the free kick.6:15
Corner from the right by-line taken by Jack Wilshere, Geoff Cameron manages to make a clearance. Inswinging corner taken left-footed by Jack Wilshere played to the near post, Glenn Whelan manages to make a clearance.4:57
Jack Wilshere takes a shot from inside the box clearing the bar.1:57
Effort from the edge of the area by Alex Oxlade-Chamberlain goes wide of the left-hand upright.1:06
Free kick awarded for an unfair challenge on Jack Wilshere by Geoff Cameron. Mikel Arteta restarts play with the free kick.0:00
The match has kicked off.
Live data and text provided by our data suppliers