Match ends, Celtic 1, St. Johnstone 0.
Celtic 1-0 St Johnstone
Celtic equalled the Lisbon Lions' run of 26 domestic games unbeaten with a slender win over St Johnstone to move 22 points clear in the Premiership.
Saints threatened with Danny Swanson hitting a post and Craig Gordon having to deny Steven Anderson's looping shot.
Celtic took a firm grip on the game, only for Scott Sinclair to miss one of several chances as Saints held firm.
But their resistance was finally broken when Dedryck Boyata headed past Saints goalkeeper Zander Clark.
Boyata had previously lacked confidence and assurance and his displays were often hapless. But he has become a player reborn.
There was little pressure on him defensively, since flurries of attacking intent from St Johnstone in the first half petered out after the break. But he was calm at the back and passed the ball in assured form.
This game, though, called for a decisive figure and while Celtic players cursed missed opportunities, it was Boyata who eventually provided the clinical touch.
He had already seen a first-half header cleared off the goalline by David Wotherspoon, before then racing back into his own penalty area to execute a perfect sliding tackle on St Johnstone striker Chris Kane.
There was less demand to be swashbuckling after the break, but he saw another header pushed away before rising to bullet a header past the St Johnstone goalkeeper Clark.
Brown steady at 400
Celtic captain Scott Brown has delivered more eye-catching displays in previous games, but perhaps a strong-willed, unbending performance was fitting in his 400th match.
He was everywhere on the pitch and cleared from a St Johnstone corner kick in the second half. He barely flinched.
He watched in frustration as Stuart Armstrong saw several curling shots saved or fly wide. Moussa Dembele, too, was off the pace, and failed to convert two Sinclair crosses.
In the midst of Celtic's dominant second-half possession, there were two moments of typical Brown play. One was a driving run into the penalty area that carried him past three St Johnstone players and earned a corner. Minutes later, he clipped a shot from the edge of the area that Clark saved.
If there was an emblematic moment, it was Brown's dogged clearing from his own penalty area late on, defiant and strong.
Combative spirit from both sides
There is never any doubt that a fixture against St Johnstone will be combative. They are well-drilled and organised. It was not unusual to see Chris Millar bravely stand up to Dembele and rob the striker of the ball.
Paul Paton, too, was relentless. Challenges tended to be physical, uncompromising, and no quarter was given. Runs were blocked, tackles were fierce, there were occasional tussles, and in Kane there was a willing runner up front.
St Johnstone were entirely subdued after the break, but in the first-half there were moments of attacking hope, mostly at set-pieces. Anderson saw one header drift wide and then the centre-back's lob was pushed over the bar by Celtic goalkeeper Gordon.
When Celtic failed to clear a corner, the ball bounced in front of Swanson and his carefully executed volley sent the ball off the upright.
The visitors were adamant they should have been awarded a penalty just after Boyata's goal, when Brown appeared to push Anderson over inside the area. Referee Andrew Dallas was unmoved, though.
For all their effort and resistance, St Johnstone could not hold Brendan Rodgers' side at bay.
- 1GordonBooked at 81mins
- 12GamboaSubstituted forSviatchenkoat 83'minutes
- 49ForrestSubstituted forRobertsat 64'minutes
- 10DembeleSubstituted forGriffithsat 75'minutes
- 24de Vries
- 10WotherspoonSubstituted forAlstonat 58'minutes
- 18PatonBooked at 76mins
- 26CraigBooked at 17mins
- 11SwansonSubstituted forCumminsat 79'minutes
- 25KaneSubstituted forMacLeanat 79'minutes
- Andrew Dallas
- Shots on Target
Second Half ends, Celtic 1, St. Johnstone 0.
Foul by Leigh Griffiths (Celtic).
Tam Scobbie (St. Johnstone) wins a free kick on the right wing.
Attempt missed. Scott Brown (Celtic) left footed shot from outside the box is just a bit too high.
Corner, Celtic. Conceded by Tam Scobbie.
Attempt blocked. Nir Bitton (Celtic) right footed shot from outside the box is blocked.
Liam Craig (St. Johnstone) wins a free kick in the defensive half.
Foul by Patrick Roberts (Celtic).
Foul by Nir Bitton (Celtic).
Chris Millar (St. Johnstone) wins a free kick in the defensive half.
Substitution, Celtic. Erik Sviatchenko replaces Cristian Gamboa.
Corner, St. Johnstone. Conceded by Cristian Gamboa.
Scott Brown (Celtic) wins a free kick in the attacking half.
Foul by Steven MacLean (St. Johnstone).
Craig Gordon (Celtic) is shown the yellow card.
Corner, St. Johnstone. Conceded by Scott Brown.
Corner, St. Johnstone. Conceded by Scott Brown.
Substitution, St. Johnstone. Steven MacLean replaces Christopher Kane.
Substitution, St. Johnstone. Graham Cummins replaces Danny Swanson.
Attempt missed. Patrick Roberts (Celtic) right footed shot from the centre of the box is too high.
Paul Paton (St. Johnstone) is shown the yellow card for a bad foul.
Kieran Tierney (Celtic) wins a free kick in the defensive half.
Foul by Paul Paton (St. Johnstone).
Substitution, Celtic. Leigh Griffiths replaces Moussa Dembele.
Foul by Scott Brown (Celtic).
Blair Alston (St. Johnstone) wins a free kick in the defensive half.
Goal! Celtic 1, St. Johnstone 0. Dedryck Boyata (Celtic) header from the centre of the box to the bottom right corner. Assisted by Stuart Armstrong with a cross.
Corner, Celtic. Conceded by Zander Clark.
Attempt saved. Dedryck Boyata (Celtic) header from the centre of the box is saved in the top centre of the goal.
Corner, Celtic. Conceded by Joe Shaughnessy.
Attempt blocked. Patrick Roberts (Celtic) right footed shot from outside the box is blocked.
Scott Sinclair (Celtic) wins a free kick in the defensive half.
Foul by Keith Watson (St. Johnstone).
Attempt saved. Cristian Gamboa (Celtic) right footed shot from the centre of the box is saved in the top centre of the goal.
Attempt blocked. Scott Sinclair (Celtic) right footed shot from outside the box is blocked.
Attempt missed. Scott Sinclair (Celtic) left footed shot from very close range is close, but misses to the left.
Substitution, Celtic. Patrick Roberts replaces James Forrest.
Attempt saved. Stuart Armstrong (Celtic) right footed shot from the left side of the box is saved in the bottom right corner.
Attempt saved. Scott Brown (Celtic) left footed shot from outside the box is saved in the centre of the goal.