St Mirren picked up a point against Rangers at The SMiSA Stadium with Jonah Ayunga scoring his first goal of the season in a 1-1 draw.
The Kenyan forward fired the Saints into a first-half lead, but the visitors grabbed a share of the spoils after a late deflected Findlay Curtis strike.
Manager Stephen Robinson named the same starting line-up as the one that defeated Hearts in the Premier Sports Cup last weekend. That meant Mikael Mandron made it from the start after being labelled as a doubt.
Rangers threatened first with Oliver Antman driving from deep in the Saints half on five minutes before a powerful shot from 20 yards out which Shamal George did well to save and hold.
Nicolas Raskin was first into the book as he was shown yellow for a pull on Mark O'Hara as the Saints captain looked to break forward. Declan John swung the resulting free-kick on to the head of Alex Gogic who made contact but couldn't beat Jack Butland.
Killian Phillips passed up a big chance to break the deadlock on 21 minutes after a nice move from Saints eventually saw the ball fall to the Irishman just inside the area. He sliced his shot and that saw it drift wide of the target.
Lyall Cameron will have felt he could have done better for the visitors after arriving into the box to meet a cross from Djeidi Gassama on the left. The midfielder got first contact on it but fired over from close-range.
A minute later it was Saints turn to come close to breaking the deadlock when Emmanuel Fernandez failed to cut out Phillips' cross. That allowed the ball to drift to the back post where Mandron met it, but at full stretch, he was unable to turn in.
Saints hit the front just after the half hour mark. Marcus Fraser lifted the ball into Mandron who turned and slid the ball for Ayunga to chase. The forward raced clear of John Souttar and showed great composure to fire beyond Butland for his first goal of the season.
Jonah Ayunga's goal put Saints ahead (Image: Allan Picken)
Keanu Baccus came close to making it two-nil on 37 minutes with a long-range strike that fizzed just over the bar with Butland at full-stretch. George made a stunning save to keep Saints ahead just a minute later when he clawed away Thelo Aasgaard's attempt.
Russell Martin made two changes for the visitors at half-time with the introduction of Mikey Moore and Danilo in place of Jayden Meghoma and Antman. While Rangers were starting to play with more intensity, Saints looked threatening on the break with Ayunga striking into the arms of Butland five minutes after the restart. Just before the hour, Mandron was inches away from adding a second with a powerful effort from 20 yards that went agonisingly wide.
Gogic passed up a good opportunity to make it 2-0 with 20 minutes remaining when he found himself on the end of a Mandron header. But the Cypriot was on the stretch as he knocked over the bar.
Rangers substitute Curtis, who had come on just two minutes earlier, drew the visitors level on 78 minutes. Saints couldn't get James Tavernier's corner clear and Curtis fired beyond George via a deflection off Baccus to make it 1-1.
George saved from Curtis a minute after his goal before a big stop heading into the final minutes to push away a curling effort from Tavernier.
The Buddies were agonisingly close to winning it deep in injury-time when Gogic's header looked set to loop into the net, only for Butland to make a stunning save to turn it over the bar and deny Saints all three points.
Full-Time: St Mirren 1-1 Rangers
St Mirren: George, Fraser, Gogic, Freckleton, Richardson, Phillips (Idowu 84), Baccus, O'Hara (c), John (Tanser 84), Ayunga (Mooney 69), Mandron
Subs Not Used: Mullen, Sobowale, King, Taylor, Dijksteel, Calvin
Rangers: Butland, Aarons (Tavernier 69), Souttar, Fernandez, Meghoma (Moore 46), Raskin, Rothwell (Curtis 76), Cameron, Antman (Danilo 46), Gassama, Aasgaard (Diomande 65)
Subs Not Used: Kelly, Barron, Dowell, Igamane
Referee: Nick Walsh
Assistant Referee: Dougie Potter
Assistant Referee: David Dunne
Fourth Official: Chris Graham
VAR: Gavin Duncan