Scottish Premiership
St JohnstoneSt Johnstone1RangersRangers2

St Johnstone 1-2 Rangers: Stunning James Tavernier strike earns champions victory

By Thomas DuncanBBC Scotland
Kemar Roofe scores from the penalty spot for Rangers against St Johnstone
Kemar Roofe's penalty started Rangers' comeback

Manager Steven Gerrard hailed James Tavernier as the "best right-back in Scotland" after his "world class" goal gave Rangers a hard-fought Scottish Premiership win at St Johnstone.

The champions toiled in the first half, and fell behind to Michael O'Halloran's fine strike early in the second period as St Johnstone put in a typically resilient display.

But Kemar Roofe's penalty and Tavernier's sensational 25-yard effort moved Rangers top of the table.

"That's the reason why he's captain," Gerrard told Sky Sports. "Because of his quality, he can step up in big moments and he's got us three points rather than one today.

"There's obviously been a lot of noise around Nathan Patterson, who's a fantastic player and is eventually going to be Rangers' top right-back for a long time. But we have to remember we've got the best right-back in Scotland as well."

The win moves Rangers two points clear of Hibernian and Hearts, who face each other in the first Edinburgh derby of the season on Sunday.

St Johnstone, meanwhile, are still without a league win this season, though they were boosted before the match by news of manager Callum Davidson extending his contract to 2025.

After a stuttering start to the season, Old Firm victory against Celtic before the international break was the spark Rangers were looking for to ignite their campaign.

But a slow, error-strewn first half was a return to previously stilted displays, and it took going behind early in the second half to bring Gerrard's team to life.

St Johnstone - in their first game since losing key players Jason Kerr and Ali McCann on deadline day - were typically excellent without the ball, and O'Halloran provided the perfect sucker punch to match.

Hayden Muller's terrific pass from deep found the former Rangers forward and he controlled the ball and cut inside a flailing Filip Helander before firing past Jon McLaughlin.

The blow seemed to shake Rangers - without self-isolating centre-back Connor Goldson for the first time in 82 games - awake and Ryan Kent, who was again below his best to this point, dribbled into the box, and delayed his shot enough to entice Muller to catch his left leg.

Roofe was emphatic from the spot to level, and the furore after the ball hit the back of the net cranked up the intensity further.

St Johnstone captain Liam Craig tried to wrestle the ball from Roofe, Alfredo Morelos gave him a slight nudge, and then Shaun Rooney got involved in the melee as all four players were booked.

The Rangers fans behind either goal responded to that flurry of action, and their team showed the kind of intensity which had been sorely lacking in the first half.

Tavernier and Kent both flashed shots just over, and Roofe began causing problems for St Johnstone's back three, before the captain stepped up.

The right-back was missing for the win against Celtic due to Covid-19 isolation, and had failed to recapture his incredible form of last season.

But his intervention in Perth was magnificent, as he stepped on to Kent's pass and sent the ball looping over Zander Clark and into the corner to ultimately earn an important three points.

St Johnstone did not fold easily, though, and had efforts themselves, the best of them falling to new signing Ali Crawford, but Tavernier did enough to force him into side-footing over the bar from close range.

Man of the match - James Tavernier

James Tavernier and Calvin Bassey
Tavernier delivered a sensational winner, as well as putting in a crucial challenge to put off Ali Crawford in front of goal with the scores level

What did we learn?

Like last season, Rangers found a way to win a tough match when not at their best. Until they scored, St Johnstone managed to frustrate their visitors but it was startling how the intensity of the entire match went up in the aftermath of Roofe's equaliser.

The fans roared, Kent came to the party, and Tavernier produced the type of match-winning contribution he delivered regularly last term.

The key for Rangers now is to start producing 90-minute performances, which have so far eluded them. But, while they iron out some creases in their play, finding a way to win is the key and they did that well.

The only negative was an injury to defender Filip Helander, with Gerrard saying afterwards the early signs "don't look good" for the Swede.

St Johnstone, meanwhile, were shorn of Liam Gordon and Murray Davidson, as well as having to cope with the departures of Kerr and McCann. What's key, though, is that whoever steps in, their 5-2-1-2 shape is honed perfectly.

They are incredibly hard to score against, and if they can add a bit more in the final third they will have a fine league campaign once more. Despite a winless start, there will be no panic with Davidson in charge.

What they said

St Johnstone manager Callum Davidson: "There are a lot of things there that were really pleasing. The big disappointment was when we went 1-0 up we went we started making basic mistakes and got out of our shape too easily and allowed Rangers to apply pressure."

Rangers manager Steven Gerrard: "We're champions for a reason. We've got good players but we also know how to win. We've had to go late and deep to find a way against Celtic, we've had to do the same today. That's what gets you there in the end."

What's next?

Rangers begin their Europa League group stage campaign at home to Lyon on Thursday (20:00 BST), while St Johnstone are back in action at Aberdeen in the Premiership next Saturday (15:00).

Player of the match

TavernierJames Tavernier

with an average of 7.13

St Johnstone

  1. Squad number11Player nameO'Halloran
    Average rating


  2. Squad number1Player nameClark
    Average rating


  3. Squad number16Player nameMuller
    Average rating


  4. Squad number10Player nameWotherspoon
    Average rating


  5. Squad number2Player nameBrown
    Average rating


  6. Squad number21Player nameCrawford
    Average rating


  7. Squad number19Player nameRooney
    Average rating


  8. Squad number3Player nameDevine
    Average rating


  9. Squad number26Player nameCraig
    Average rating


  10. Squad number4Player nameMcCart
    Average rating


  11. Squad number9Player nameKane
    Average rating


  12. Squad number17Player nameVertainen
    Average rating


  13. Squad number7Player nameMay
    Average rating



  1. Squad number2Player nameTavernier
    Average rating


  2. Squad number25Player nameRoofe
    Average rating


  3. Squad number17Player nameAribo
    Average rating


  4. Squad number10Player nameDavis
    Average rating


  5. Squad number14Player nameKent
    Average rating


  6. Squad number26Player nameBalogun
    Average rating


  7. Squad number18Player nameKamara
    Average rating


  8. Squad number5Player nameHelander
    Average rating


  9. Squad number33Player nameMcLaughlin
    Average rating


  10. Squad number20Player nameMorelos
    Average rating


  11. Squad number3Player nameBassey
    Average rating


  12. Squad number30Player nameSakala
    Average rating


  13. Squad number4Player nameLundstram
    Average rating


  14. Squad number15Player nameSimpson
    Average rating



St Johnstone

Formation 5-3-2

  • 1Clark
  • 19RooneyBooked at 59mins
  • 2Brown
  • 16MullerBooked at 41minsSubstituted forVertainenat 83'minutes
  • 4McCart
  • 3Devine
  • 10Wotherspoon
  • 26CraigBooked at 59mins
  • 21CrawfordSubstituted forMayat 85'minutes
  • 11O'Halloran
  • 9Kane


  • 5Dendoncker
  • 7May
  • 12Parish
  • 15Gilmour
  • 17Vertainen
  • 23Ballantyne
  • 25Ambrose


Formation 4-3-3

  • 33McLaughlinBooked at 10mins
  • 2Tavernier
  • 26Balogun
  • 5HelanderSubstituted forSimpsonat 77'minutes
  • 3Bassey
  • 17Aribo
  • 10Davis
  • 18Kamara
  • 25RoofeBooked at 59mins
  • 20MorelosBooked at 59minsSubstituted forSakalaat 79'minutes
  • 14KentSubstituted forLundstramat 82'minutes


  • 1McGregor
  • 4Lundstram
  • 15Simpson
  • 23Wright
  • 30Sakala
  • 31Barisic
  • 37Arfield
William Collum

Match Stats

Home TeamSt JohnstoneAway TeamRangers
Shots on Target

Live Text

  1. Post update

    Match ends, St. Johnstone 1, Rangers 2.

  2. Full Time

    Second Half ends, St. Johnstone 1, Rangers 2.

  3. Post update

    Corner, St. Johnstone. Conceded by Calvin Bassey.

  4. Post update

    Offside, Rangers. John Lundstram tries a through ball, but Fashion Sakala is caught offside.

  5. Post update

    Kemar Roofe (Rangers) wins a free kick in the attacking half.

  6. Post update

    Foul by Jamie McCart (St. Johnstone).

  7. Post update

    Joe Aribo (Rangers) wins a free kick in the defensive half.

  8. Post update

    Foul by Eetu Vertainen (St. Johnstone).

  9. Post update

    Foul by Steven Davis (Rangers).

  10. Post update

    Christopher Kane (St. Johnstone) wins a free kick in the attacking half.

  11. Post update

    Foul by Fashion Sakala (Rangers).

  12. Post update

    Jamie McCart (St. Johnstone) wins a free kick in the defensive half.

  13. Post update

    Attempt missed. Eetu Vertainen (St. Johnstone) right footed shot from the left side of the box is close, but misses the top left corner following a set piece situation.

  14. Post update

    Foul by Calvin Bassey (Rangers).

  15. Post update

    Christopher Kane (St. Johnstone) wins a free kick on the right wing.

  16. Substitution

    Substitution, St. Johnstone. Stevie May replaces Alister Crawford.

  17. Substitution

    Substitution, St. Johnstone. Eetu Vertainen replaces Hayden Muller.

  18. Substitution

    Substitution, Rangers. John Lundstram replaces Ryan Kent.

  19. Post update

    Offside, St. Johnstone. Alister Crawford tries a through ball, but Michael O'Halloran is caught offside.

  20. Goal!

    Goal! St. Johnstone 1, Rangers 2. James Tavernier (Rangers) right footed shot from outside the box to the bottom left corner. Assisted by Ryan Kent.

Top Stories

Elsewhere on the BBC

Around Scottish sport