St Johnstone got their first goal in six games but it wasn’t enough to get them any Parkhead points.
There were plenty of positives in this match to take into next weekend’s League Cup semi-final the performance of Michael O’Halloran being one of them.
But Celtic had plenty of them as well, and it was their clinical finishing at crucial times that settled the contest.
There were two big pieces of team news for Saints O’Halloran being in it and captain Dave Mackay being out.
The Perth men started quite well but it counted for nothing when the hosts scored with their first chance of the game in nine minutes.
Man of the moment Leigh Griffiths beat Steven Anderson outside of the box and after his shot came back off Alan Mannus, Gary MacKay-Steven found the net.
Some Celtic fans would have been thinking this could be another Hamilton but Saints came back with the perfect response to the early set-back and equalised three minutes later their first goal since the start of December.
Any doubts about O’Halloran’s state of mind given the recent Rangers transfer interest in him were blown away when he beat his man down the right wing, hit the bye-line and laid the ball on a plate for a Steven MacLean close-range finish.
Tommy Wright’s side were pretty comfortable for the next 20 minutes but a lapse in concentration from Graham Cummins nearly cost them.
He failed to track a Mickael Lustig over-lap down the Celtic right and the subsequent ball played across the six-yard line would only have needed tapping in had there been a Hoops player there to take advantage.
Saints weren’t able to hold out until the break, though.
On 44 minutes, Stuart Armstrong gave Mannus no chance with a stunning back post volley after the ball had been crossed from the right.
It took Celtic 10 minutes of the second half to earn themselves a bit of breathing space when Mackay-Steven side-footed home after Stefan Johansen had split the Saints backline with his through-ball to make it 3-1.
It wasn’t all Celtic and Liam Craig, a half-time substitute for Cummins, shot straight at Craig Gordon from eight yards just past the hour mark after O’Halloran had set him up.
And this was moments after Gordon got away with punching a cross ball into his own defender.
With time running out O’Halloran chested the ball down and volleyed just past the post but that was as close as Saints came to making it a tense last couple of minutes for Celtic and it finished 3-1.