Rangers striker Alfredo Morelos scored his 100th goal for the Scottish champions as they moved three points clear at the top of the table with a 2-1 win at St Mirren on Sunday.
Steven Gerrard's side were rocked after just four minutes when St Mirren midfielder Connor Ronan fired home from 30 yards.
But Rangers recovered to level in the 41st minute through a Kemar Roofe penalty.
Morelos has struggled to find his best form this season, but the Colombia international headed the visitors in front two minutes later with his milestone goal.
Rangers rarely hit top form after the break but held on to inflict a first defeat in seven games for Jim Goodwin's team.
It was an important success for Rangers as they maintained their momentum, after a crucial 2-0 Europa League win over Brondby at Ibrox on Thursday.
Ahead of Aberdeen's visit to Ibrox on Wednesday, Rangers are three points clear of Hearts and Dundee United.
They are also four points ahead of Old Firm rivals Celtic, who have reeled off four successive victories. (AFP)