Match ends, St. Johnstone 1, Livingston 0.
Callum Hendry's late goal helped St Johnstone beat Livingston and move up to seventh in the Scottish Premiership.
Drey Wright's driven ball from the right wing was blasted home by the 22-year-old striker with six minutes left.
A scrappy first half had been punctuated only by Stevie May's header for the hosts, and two chances for Livingston's Steven Lawless.
However, Gary Holt's side have now won just two of their last 31 away league games.
St Johnstone quietly eye top six
Most of the action came in the very closing stages, with substitute David Wotherspoon showing his skills with a step-over and drag-back, before Wright's cross was expertly turned in by Hendry.
Apart from that, precious little else happened in the half, with the only other action of note coming before the break. There were two good saves from each goalkeeper amid some doughty defending as a distinctly scrappy affair looked to be heading for goalless draw.
A May header and a fine long range shot from Lawless brought out reaction saves from Robbie McCrorie and Zander Clark, while Lawless also prodded narrowly wide when played in by Marvin Bartley.
Those chances all came in a first half in which Lyndon Dykes caused a few problems for the Perth defence without really threatening to add to his goal tally.
He nearly had an opportunity to do so 10 minutes from time when Clark spilled a shot from Scott Robinson, but the goalkeeper recovered to gather his own mistake before the striker could pounce.
St Johnstone's recent resurgence therefore continues. Since Hibs put four past them on 9 November, Tommy Wright's side have only lost two of the 11 matches played at McDiarmid Park in all competitions. Both were against Celtic.
Livingston still have not won in Perth since 2007 and these two can do an awful lot better, with their matching 3-5-2 formations cancelling each other out.
Quality was at an absolute premium, with the ball taking a battering - not that the St Johnstone fans were complaining at full-time as they applauded their men off, delighted with another win.
Their early-season woes are now a distant memory - they've only lost once in their last nine league outings and might just be quietly eyeing up the top six.
Man of the match - Callum Hendry
In a game of few chances, Hendry took the one moment of real quality with ruthless efficiency. Wright did a lot of the hard work on the right wing, but it took composure and positional nous for the 22-year old to rifle the ball home.
Gary Holt may be questioning why the striker was given the chance in the first place, but that takes nothing away from the finish, which could be vital in his side's hunt for a top-six finish.
'He's got a big future'- reaction
St Johnstone manager Tommy Wright: "Both teams tried to create moments that could win them the game but I think we got the one moment of real quality.
"We'd actually thought about taking Hendry off, but we kept him on that wee bit longer. He's got a big future ahead of him."
Livingston manager Gary Holt: "We were comfortable and controlling the game - for large spells St Johnstone never caused us any problems.
"The pitch didn't help, but we got undone. They got the cross in too easily and there's a striker standing in the middle of the box and he gets a free shot. It can't happen at any level."
- 19HoltSubstituted forWotherspoonat 80'minutes
- 22HendryBooked at 44minsSubstituted forKaneat 88'minutes
- 14MaySubstituted forO'Halloranat 71'minutes
- 10SibbaldBooked at 23minsSubstituted forRobinsonat 72'minutes
- 21McMillanBooked at 35minsSubstituted forTaylor-Sinclairat 78'minutes
- 11LawlessSubstituted forJacobsat 74'minutes
- Kevin Clancy
- Shots on Target
Second Half ends, St. Johnstone 1, Livingston 0.
Corner, St. Johnstone. Conceded by Ciaron Brown.
Foul by Scott Tanser (St. Johnstone).
Nicky Devlin (Livingston) wins a free kick in the defensive half.
Corner, St. Johnstone. Conceded by Robby McCrorie.
Attempt saved. David Wotherspoon (St. Johnstone) left footed shot from outside the box is saved in the top centre of the goal. Assisted by Alistair McCann.
Offside, St. Johnstone. David Wotherspoon tries a through ball, but Michael O'Halloran is caught offside.
Substitution, St. Johnstone. Christopher Kane replaces Callum Hendry.
Drey Wright (St. Johnstone) wins a free kick in the defensive half.
Foul by Aaron Taylor-Sinclair (Livingston).
Attempt blocked. Lyndon Dykes (Livingston) right footed shot from the centre of the box is blocked. Assisted by Keaghan Jacobs.
Foul by Alistair McCann (St. Johnstone).
Marvin Bartley (Livingston) wins a free kick in the attacking half.
Goal! St. Johnstone 1, Livingston 0. Callum Hendry (St. Johnstone) left footed shot from the centre of the box to the high centre of the goal. Assisted by Drey Wright with a cross.
Attempt saved. Keaghan Jacobs (Livingston) right footed shot from outside the box is saved in the centre of the goal. Assisted by Jon Guthrie with a headed pass.
Substitution, St. Johnstone. David Wotherspoon replaces Jason Holt.
Attempt missed. Keaghan Jacobs (Livingston) right footed shot from outside the box is too high. Assisted by Nicky Devlin.
Substitution, Livingston. Aaron Taylor-Sinclair replaces Jack McMillan.
Corner, Livingston. Conceded by Jamie McCart.