Charlie Adam scored a second-half winner, his first goal for Stoke, to heap further pressure on QPR manager Mark Hughes after a 1-0 defeat.
The R's had not won away in the Premier League since beating City 3-2 at the Britannia Stadium last season and remained winless this term in 11 games after Adam's 52nd-minute strike.
Clear-cut chances were at a premium until Robert Huth launched a long free-kick for Jonathan Walters to head on to Peter Crouch after the break.
Crouch failed to get a meaningful touch on the ball but glanced it for Adam to half-volley home the only goal of a tense encounter at the back post.
Winger Matthew Etherington had been named in the Potters' starting line-up for the first time since the opening day of the campaign - and Ireland midfielder Glenn Whelan joined him in returning in front of the biggest home attendance of the season at 27,529.
England defender Ryan Shawcross was soon on hand to cut out Esteban Granero's cross for Djibril Cisse early on while the recalled Rangers midfielder Alejandro Faurlin also tried his luck from distance.
Stoke's Walters then blasted into the crowd after finding himself unmarked while Julio Cesar punched clear an Etherington free-kick under severe pressure.
Midfielder Steven Nzonzi picked out Crouch in the middle but the England forward's effort was deflected just wide of the target while Cisse and Junior Hoilett combined at the other end to set up Adel Taraabt.
The Morocco forward badly fluffed his chipped attempt but went closer a minute later and just before the interval when his side-footed effort was just wide of Asmir Begovic's far-post.
Scotland midfielder Adam gleefully put the hosts ahead seven minutes after the restart, from an aerial Stoke set-piece, but Taarabt almost levelled the match immediately with a deflected right-footed effort forcing Begovic to turn the ball over the bar.
The Moroccan twice dragged the ball across goal from useful positions but he did better in the 70th minute to set up Granero, whose strike brought a fine save out of Bosnian Begovic.
Substitute Michael Kightly could have sealed a certain three points near the end but the winger's strike was well saved by Cesar after fellow sub Kenwyne Jones had beaten the offside trap to pull a neat ball back to him.