Two fine saves from Kelle Roos at either end of the game played a huge part as Aberdeen were made to work hard by St Johnstone's ten men before they came away with a vital win at McDiarmid Park.
For the trip to Perth, Barry Robson named an unchanged Aberdeen side from the one that defeated Hearts 3-0 before the international break. Matty Kennedy and Alfie Bavidge returned to the bench in place of Connor Barron and Hayden Coulson.
There were five changes for the home team after their 1-1 draw at Kilmarnock. In came David Wotherspoon, Daniel Phillips, Zak Rudden, Ryan McGowan and Adam Montgomery in place of Alex Mitchell, James Brown, Theo Bair, Graham Carey and Cammy MacPherson, the first four all dropping to the bench.
Kelle Roos was in sharp action after just two minutes, down to his left to paw away a fierce Gordon shot from a Saints corner. The rebound was speared back into the near post by McGowan, Roos down again to make an important second stop.
Straight up the other end and a quick ball inside from Graeme Shinnie in the second minute had Bojan Miovski chasing ahead of Considine, Miovski taking a tumble as the two tangled on the edge of the box. Having pointed to the spot, the referee then consulted the VAR monitor. The upshot was a free-kick instead, but also a straight red card for Considine on six minutes. After trying to change the angle on the free-kick, Jonny Hayes' effort at goal was straight into the wall.
Saints were soon on the attack again, Rudden in behind on the right, Roos clearing it behind with his boot at the foot of the near post. Aberdeen broke swiftly from the resulting corner, Ylber Ramadani curling in a shot from the edge of the box that thudded against the post and went behind to complete a frantic first nine minutes of the game.
Rudden went in the book for two attempts at rugby tackling Ross McCrorie in the 17th minute. From the free-kick just inside Saints' half, Leighton Clarkson picked out Angus MacDonald at the back post. His header back across goal looked set for the far corner of the net before Matthews, at full stretch, clawed the ball just wide. From the resulting corner, Duk, Miovski and Mattie Pollock all converged on the cross, Duk putting his header just over as they got in each other's way.
The Dons grabbed the opening goal just past the half hour. A Hayes corner on the right was met by MacDonald's purposeful run to the near post. MacDonald turned the ball goal wards with a clever flicked volley, Matthews saving well initially but as parried the ball away from him, it clipped his leg and the ball deflected back off him and into the net.
Five minutes later, there was a nasty collision on halfway between Miovski and Gordon. Miovski was booked for a high boot as he came across the Saints man, Gordon requiring treatment before he continued. May had a sight of goal on 39 minutes, getting in behind the Aberdeen defence before drilling a shot across the face of goal and wide of the far post.
May was the dangerman again for the home side in the final minute of normal time, chasing down a ball over the top, only to be outnumbered by MacDonald and McCrorie who between them bundled the ball behind.
It could have been 2-0 three minutes into added time. Ramadani drove in a fine cross from out on the right and Miovski met the ball with a header ten yards out, bulleting it wide when it really should have nestled in the net.
HALF-TIME: ST JOHNSTONE 0 ABERDEEN 1
Aberdeen had the first real opening of the second half, Miovski and Hayes combining to put Ramadani through. His shot was blocked by a last ditch tackle, the ball spinning up awkwardly for Matthews to catch underneath his bar.
The Dons kept good possession in the early stages of the second half, moving the ten men of St Johnstone around the pitch, probing for gaps as they looked to increase the lead.
Hayes played a dangerous ball in from wide on the right after 62 minutes. McCrorie controlled and turned well initially, but then got under his shot and put it over the bar. St Johnstone made their first change on 65 minutes, Rudden replaced by Carey. Shinnie was booked a couple of minutes later for dissent. Murphy replaced Wotherspoon on 71 minutes.
Saints had a golden chance to level things up on 74, May's cross finding Hallberg. Making a late run into the box, he had a free header from 14 yards but he headed into the ground, the ball bouncing up and making for a comfortable save for Roos. Ryan Duncan was Aberdeen's first switch, on for Hayes on 76 minutes.
Wright had another opportunity with ten minutes to go, coming in at the back post to meet a dangerous cross, but he made a mess of his volley as he stretched, and Aberdeen were able to clear, Carey booked for a foul on Duk in the aftermath.
Duncan was found in good space on the edge of the box a minute later, but after wrapping his left foot round the ball, he pushed his shot just wide of goal. McGowan became the third Saints man to get a yellow card, this time for a foul on Ramadani, Myslovic replacing Duk seconds later. Clarkson joined him in the book for a foul on McGowan in the 86th minute.
Another opportunity came Saints' way from the free-kick, Murphy crossing, Hallberg having a clear shot at goal from eight yards out but, with the goal at his mercy, his miskick let the Dons off the hook.
St Johnstone's last change came on 90 minutes, Phillips making way for Bair. Miovski was replaced by Watkins at the same time. Shinnie collected a second yellow for a late challenge on Wright seconds later, levelling it up at 10 v 10 for four minutes of added time.
A last minute stramash from a Saints corner raised the heartbeat but it wasn't quite over as the Dons cleared their lines. A cross from Carey reached Gordon and his header was bound for the top corner before Roos clawed it clear, then dropping on a long range effort from Gordon again as Aberdeen secured the three points.