St Johnstone are still searching for their first league win of the season following this heavy defeat to Rangers at McDiarmid.
Saints held out against the Glasgow giants in the first half but the roof fell in on them in the second 45.
They conceded just after the break as the deadly Alfredo Morelos hit the back of the net with defender Connor Goldson making it two shortly after.
St Johnstone then thought they had pulled one back but the officials decided the ball had not crossed the line with Rangers going straight up the pitch to score their third through sub Jermain Defoe with the striker adding a fourth just before the final whistle.
Perth boss Tommy Wright made just one change from the team that drew at Aberdeen last week with on-loan Rangers midfielder Jason Holt unable to play against his parent club with David Wotherspoon replacing him in the starting line-up.
Rangers manager Steven Gerrard made two changes from the team that beat Feyenoord at Ibrox on Thursday night in the Europa League with Joe Aribo and Brandon Barker coming in for Glen Kamara and Scott Arfield.
There was an early chance for the visitors in just the sixth minute when St Johnstone conceded a free-kick 22 yards out. Borna Barisic stepped up to take it and bent it around the defensive wall but also wide of home keeper Zander Clark’s right-hand post.
The keeper then had to look lively as Morelos bore down on goal with Clark making a good block from the striker’s angled effort.
The goalie was called into action once more in the 18th minute when Sheyi Ojo capitalised on a slip by Saints full-back Scott Tanser and advanced before hitting a low shot from the edge of the area with Clark diving to his right to keep it out.
St Johnstone were struggling to fashion clear-cut chances of their own but despite that, Rangers were certainly not having things all their own way.
Gerrard’s men had another half chance in the 28th minute when the dangerous Ojo cut in from the right and hit a speculative shot that flew just wide.
However, Saints then had arguably the best opportunity of the half so far seven minutes later when Michael O’Halloran found himself with a clear shot on goal as the ball came off Filip Helander’s head but Rangers keeper Allan McGregor won the duel, making a superb block with his legs.
The teams headed down the tunnel still level but the deadlock was broken just two minutes after the restart.
Ryan Jack hit a long ball from the back with Morelos outmuscling Tanser for possession before powering a clinical shot high past Clark from 16 yards.
It was a hammer blow for Saints but they looked to make an instant response with Matty Kennedy sending a great cross in from the right with Ali McCann first to react but he scuffed his shot straight at McGregor.
The home side were left to rue that missed chance as Rangers doubled their advantage in the 61st minute with James Tavernier delivering a cross from the right towards Goldson who picked his spot with a header from 12 yards past Clark.
The Glasgow side’s tails were up with Clark twice having to come to the rescue, firstly at a Morelos shot and then at an angled drive from sub Scott Arfield. However, in the 66th minute, the keeper was helpless as Joe Oribo sent a header goalward but the Rangers player was denied by the crossbar.
Rangers were in cruise control and could afford to take off Morelos in the 79th minute with the striker receiving a standing ovation from the large travelling support as he was replaced by Jermain Defoe.
The subwas presented with a chance to put the icing on the cake for Gerrard’s side in the 85th minute but the Englishman’s composure deserted him and he ballooned his shot wildly over.
It seemed the game would end tamely but there was high drama in the space of a few seconds in the 88th minute when Saints Murray Davidson’s shot looked to have crossed the Rangers line but no goal was given.
The Glasgow side raced straight up the pitch with Ryan Jack setting up Defoe who this time calmly fired past Clark.
Just two minutes later, the keeper was picking the ball out of his net again as Defoe made it four with a smart turn and shot after being played in by Aribo.
Attendance – 6,251.
St Johnstone – Clark, Ralston, Kerr, Gordon, Tanser, McCann (Kane, 79), Davidson, Wotherspoon (Callachan, 69), Kennedy (Wright, 60), May, O’Halloran.
Subs not used – Parish, Duffy, Booth, Swanson, Callachan.
Rangers – McGregor, Tavernier, Helander, Goldson, Jack, Davis, Ojo (Stewart, 79), Oribo, Morelos (Defoe, 79), Barker (Arfield, 62), Barisisc.
Subs not used – Foderingham, Edmonson, Defoe, Halliday, Kamara.
Referee – Andrew Dallas.