QPR’s already slim play-off hopes were effectively ended as they suffered another defeat.
It leaves manager Mark Warburton facing the axe after a dismal end to the season.
Jacob Brown scored the game’s only goal, on the stroke of half-time, after Rangers failed to deal with a corner.
Josh Maja’s near-post flick was saved by Kieren Westwood and, after Ben Wilmot had an effort blocked, Brown was on hand to fire into the roof of the net.
George Thomas almost equalised when he headed Ilias Chair’s 69th-minute cross against the post.
QPR needed to win to have any realistic chance of snatching a play-off place, but they failed to register an effort on target.
Westwood was by far the busier keeper, producing a fine save to keep out Romaine Sawyers’ deflected strike before Stoke eventually went ahead.
In the second half, Westwood produced saves to deny Maja and Taylor Harwood-Bellis as Stoke continued to have the upper hand.
The result leaves QPR six points adrift of sixth-placed Sheffield United with two matches to play.
One of those matches is against the Yorkshire side, so Rangers can still finish level on points with them, but United have a vastly superior goal difference.
QPR: Westwood, Sanderson, Dunne, Barbet, McCallum, Field, Dozzell, Amos (Adomah 57), Chair, Thomas (Gray 70), Dykes (Austin 57).
Subs not used: Mahoney, Kakay, Ball, Hendrick.