Allan McGregor: A spectator for the vast majority of the game. Finally called into action on 52 minutes when he did well to turn away a Gogic effort. Palmed away a Grieve curler late on. 7

James Tavernier: Had a part to play in Rangers’ opener when his cross from the right was picked up by Kent who laid it on a plate for Roofe. Will be disappointed with a free-kick he curled over from a promising position on the half-hour mark. Set up Roofe’s second with a perfectly weighted cross in first-half stoppage time. Nodded a Barisic cross into the hands of Lyness on 69 minutes. Should’ve scored when he was picked out at the back post on 74 minutes. 7

Connor Goldson: A walk in the park for Rangers vice-captain. Untroubled for the vast majority of the match, going forward he blazed a shot from distance over the bar on 16 minutes. A worrying sight to see him go down on 87 minutes, looked in a great deal of pain as he was receiving treatment, looked like a heel issue but he was able to return to action. 7

Filip Helander: The Swede was strolling the game before going down clutching his ankle on 43 minutes following a tussle with Brophy but despite receiving treatment he wasn’t able to continue and looked dejected as he was replaced by King. 

Borna Barisic: The Croatian made his first start since the 1-0 win over Aberdeen on the 5th of March and looked much more like himself, confident and assured. He delivered some teasing balls into the box from the left-hand side and was untroubled defensively. 7

John Lundstram: Was seen holding his groin 20 minutes in before going down four minutes later. A worry for Rangers with Braga and Celtic on the horizon. Replaced by Davis. 4

Aaron Ramsey: Forced Lyness into a save with a shot from the edge of the area following a lay-off from Roofe. Had another strike on goal in first-half injury time but fired wildly over and just seconds later he struck the underside of the bar after arriving late in the box. Replaced at half-time for Sands, hopefully, with the view of keeping him fresh for Thursday. 6

Joe Aribo: Superb control and finish for Rangers’ fourth goal of the game, got the ball out from under his feet before curling an exquisite effort into the top corner from the edge of the area. Capped off a very decent showing from the Nigerian. St Mirren struggled to get near him at times, Rangers will be hoping they see more of this level of performance from him going forward. 8

READ MORE: Rangers instant reaction: Goals arrive in fluid St Mirren showing although injury worries cast a shadow

Ryan Kent: Great cross into Roofe for the early opener. Showed strength and skill to steal the ball off Gogic and set up Sakala on 22 minutes but the Zambian couldn’t get his shot away. Taken out by Power on the edge of the penalty area after a neat give-and-go with Aribo on 28 minutes. Would imagine his removal at half-time was to keep him fresh for upcoming games. 7

Kemar Roofe: The hat-trick hero and his display in Paisley will give plenty of encouragement for the two huge matches next week. Terrific header to open the scoring two minutes in as he nodded Kent’s cross into the bottom corner. Brilliant acrobatic takedown from a high ball from Helander on 15 minutes on the halfway line. Scored his second header of the game deep into first-half stoppage time, this time nodding home a Tavernier cross into the opposite corner giving Lyness no chance. He completed his hat-trick five minutes into the second half when he fired home from close range. Replaced by Amad midway through the second half. 9

Fashion Sakala: A quiet first half for the Zambian who was positioned out on the right-hand side of the front three. Looked more threatening when switched to the left for the second half. Had a big part to play in Roofe's third goal as he linked up with Aribo before cutting the ball back to the Jamaican international. He set up Amad with a glorious chance to make it 4-0 but the Manchester United loanee failed to convert. 7

Substitutes

Steven Davis: Replaced the injured Lundstram on 25 minutes to a huge cheer from the travelling support. Dictated play for the most part although he gave the ball away cheaply on 73 minutes which allowed Curtis Main a chance to have a crack on goal, fortunately, he pulled his shot wide. Great to see him back in action and looked like he had never been away. 7

Leon King: The teenager replaced the injured Helander on the stroke of half-time and slotted comfortably in beside Goldson. 6

James Sands: Replaced Ramsey at the break and was neat and tidy. 5

Scott Wright: Replaced Kent at the break and played on the right-hand side with Sakala switched to the left. Blazed over from a Barisic cutback on 63 minutes when he really ought to have burst the net. Moved more centrally with the introduction of Amad. Claimed an assist for Aribo’s stunner on 76 minutes when he played the ball into the Nigerian. 5

Amad Diallo: A rare showing of the Ivorian when he replaced Roofe on 62 minutes and showed great skill to set up a glorious chance for Wright when he dummied Barisic’s ball into the box. Missed a sitter when set up by Sakala, firing wide with the goal gaping but looked lively and desperate to make an impression. 4