James Tavernier struck a brilliant winner as Rangers came from a goal down to beat St Johnstone at McDiarmid Park in Saturday's early Scottish Premiership game.
The champions' captain saw himself removed from penalty duties as Kemar Roofe's spot-kick (58) equalised an opener from the home side's Michael O'Halloran (51) in Perth.
But he was on target from double the distance 11 minutes from time, sending a dipping effort beyond Saints goalkeeper Zander Clark to give Rangers a third straight league win and take them top ahead of Sunday's meeting between pace-setters Hearts and Hibernian as they continue to leave a stuttering start to the season behind them.
Not so St Johnstone, who provided customarily tough opposition and were buoyed by the pre-match news of manager Callum Davidson's contract extension but remain without a league win since completing a domestic cup double in May.
A self-isolating Connor Goldson missed out for Rangers after 81 straight appearances as Steven Gerrard made three changes. James Tavernier returned after his own Covid absence, with Calvin Bassey and Jon McLaughlin also starting.
St Johnstone gave a debut to new signing Ali Crawford and brought in Michael O'Halloran, Chris Kane and James Brown. New signings Efe Ambrose and Eetu Vertainen started on the bench alongside Stevie May.
Rangers forced to dig deep against familiar foe
Rangers know all about the kind of attritional, uncompromising side fashioned by Davidson - Saints were one of only two sides to inflict a domestic defeat on Rangers last season, albeit that they needed penalties to win the Scottish Cup semi-final meeting.
Ahead of the game, Roofe acknowledged the "hurt" caused by that shock result, while Steven Gerrard - back in the dugout after a period of Covid isolation - spoke of the tough challenge inevitably in store.
So it proved, despite a Deadline Day of upheaval which saw Saints lose two key men in Jamie Kerr and Ali McCann, as a side including debutant Ali Crawford completely stymied the visitors before the break.
Clark's routine stop from a Roofe curler was the closest either side came during a half where the other notable moment was a 28-handicapper golf-style hack on O'Halloran which brought Rangers goalkeeper Jon McLaughlin an early booking.
The Saints forward, once of Rangers, gained revenge soon after half-time, taking advantage of Filip Helander's hesitancy and a lucky break to finish confidently when one-on-one. Helander, the hero against Celtic before the international break, later departed on a stretcher to cap a bad afternoon.
The goal was the first scored in the league by a Saints player this term - an own goal their only other effort - and there were precious few other openings as Rangers upped the pressure having enjoyed sterile possession to that point.
St Johnstone: Clark (6), Rooney (7), Brown (6), Muller (6), McCart (6), Devine (6), Wotherspoon (6), Craig (6), Crawford (6), O'Halloran (7), Kane (6).
Subs: Vertainen (n/a), May (n/a).
Rangers: McLaughlin (5), Tavernier (7), Balogun (6), Helander (5), Bassey (6), Aribo (6), Davis (6), Kamara (6), Roofe (7), Morelos (5), Kent (7).
Subs: Simpson (5), Sakala (5) Lundstram (n/a).
Man of the match: James Tavernier
Alfredo Morelos was a big toe away from an equaliser before Hayden Muller's hasty swipe at Ryan Kent's legs in the box gave the visitors a penalty. Roofe had missed in the semi-final shootout back in April, but he assumed responsibility from regular taker Tavernier and his kick - straight down the middle - was good enough to beat Clark.
Crawford spurned the chance of a debut goal when he ballooned over under pressure from Tavernier, but the goal threat was mostly at the other end, Kent sending a 20-yarder just past the angle before Tavernier's decisive intervention.
Man of the Match - James Tavernier
In a game which needed some magic to unlock a result, the Rangers captain provided it - a classy winner which was a hallmark of Tavernier's confidence even after team-mate Roofe assumed his penalty-taking role a few minutes earlier.
What the managers said...
Rangers boss Steven Gerrard: "We've won a very tough match. We knew the success they've had and the way Callum has set them up. We knew it was going to be scruffy and that we'd have to show a moment of quality at the right time to get the three points.
"First half I didn't think we did much wrong, but we didn't have that bit of magic or quality in the final third. Second half we go a goal down and it becomes more complicated, but that's what champions do, they find ways and they find answers.
"It's a world-class finish from James and I also liked our build-up play leading into the penalty. It was a blatant penalty but it was us pushing, knowing we were 1-0 down and our big players had to roll their sleeves up and produce for us, and that's what's happened."
On Kemar Roofe taking over penalty duties from James Tavernier: "I don't mind the penalty situation as long as it's respectful. It'll be interesting to see who takes the next one - I'll leave it to them."
On Filip Helander's injury: "I'm concerned. He's at the doctor's - it doesn't look good, but until we scan it in 24-48 hours we're not too sure."
St Johnstone boss Callum Davidson: "I thought we performed really well on the defensive side, especially first half. I asked them to be a wee bit braver second half, and we were - we got chances from it.
"Fantastic goal from Michael - my biggest disappointment was the five-minute spell after it. We made numerous basic mistakes and allowed Rangers to apply pressure. And obviously a mistake for the penalty - you can't go to ground.
"It was a wonder goal from Tavernier but I'd have liked more pressure on the ball... You come across a top team like Rangers and you can't really switch off."
James McFadden on Rangers: "It took [St Johnstone's goal] for them to react and show an urgency, to make runs off the ball and put St Johnstone under real pressure. It's been a theme for Rangers at the start of this season - at times it's been a bit slow, a bit laboured, but when they turn it on it's still the same side that won the league by 25 points last season."
St Johnstone take their search for a first league win of the season to Aberdeen next Saturday, while next up for Rangers is a Europa League home game against Lyon on Thursday.
The champions are back in domestic action at Ibrox on Sunday, with Motherwell the visitors.
Become a Millionaire with Super 6!
Could you make the £1,000,000 yours in this week's Super 6 round? Play for free, entries by 3pm Saturday.