The Light Blues left themselves with it all to do in the second 45 minutes after Oisin Smyth’s spot-kick opened the scoring for the Paisley side.
Indeed, the second half brought about a renewed vigour from the visitors which was rewarded with substitute Danilo’s equaliser, but a last-gasp strike from St. Mirren substitute Caolan Boyd-Munce condemned Rangers to defeat.
Rangers will now turn their attentions to Sunday’s visit to Fir Park to face Motherwell in their final league outing of the calendar year.
Philippe Clement made four changes to his side for the short trip down the M8 motorway, with Jack Butland returning between the posts alongside starts for Connor Barron, Dujon Sterling and Nedim Bajrami.
Those inside the SMiSA Stadium who were late in taking their seats – perhaps due to an overindulgence in Christmas Day leftovers – certainly didn’t miss much as the away side had only a wayward long-range effort from Mohamed Diomande to show for their endeavours in the opening quarter of an hour.
James Tavernier followed soon after with a rising effort which failed to trouble Ellery Balcombe, while Clement was forced into an early change when Leon Balogun pulled up and was replaced by Robin Propper.
Rangers’ early sluggishness was compounded five minutes later when a seemingly innocuous punt upfield by the St. Mirren goalkeeper sprung Greg Kiltie beyond the Light Blues backline and Jack Butland was late in meeting the bouncing ball.
A VAR check confirmed the on-field referee’s decision and from 12 yards it was left up to Oisin Smyth who sent the Gers goalkeeper the wrong way.
The visitors immediately set about restoring parity in a first half which was characterised by St. Mirren’s defensive doggedness, although a Barron effort from distance was off target.
It took until four minutes shy of the interval for Rangers to call Balcombe into action when Hamza Igamane did well to bring a lofted cross down in the penalty box, but he was under pressure from two St. Mirren defenders while in the process of spinning and stabbing a tame finish straight down the throat of the home side’s goalkeeper.
Tavernier would have a deep delivery on the stroke of half-time which sailed into Balcombe’s hands, leaving the Light Blues with it all to do in the second half.
Clement turned to his substitutes bench at the interval as Nico Raskin and Danilo replaced Barron and Bajrami.
And there was an immediate increase in intensity when the Light Blues emerged from the tunnel, with a Tavernier delivery flashing dangerously across the face of goal before the captain went agonisingly close from a free-kick moments later.
Vaclav Cerny then sprung into action when a tantalising delivery across the penalty area reached Igamane whose clever lay-off to Danilo saw the Brazilian’s effort deflected into the grateful arms of Balcombe.
Rangers were relentless in their pursuit of a leveller and they were counting their misfortune when Cerny jinked into the St. Mirren penalty area and rattled the woodwork with a thunderous effort on his right-hand side.
The side’s persistence soon turned into reward when a stramash from a deflected Cerny cross was initially met by Raskin who – intentional or otherwise – found fellow substitute Danilo to stroke home from close range.
It was one-way traffic in Paisley, with a neat give-and-go between Cerny and Igamane almost completing the turnaround but for a wild finish from the Moroccan forward.
The threat continued to arrive from the lively Cerny, whose long-range effort whizzed only inches wide of Balcombe’s goal with the St. Mirren goalkeeper looking worried.
For all of Rangers’ pressure, however, there was a heart-in-mouth moment when a wicked corner delivery almost led to Propper nodding unaware into his own net were it not for the intervention of the woodwork.
Further reinforcements from the substitutes bench arrived via the introductions of Ridvan and Cyriel Dessers, but it was St. Mirren who had the final say when a slip from Dujon Sterling in stoppage time was punished by the home side when Boyd-Munce slammed home from the edge of the penalty area.
ST. MIRREN: Balcombe, Taylor, Smyth, Kiltie (Ayunga, 62), Idowu (Boyd-Munce, 73), Gogic, Olusanya (Mooney, 81), Fraser, John (Penman, 81), Bwomono (Iacovitti, 62), Phillips
Subs not used: Urminsky, Kenny, Scott, Mandron
RANGERS: Butland, Tavernier, Sterling, Balogun (Propper, 18), Jefte (Ridvan, 76), Barron (Raskin, 45), Diomande, Bajrami (Danilo, 45), Cerny, Hagi, Igamane (Dessers, 81)
Subs not used: Kelly, Cortes, Dowell, McCausland