Montpellier consolidated their position amongst the frontrunners on the table after claiming a 26-20 win at Stade Français on Sunday.
As the scoreline suggests this was a closely-fought battle although Montpellier held the upperhand for large periods and outscored their hosts three to one.
The victory means Montpellier move back into second place in the standings, one point ahead of third-placed Toulon and seven adrift of tabletoppers Clermont.
The first half was a tight affair with Jules Plisson and Ben Lucas trading penalties which meant the score was deadlocked at 6-6 by the half-hour mark.
Five minutes later, Montpellier hooker Mickael Ivaldi crossed for his side's opening try which meant the visitors led 11-6 at half-time.
Plisson narrowed the gap to two points when he slotted another penalty shortly after the restart but, five minutes later, Akapusi Qera made the score 9-16 when he got over for Montpellier's second try.
The next 15 minutes was a war of attrition but neither side managed to score any points before Plisson added his fourth penalty in the 60th minute.
Benoit Paillaugue added another penalty for Montpellier in the 68th minute before Plisson cancelled that effort out with another three-pointer from the kicking tee shortly afterwards.
Paillaugue secured victory when he crossed for a deserved try in the 78th minute before Jeremy Sinzelle scored a consolation try for Stade in the game's closing stages.
For Stade Français:
Pens: Plisson 5
Tries: Ivaldi, Qera, Paillaugue
Pens: Lucas 2, Paillaugue
Stade Français: 15 Hugo Bonneval, 14 Julien Arias, 13 Paul Williams, 12 Jonathan Danty, 11 Jeremy Sinzelle, 10 Jules Plisson, 9 Julien Dupuy, 8 Sergio Parisse, 7 Willem Alberts, 6 Jono Ross, 5 Paul Gabrillagues, 4 Hugh Pyle, 3 Rabah Slimani, 2 Laurent Sempere, 1 Zak Taulafo
Replacements: 16 Remy Bonfils, 17 Zurab Zhvania, 18 Gerhard Mostert, 19 Raphael Lakafia, 20 Clement Daguin, 21 Morne Steyn, 22 Waisea Nayacalevu Vuidravuwalu, 23 Paul Alo-Emile
Montpellier: 15 Benjamin Fall, 14 Timoci Nagusa, 13 Anthony Tuitavake, 12 Frans Steyn, 11 Marvin O'Connor, 10 Ben Lucas, 9 Nic White, 8 Pierre Spies, 7 Akapusi Qera, 6 Fulgence Ouedraogo, 5 Paul Willemse, 4 Robins Tchale-Watchou, 3 Nicolas Mas, 2 Mickael Ivaldi, 1 Mikheil Nariashvili
Replacements: 16 Bismarck du Plessis, 17 Yvan Watremez, 18 Thibault Privat, 19 Kelian Galletier, 20 Benoit Paillaugue, 21 Robert Ebersohn, 22 Anthony Floch, 23 Davit Kubriashvili
Referee: Romain Poite