Hearts earned a hard-fought win at the Tony Macaroni Arena over Livingston.
Liam Boyce’s goal early in the second half put the Jambos five points clear in third place in the cinch Premiership.
Robbie Neilson made two changes to the side that lost narrowly to Celtic on Thursday night. Peter Haring and Josh Ginnelly dropped out and they were replaced by Alex Cochrane and Boyce.
Hearts thought they had an early shout for a penalty when Boyce muscled his way through the Livi defence and was brought down by Tom Parkes but the officials deemed there was no foul.
The Jambos were then forced into an early change as Michael Smith appeared to injure his back and Taylor Moore was the replacement.
Livi had seen a couple of attempts fail to trouble Craig Gordon in the early stages but midway through the first half, Scotland’s number one proved why he’s the best in the country.
Jack McMillan reversed a ball through for Andrew Shinnie, who went one on one with Gordon but the keeper stood tall to block. The ball broke back to Craig Sibbald whose curling effort hit the post, before Hearts cleared as far as Stephane Omeonga.
The ball found its way to Jason Holt and Gordon somehow tipped his goal bound effort onto the woodwork before getting up to block the rebound.
After this, there was another change from the bench as the gaffer introduced Haring for Ben Woodburn in an attempt to shore up the midfield.
McMillan was next to try his luck for the home side as he cut in from the left flank but his shot was comfortably saved by Gordon, as the half ended in a stalemate.
The deadlock, however, was to be broken four minutes into the second half. John Souttar drove past half way and swept a ball forward for McKay.
McKay’s deft touch was superb and played Boyce clean through on goal, and he made no mistake in smashing the ball home past Max Stryjek to send the 3,700 visiting fans wild.
The tails were up now and a long range effort from Aaron McEneff was tipped just wide by Stryjek, before Hearts thought they’d doubled their lead.
Cochrane whipped a cross in from the left with the ball being pushed out to McKay, who smashed the ball home into the corner but the flag was up against Boyce in the area.
Livi remained a threat on the break, and Shinnie set up Alan Forrest for a chance, but Gordon was equal to his low shot inside the area.
Midway through the second half, Livi had another chance on the break but sub Cristian Montano shot across the face of goal and wide after just coming onto the park.
Hearts had two glorious chances in quick succession to wrap up the game. First, Boyce played a superb through ball for McEneff but the midfield blazed over.
Then, after winning the ball back from the Livi goal kick, Cammy Devlin sprayed a magnificent ball cross field for Cochrane who squared for McKay on the edge of the box, but he side footed the ball past the post.
Armand Gnanduillet was then introduced for the final ten minutes, replacing Boyce and he nearly set up a second, teeing up McEneff for a low drive that was well saved by Stryjek.
It should have been 2-0 in stoppage time when Gnanduillet was sent through by McEneff. He rounded Stryjek but shot into the side netting as Hearts had to settle for the single goal victory.
Livingston: Stryjek, Devlin, Fitzwater, Parkes, Penrice, Sibbald (Anderson, 63'), Holt, Omeonga (Panayiotou, 68'), McMillan (Montano, 64'), Forrest, Shinnie. Subs: Maley, Kelly, Obileye, Williamson.
Hearts: Gordon, Smith (Moore, 17'), Kingsley, Souttar, McEneff, Woodburn (Haring, 29'), Boyce (Gnanduillet, 80'), Devlin, Cochrane, McKay, Halkett. Subs: Stewart, Walker, Mackay-Steven, Ginnelly.
Referee: Kevin Clancy