Dundee United were top dogs in the Tayside derby, blowing St Johnstone away with a clinical first half performance.
Keith Watson's deflected shot and David Goodwillie's header put the hosts in control.
And Gary Mackay-Steven opened his account for the season before the interval.
The visitors' misery continued in the second half with Stuart Armstrong firing United's fourth.
For a St Johnstone side that had looked defensively robust in their opening games the result is a shock, with United displaying an energy and assuredness of movement throughout which augurs well for the season ahead.
Watson curled a fierce shot past goalkeeper Steve Banks from 22 yards, with the ball taking a nick off a Saints defender en route to goal.
But the visitors hit back with a Stevie May header just over the bar.
The Perth side enjoyed a good spell of pressure but they were gradually thrown onto the back foot by the home side's tempo and rhythm.
Goodwillie latched on to Calum Butcher's headed pass to nod home - his first goal since rejoining the Tangerines on loan from Blackburn Rovers.
Banks then made a stunning save from a deflected Goodwillie shot that had appeared to be looping into the net before the keeper acrobatically tipped away.
However, the home side claimed a third time when Andrew Robertson raced down the left and slipped the ball through to Gary Mackay-Steven, who prodded the ball under Banks.
Nigel Hasselbaink went close from six yards after the restart, home keeper Radoslaw Cierznak blocking with his feet.
And Jackie McNamara's side soon extended their advantage. Gary Mackay-Steven's lay-off found Stuart Armstrong, whose shot took a slight deflection over Banks into the net.
Steven MacLean should have immediately pulled one back for St Johnstone but hooked his shot over.
United substitute Nadir Ciftci cracked a low shot goalwards but Banks threw himself low to his right to push the ball to safety.
Ciftci then raced through one-on-one with Banks but the keeper's trailing leg saved a seemingly certain fifth goal.
Sorry, we were unable to load match stats, please try again.