Filip Helander’s thumping header settled a pulsating Old Firm derby as a depleted Rangers inflicted Celtic’s second Scottish Premiership defeat of the season at a packed Ibrox.
The home side, with manager Steven Gerrard and several players absent after a Covid outbreak, made it seven derbies in a row without defeat, with victory in six of them.
Celtic striker Odsonne Edouard somehow squirted wide from close range with the game goalless, before Helander’s header claimed the points for the champions.
The victory moves Rangers to within a point of Hibernian and Hearts at the summit, with Celtic in sixth place after two defeats in four matches.
It also means Ange Postecoglou becomes the first Celtic manager since Tony Mowbray in 2009 to lose his first Old Firm derby.
It was the first Old Firm game in front of fans since December 2019, but Celtic had to face down the capacity Ibrox crowd without any of their own people to support them.
But there were absentees in the Rangers ranks, too. Most notable was manager Gerrard, who was not at Ibrox after a Covid outbreak, and was replaced by assistant Gary McAllister.
Goalkeepers Allan McGregor and Jon McLaughlin, captain James Tavernier, and fellow right-back Nathan Paterson, were among the others missing, with McAllister revealing afterwards he was unsure who would be available until Sunday morning.
The uncertainty and vulnerability both sides had shown this season made it all the more fascinating. The question was who would blink first?
Rangers striker Alfredo Morelos shot over early on as he tried to hit the net for the third derby in a row, and Celtic’s Japanese forward Kyogo Furuhashi clipped an effort wide in his first taste of this occasion.
Back it swung again. Rangers’ Kemar Roofe chested the ball down in the box but couldn’t get a shot away, before Edouard inexplicably passed up a golden chance.
Kyogo squared the ball into the Frenchman’s path with just third-choice goalkeeper Robbie McCrorie to beat. The Edouard of old would have put it away in his sleep, but this time he horribly skewed in the wrong direction.
Rangers’ Kent whipped a low shot off the outside of the far post as the end-to-end action continued. But in all the frantic and absorbing action, neither goalkeeper had actually been tested in 45 minutes.
The tide appeared to turn in Rangers’ favour after the break, though. Connor Goldson, Kent and Roofe all had half-chances before Celtic responded with a tame David Turnbull free-kick into the hands of McCrorie.
And, with the momentum very much with Rangers, they broke the deadlock when Borna Barisic’s corner reached Helander, who made a late run to the back post and bulleted a header beyond Joe Hart.
The game still had more twists and turns in it, though. Moments after conceding, Kyogo found himself one-on-one with McCrorie, but the young Rangers goalkeeper denied him with a smart save in what was only his second appearance.
And the Japanese again broke through into the box, but elected for a strike instead of squaring the ball to an unmarked Ryan Christie, with McCrorie getting a foot to the shot.
A minute later he made he made the wrong decision again – squaring when he should have shot – before Celtic debutant Josip Juranovic shot over as Celtic applied late pressure.
Fashion Sakala might have burnished Rangers’ lead when he broke free on the right, but the hosts had done enough to maintain their dominance in Glasgow, and have now won their last 21 home league games in a row.
Man of the match – Leon Balogun
What did we learn?
Both had to deploy makeshift defences; Rangers playing Leon Balogun at right back, while Croatian defender Juranovic made his Celtic debut in an unfamiliar left-back role. Despite that, both defences stood up well.
The game turned on a fantastic delivery from a Barisic corner, but Celtic will be left licking their wounds having passed up glorious chances of their own.
After the international break, Rangers travel to St Johnstone on Saturday, 11 September (12:30 BST) while Celtic are at home to Ross County later that day (15:00).
Player of the match
with an average of 8.32
Squad number28Player nameMcCrorie
Squad number26Player nameBalogun
Squad number5Player nameHelander
Squad number10Player nameDavis
Squad number6Player nameGoldson
Squad number31Player nameBarisic
Squad number17Player nameAribo
Squad number20Player nameMorelos
Squad number25Player nameRoofe
Squad number18Player nameKamara
Squad number14Player nameKent
Squad number30Player nameSakala
Squad number37Player nameArfield
Squad number4Player nameLundstram
Squad number56Player nameRalston
Squad number57Player nameWelsh
Squad number54Player nameMontgomery
Squad number88Player nameJuranovic
Squad number15Player nameHart
Squad number8Player nameFuruhashi
Squad number18Player nameRogic
Squad number4Player nameStarfelt
Squad number12Player nameSoro
Squad number17Player nameChristie
Squad number14Player nameTurnbull
Squad number11Player nameAbada
Squad number22Player nameEdouard
Squad number42Player nameMcGregor
- 25RoofeSubstituted forLundstramat 74′minutes
- 20MorelosSubstituted forSakalaat 84′minutes
- 14KentSubstituted forArfieldat 89′minutes
- 14TurnbullBooked at 38minsSubstituted forRogicat 67′minutes
- 11AbadaSubstituted forMontgomeryat 86′minutes
- 22EdouardBooked at 64minsSubstituted forSoroat 67′minutes
- Kevin Clancy
Match ends, Rangers 1, Celtic 0.
Second Half ends, Rangers 1, Celtic 0.
Attempt blocked. Stephen Welsh (Celtic) header from the centre of the box is blocked. Assisted by Ryan Christie with a cross.
Corner, Celtic. Conceded by Borna Barisic.
Foul by Ismaila Soro (Celtic).
Glen Kamara (Rangers) wins a free kick in the attacking half.
Attempt saved. Fashion Sakala (Rangers) right footed shot from the right side of the box is saved in the bottom right corner. Assisted by Steven Davis.
Hand ball by Scott Arfield (Rangers).
Substitution, Rangers. Scott Arfield replaces Ryan Kent.
Attempt missed. Josip Juranovic (Celtic) right footed shot from outside the box is too high. Assisted by Adam Montgomery.
Carl Starfelt (Celtic) wins a free kick in the attacking half.
Foul by Fashion Sakala (Rangers).
Substitution, Celtic. Adam Montgomery replaces Liel Abada.
Attempt saved. Kyogo Furuhashi (Celtic) right footed shot from the right side of the box is saved in the bottom right corner. Assisted by Tomas Rogic with a through ball.
Substitution, Rangers. Fashion Sakala replaces Alfredo Morelos.
Foul by Carl Starfelt (Celtic).
Alfredo Morelos (Rangers) wins a free kick in the defensive half.
Attempt missed. Alfredo Morelos (Rangers) right footed shot from a difficult angle on the right is close, but misses to the right. Assisted by Joe Aribo.
Attempt blocked. Ryan Kent (Rangers) left footed shot from outside the box is blocked. Assisted by Joe Aribo.
Foul by Ryan Christie (Celtic).