Stoke strolled to their first away win in seven months thanks to a woeful defensive display from Aston Villa.
Villa performed superbly to beat Chelsea last week, but on Sunday they thoroughly deserved a 4-1 beating.
Christian Benteke gave Villa an early lead, but Stoke dominated thereafter. Peter Odemwingie scored his third goal in two games to equalise and four minutes later Peter Crouch took advantage of slack marking to put Stoke ahead.
Leandro Bacuna and Nathan Baker both failed to clear their lines and Steven Nzonzi took full advantage, beating Brad Guzan from inside the box.
Geoff Cameron rounded off the hammering in the final minute as Villa's defence was stretched on the counter. Manager Paul Lambert had called on Villa to end an inconsistent season with a good run, but that seems unlikely if they put on more performances like this.
Stoke, on the other hand, performed well, with Odemwingie a constant menace up front. Mark Hughes' team, who had only won once on their travels before this weekend, leapfrogged Villa into 10th.
Villa started just as they had ended last week's game against Chelsea - on top. Lambert's side exerted a lot of pressure on the Potters and it took just five minutes for Hughes' men to buckle.
Ryan Bertrand found last week's match-winner Fabian Delph, who muscled his way past his marker and pulled the ball back to Benteke who took a touch to control before smashing a left-footed drive past Asmir Begovic.
Delph and Bertrand combined well again, but no one could get on the end of the left-back's low cross. Stoke started to come back into the game and Odemwingie was the main threat. The Nigerian bamboozled Baker and Ashley Westwood before curling a shot just over the bar.
Odemwingie made no mistake with his finish moments later when he ran on to Crouch's knock-down and slotted the ball past Brad Guzan despite a last-ditch sliding tackle by Bertrand.
Four minutes later Stoke took the lead. Erik Pieters won the ball off Leandro Bacuna and played a clever backheel to Marko Arnautovic. The midfielder brushed off a challenge and pulled the ball back to the unmarked Crouch, who beat Guzan with a simple side-footed finish.
Things went from bad to worse for Villa when Karim El Ahmadi and Andreas Weimann hobbled off with injuries. The Villa boss replaced the duo with Marc Albrighton and Yacouba Sylla.
Marc Wilson could have made it 3-1 but he mis-placed a free header in the box. Stoke still managed to open up a two-goal lead before the break though and once again Villa's defending was not up to scratch.
Bacuna failed to deal with a simple lofted ball, allowing Arnautovic to run at the Villa back four. The Austrian winger then laid a weak pass in field which Baker diverted into the path of Nzonzi and he beat Guzan.
Home fans left their seats to go for their half-time pie early. Many of those who remained booed their team off at the sound of the half-time whistle.
Villa upped their game straight after the restart. Benteke went to ground in the box after the slightest of nudges in the back from Cameron. The striker and his manager appealed for a penalty but Mark Clattenburg shook his head. Benteke took his protest too far, shouting and pointing at the referee and he responded by showing the Belgian a yellow card.
There was no sign of a Villa comeback thereafter. Their passing was woeful at times and Stoke had little trouble opening up the home defence. Odemwingie came in off the flank and fired a low drive that Guzan parried before Ron Vlaar hooked clear.
The Villa captain missed a header at the other end. Lambert made a change, bringing on Grant Holt for Westwood. Hughes was also forced into a change when Pieters hobbled off with an injury. And the home fans left their seats en masse when Cameron turned home Arnautovic's pass in the final minute.