Allan McGregor: Beaten early on by Kyogo before the offside flag was raised. Called into action on a number of occasions in the first half to deny McGregor and two efforts from Jota but could do little to keep out Kyogo’s opener midway through the first half. The Japanese fired past the 41-year-old just after the hour mark after poor defending from Davies. Could possibly have thrown himself at the ball from Souttar’s under-hit back pass that allowed Jota to nip and score Celtic’s third. 7

James Tavernier: A moment of sheer brilliance to equalise just before the break with a wonderfully struck free kick that rattled the underside of the bar and in past the despairing Hart. Scored an incredible 100th goal in Rangers colours with a terrific back post header as the Ibrox club chased the game in the second half and came close to an unbelievable hat-trick seconds later with a header at the opposite post. 8

John Souttar: An Old Firm baptism for the former Hearts man following a hip injury sustained by Connor Goldson. Made a howling error when his slack back pass was latched upon by Jota who slotted past McGregor. Up to that point, he had coped reasonably well and won his fair share of aerial balls in both boxes. 5

READ MORE: Celtic vs Rangers ref watch as Kevin Clancy and VAR analysed

Ben Davies: Didn’t get close enough to Kyogo who was allowed to swivel before firing past McGregor and a poor header allowed the Japanese to restore Celtic’s advantage just after the hour mark. Denied Kyogo a hat trick shortly after with a vital block. 5

Borna Barisic: There would’ve understandably been concerns about the Croatian given previous Parkhead horror shows but he stood up well for the most part. Produced an unbelievable clearance off the line to deny Kyogo but the offside flag had been raised anyway. Delivered the cross for Tavernier to head home his second of the game and found the skipper moments later but he headed wide. Curled a last-gasp free-kick over the bar that consigned Rangers to defeat. 6

Ryan Jack: Industrious as ever without being spectacular. Kept things simple and moving in the main. 6

Nico Raskin: The Belgian was a welcome addition following a three-week injury lay-off and provided bite and energy in the Rangers engine room. Always looked to play a forward pass and pick out a teammate in a more advanced position. Booked following an altercation with McGregor. 7

Todd Cantwell: Stole the ball off Taylor in the opening stages and battled well for the most part. Rarely gave the ball away but the one time he did he had McGregor to thank for saving from Jota.  Rifled against the side netting as Rangers applied some pressure at the start of the second half. 6

Malik Tillman: Started brightly as he and Morelos looked to press but faded as the match wore on. Dragged an effort wide moments after Kyogo’s opener but was caught on the ball often as he struggled with the pace and intensity of the game. Fouled on the edge of the area by O’Riley who was cautioned before Tavernier rattled in the resultant free kick. Subbed for Sakala midway through the second half. 5

Ryan Kent: Dispossessed Mooy early on but ran into a cul-de-sac and, as ever, his decision-making at times was suspect. In a game he has often thrived in, he struggled to impose himself and was dealt with by the Celtic backline with relative ease. 4

READ MORE: Boyd delivers furious Rangers reaction to Morelos VAR controversy

Alfredo Morelos: Scythed down by Carter-Vickers early on with the Celtic defender shown the first yellow of the game. Thought he had opened the scoring from a Barisic corner but miraculously he was adjudged to have pushed Johnston before tapping home. An embarrassing decision by Kevin Clancy and Nick Walsh on VAR. He had two big chances at the start of the second half when the ball broke to the Colombian but his shot was palmed away by Hart and from the resultant corner his header struck Jack. Should've pulled the trigger late on but he and Kent dallied in the Celtic box. 6

Substitutes

Fashion Sakala: Came on with Rangers 3-1 down but struggled to affect the game. 3

John Lundstram: Brought on for the final few minutes and made an important block in stoppage time. 3

Antonio Colak: Replaced Morelos late on but had little impact. 2

Scott Wright: One of three late changes. 2