St Johnstone exposed struggling Dundee's defensive deficiencies at Dens Park to extend their winning run to four matches.
Gregory Tade shot the visitors in front only for Ryan Conroy to level from the penalty spot.
A Liam Craig strike had the Saints back in front before the interval.
And Steven MacLean extended the lead in the second half with a clever stooping header as the confident Saints took a grip on the game.
This was the first meeting of these River Tay rivals since 2009 and the absence had not made any hearts grow fonder as fans traded colourful insults during the lively early stages.
However, it was the visiting supporters who finished the day in fine voice having watched their team enjoy a comfortable win.
Dundee were first to threaten when a lovely touch from Jim McAlister nutmegged an opponent in the penalty area and the midfielder was unlucky to see his shot hit the legs of keeper Alan Mannus before spinning off the post.
Saints defender Steven Anderson was short with a headed back-pass, allowing Martin Boyle a tentative poke at the ball but Mannus was in close attendance and able to block.
The first sign of Dundee's frailties came when Iain Davidson misjudged a high ball over the top allowing Tade to get to the bye-line and feed the ball across goal but an unorthodox Matt Lockwood intervention allowed keeper Rab Douglas to gather.
More hesitancy in the home defence allowed Saints to take the lead as Craig was given ample space on the left of the penalty area to cut the ball across for Tade to slam his shot high into the net.
Dundee were level soon after when Frazer Wright was cautioned for blocking off Boyle after a period of pinball in the penalty area and Conroy tucked away the spot-kick.
Conroy then tried his luck with a swerving free-kick from 25 yards that Mannus had to tip over.
Dundee were looking menacing in attack but once again fell behind when Tade glanced on a cross from Chris Millar and Craig was able to squeeze in a shot from a tight angle near the back post.
With the home side showing no signs of improvement at the back, Craig sliced a shot high over the bar from 18 yards and a fierce strike from Nigel Hasselbaink, on for the injured Paddy Cregg, was smothered by Douglas.
Saints moved further ahead early in the second period as MacLean demonstrated a great poacher's instinct to crouch low at the back post and nod home a Wright header from a corner.
Tade headed over from another corner and MacLean saw his scuffed shot saved as cries of "olé" from the Bob Shankly Stand marked the visitors' dominance.
Tade nearly uprooted the goals with a thunderous low shot that cannoned off the base of Douglas's near post.
Murray Davidson dragged a close-range shot wide after MacLean did well to keep a looping delivery from Craig in play and Douglas had to look smart to stop another effort from Davidson.
The muscular Tade was causing the Dundee defence all sorts of problems and Douglas needed strong hands to repel another stinging shot.
There was one setback for the visitors late on as MacLean was stretchered off with a dislocated elbow after being grappled by Matt Lockwood in the penalty area.
Dundee duo Gary Irvine and Conroy both went close with shots in the final stages but by then most of the disappointed Dundee fans had left the stadium.
- 01 Douglas
- 02 Irvine
- 03 Lockwood
- 11 Conroy
- 25 Toshney (Benedictus - 60' Booked )
- 06 Davidson
- 20 McAlister Booked
- 23 Boyle
- 28 Kerr
- 10 Baird (Riley - 52' )
- 24 Nish Booked
- 36 Baird
- 17 Benedictus
- 18 Gallagher
- 26 Easton
- 07 Riley
- 08 McBride
- 15 Milne
- 01 Mannus
- 02 MacKay
- 05 Wright Booked
- 06 Anderson
- 19 Miller
- 04 Cregg (Hasselbaink - 25' )
- 07 Millar
- 08 Davidson
- 10 Craig
- 09 Tade
- 17 MacLean (Beattie - 83' )
- 15 Tuffey
- 18 McCracken
- 26 Caddis
- 47 Tobin
- 11 Hasselbaink
- 16 Beattie
- 41 Kane
Live Text Commentary
Free kick awarded for an unfair challenge on Martin Boyle by Chris Millar. Kyle Benedictus takes the direct free kick.85:53
Corner taken short by David MacKay.84:47
The assistant referee signals for offside against Gregory Tade. Iain Davidson takes the free kick.83:40 Full time
Full Time The referee blows his whistle to end the game.81:40
Rab Douglas takes the free kick.81:40 Substitution
Substitution Steven MacLean goes off and Craig Beattie comes on.81:40
Foul by Murray Davidson on Kyle Benedictus, free kick awarded.80:17
The ball is sent over by Liam Craig, save by Rab Douglas.77:32
Liam Craig concedes a free kick for a foul on Nicky Riley. Ryan Conroy restarts play with the free kick.74:16
Chris Millar restarts play with the free kick.74:16 Booking
Booking The referee books Kyle Benedictus for unsporting behaviour.74:00
Free kick awarded for an unfair challenge on Nigel Hasselbaink by Kyle Benedictus.72:10
Foul by James McAlister on Murray Davidson, free kick awarded. Liam Craig restarts play with the free kick.70:09
Foul by Ryan Conroy on Chris Millar, free kick awarded. Steven Anderson takes the free kick.67:12
Corner taken by Liam Craig from the left by-line.64:51
The referee blows for offside. Indirect free kick taken by Rab Douglas.63:37
The assistant referee signals for offside against Gregory Tade. Free kick taken by Iain Davidson.61:53
Outswinging corner taken left-footed by Liam Craig, Header on goal by Gregory Tade from inside the box goes harmlessly over the target.55:13 Booking
Booking Colin Nish is given a yellow card.51:56 Substitution
Substitution Kyle Benedictus on for Lewis Toshney.
Substitution John Baird leaves the field to be replaced by Nicky Riley.51:09
Assist on the goal came from Frazer Wright.51:09 Goal scored
Goal! - Steven MacLean - Dundee 1 - 3 St J'stone A goal is scored by Steven MacLean from deep inside the penalty box to the bottom left corner of the goal. Dundee 1-3 St Johnstone.46:11
Inswinging corner taken by Liam Craig. Corner from right by-line taken by Liam Craig. Short corner taken by Liam Craig from the left by-line. Outswinging corner taken by Liam Craig. Inswinging corner taken by Liam Craig from the left by-line.45:01
The second half has started.45:00 +27:47 Half time
Half Time The referee blows for half time.42:05
Gary Irvine challenges Liam Craig unfairly and gives away a free kick. Liam Craig crosses the ball from the free kick left-footed from left wing.40:03
Free kick awarded for a foul by Steven MacLean on Iain Davidson. Iain Davidson takes the free kick.39:37
Steven Anderson fouled by Colin Nish, the ref awards a free kick. Alan Mannus restarts play with the free kick.38:52
Effort on goal by Liam Craig from just inside the area clears the bar.37:10
Free kick taken by Alan Mannus.37:10 Booking
Booking James McAlister booked.37:02
James McAlister concedes a free kick for a foul on Chris Millar.36:32
Corner from the left by-line taken by Ryan Conroy, Chris Millar makes a clearance.26:24
Assist on the goal came from Gregory Tade.26:24 Goal scored
Goal! - Liam Craig - Dundee 1 - 2 St J'stone Liam Craig gets on the score sheet with a goal from close range high into the middle of the goal. Dundee 1-2 St Johnstone.23:18
Ryan Conroy has an effort direct from the free kick, save by Alan Mannus. Inswinging corner taken by Ryan Conroy from the right by-line, clearance made by Steven Anderson.23:18 Substitution
Substitution Patrick Cregg goes off and Nigel Hasselbaink comes on.23:18
Foul by Frazer Wright on Martin Boyle, free kick awarded.22:36 Booking
Booking Frazer Wright shown a yellow card.21:59 Goal scored
Goal! - Ryan Conroy - Dundee 1 - 1 St J'stone Ryan Conroy scores a power penalty. Dundee 1-1 St Johnstone.20:48
Martin Boyle fouled by Frazer Wright, the ref awards a Penalty.17:19
Gary Miller concedes a free kick for a foul on Ryan Conroy. Free kick crossed left-footed by Ryan Conroy from left wing, clearance by Gary Miller.15:12
Liam Craig provided the assist for the goal.15:12 Goal scored
Goal! - Gregory Tade - Dundee 0 - 1 St J'stone Gregory Tade scores a goal from inside the penalty area to the top left corner of the goal. Dundee 0-1 St Johnstone.11:30
Unfair challenge on Steven MacLean by Mark Kerr results in a free kick. Chris Millar takes the direct free kick.7:46
Unfair challenge on Lewis Toshney by Gregory Tade results in a free kick. Direct free kick taken by Rab Douglas.6:49
Centre by Gary Miller.3:42
James McAlister takes a shot. Save made by Alan Mannus. Inswinging corner taken from the left by-line by Ryan Conroy. Patrick Cregg gives away a free kick for an unfair challenge on Colin Nish. Direct free kick taken by Gary Irvine.3:16
Martin Boyle challenges Steven Anderson unfairly and gives away a free kick. Gary Miller takes the direct free kick.1:27
The assistant referee signals for offside against Colin Nish. Free kick taken by Alan Mannus.0:00
The match begins.
Live data and text provided by our data suppliers