Livi fell agonisingly short of claiming a second victory over Celtic this season as an injury-time Tom Rogic equaliser meant they had to settle for a point at the Tony Macaroni Arena.
Callum McGregor had given the Celts the lead with a composed finish from 20 yards out on 16 minutes only for the home side to turn things around.
Jon Guthrie levelled things up midway through the first half after Fraser Forster fumbled a long throw before Scott Robinson dramatically fired the Lions into the lead from close range just 50 seconds into the second half.
Their valiant defensive effort fell just short, though, as substitute Rogic bundled the ball home two minutes into injury-time as both sides shared the spoils.
Celtic enjoyed much of the ball in the opening stages but it was the hosts who had the game’s first real chance as Scott Robinson saw his fizzing strike from the edge of the box tipped wide by Fraser Forster on 15 minutes.
The visitors, though, would be in front within a minute. A failed cleared by the Lions saw the ball fall kindly to McGregor and the midfielder swept the ball home from 20 yards for his 12th goal of the campaign.
Gary Holt’s men have been praised for their attacking play this term – but they can still do the ugly stuff. And that’s how they levelled things up on 24 minutes as Ciaron Brown’s long throw was fumbled by Forster with Guthrie on hand to hook the ball into the net.
Odsonne Edouard looked to restore Celtic’s lead almost immediately and worked his way into a decent position but curled his effort over the bar while Christopher Jullien will feel he should have done better with his header from a Ryan Christie free-kick.
They went even closer eight minutes before the break. Steve Lawson gave the ball away to Greg Taylor with the wing-back teeing up Edouard. The Frenchman looked set to give his side the lead but saw his strike bounce off the inside of the post with Robby McCrorie beaten.
Half-time: Livingston 1-1 Celtic
Livi could perhaps have expected more of the same backs to the wall stuff to start the second half. Instead, they were in front within 50 seconds. Lyndon Dykes did brilliantly to get in behind the Celtic defence on the right before squaring to Robinson to calmly side-foot the ball past Forster.
It was the former Hearts man’s second goal of the season – the other coming in the home win over the Celts in October.
Celtic would continue to enjoy plenty of the ball but were frustrated in their efforts to get back on level terms.
Neil Lennon introduced Jeremie Frimpong in a bid to inject more pace into his side while Tom Rogic replaced the ineffective Mohamed Elyounoussi with 20 minutes remaining.
Livi looked a threat when the got the ball forward and Dykes went close to adding a third but his delicate curling chip over Forster went the wrong side of the bar for his liking.
The play was by now almost exclusively in and around the Livingston box but a resolute defensive effort continued to keep Celtic at bay while a string of corner-kicks peppered their goal.
Edouard passed up a golden opportunity when he blasted a free-kick from 20 yards into the defensive wall four minutes from time.
Just when it looked like the hosts would hold on for a second win over the Hoops this term, their hearts were broken as Edouard in behind the backline with his cutback being slotted into the net by Rogic as the game ticked into the second of five extra minutes.
Full time: Livingston 2-2 Celtic
Livingston: McCrorie, Ambrose*, Sibbald, Brown, Guthrie, Lawson, Pittman, Robinson (Bartley 65), Lawless (Crawford 72), Taylor-Sinclair, Dykes (Souda 90)
Subs not used: Schofield, Devlin, Jacobs, McMillan
Goals: Guthrie (24), Robinson (46)
Celtic: Forster, Bitton, Jullien, Ajer, Forrest, Brown, McGregor, Christie (Griffiths 75), Taylor (Frimpong 62), Edouard, Elyounoussi (Rogic 69)
Subs not used: Gordon, Bayo, Hayes, Elhamed
Goals: McGregor (16), Rogic (90)
Referee: Willie Collum
Match Report: Andy Crawford
Photo Gallery: Rae Irvine