QPR killed off Stoke's Championship play-off hopes as they held on for a point despite being reduced to 10 men.
The hosts dominated the first half and took a deserved lead through Martin Rowlands' free-kick from a tight angle.
Sampsa Timoska was dismissed in the second half for two bookable offences on Ricardo Fuller and Lee Martin.
Stoke finally made the breakthrough late on when Mamady Sidibe neatly placed home Fuller's cross but it was not enough to clinch a play-off place.
Results elsewhere ensured their play-off dreams would have to wait another year as Southampton, Wolves and West Brom all won.
QPR bossed the first half but Lee Martin hit the post just before the break with Stoke improving markedly after the break.
Stoke did manage to find the net again but Danny Higginbotham's goal was rightly ruled out for offside.
Carl Hoefkens' centre was converted by Danny Higginbotham but he had strayed into an offside position.
Stoke pressed forward for a winner but QPR held on for a well-earned point.
QPR manager John Gregory:
"I got unbelievably angry with the referee. I think the QPR chairman and kit man were the only people he didn't book.
"But I don't want that to gloss over what has been a monumental achievement
by my players this season.
"Six teams have finished below us - at one stage all of them were above us."
Stoke boss Tony Pulis:
"It would have been magnificent if we had gone up. Even if you come back down again, these days the parachute payments make you very strong.
"If we can wheel and deal in the summer, then hopefully we will come back next season even stronger.
"That's what we'll look to do and I'll go for as many good players as I can."
QPR: Cole, Timoska, Shimmin, Stewart, Bignot, Rowlands, Bolder (Bircham 83), Bailey, Smith, Nygaard (Ray Jones 88), Blackstock (Furlong 76).
Subs Not Used: Paul Jones, Moore.
Sent Off: Timoska (69).
Booked: Rowlands, Bailey, Shimmin, Timoska, Bolder, Cole, Smith, Furlong.
Goals: Rowlands 6.
Stoke: Simonsen, Zakuani (Pericard 59), Fortune, Higginbotham, Griffin, Hoefkens, Diao (Russell 72), Matteo, Hendrie (Martin 20), Sidibe, Fuller.
Subs Not Used: Hoult, Eustace.
Booked: Fortune, Diao.
Goals: Sidibe 84.
Ref: T Kettle (Berkshire).