Montpellier clung on to win on the road at Bordeaux-Bègles on Sunday thanks to the boot of scrum-half Benôit Paillaugue.
UBB threatened late on as they chipped away at the Montpellier lead thanks Pierre Bernard's points, but they ultimately fell short.
Bernard opened the scoring with a drop goal after five minutes, adding a 40-metre penalty shortly after to establish a 6-0 lead.
Paillaugue responded with two penalties to draw the visitors level before Montpellier produced the game's first try through winger Marvin O'Connor.
Benefiting from a break by Timoci Nagusa, O'Connor then beat UBB full-back Jean-Marcelin Buttin to score and put Montpellier ahead 13-6.
Their cause was hindered however by a yellow card to lock Paul Willemse for a dangerous tackle on scrum-half Heini Adams and without the bulk of Willemse in the second row of their scrum, UBB struck, earning a penalty try.
Bordeaux-Bègles were reduced to 14 men themeslves when Matthew Clarkin departed but Bernard scored his second penalty to put the hosts back ahead at 16-13.
However, Nagusa's try right on half-time after Paillaugue's quick thinking with a tapped penalty meant it was Montpellier who were ahead as the two sides headed off for the interval.
The Montpellier scrum-half added three more points after the break and his side might have been further ahead only for O'Connor to be denied a second try by the TMO.
Bernard and Paillaugue traded penalties before Montpellier lost replacement prop Antoine Battut to the bin.
A fourth penalty from Bernard locked up the score at 22-24 but UBB couldn't find a winning breakthrough, as Montpellier left the Stade Chaban-Delmas with their third win out of four so far this season.
Tries: Penalty Try
Pens: Bernard 4
Drop Goal: Bernard
Yellow Card: Clarkin
Tries: O'Connor, Nagusa
Pens: Paillaugue 4
Yellow Cards: Willemse, Battut
Bordeaux-Bègles: 15 Jean-Marcelin Buttin, 14 Jean-Baptiste Dubie, 13 Felix le Bourhis, 12 Julien Rey, 11 Charles Brousse, 10 Pierre Bernard, 9 Heini Adams, 8 Peter Saili, 7 Matthew Clarkin, 6 Louis-Benoit Madaule, 5 Berend Botha, 4 Julien Ledevedec, 3 Francisco Gomez Kodela, 2 Benat Auzqui, 1 Jefferson Poirot
Replacements: 16 Clement Maynadier, 17 Jean-Baptiste Poux, 18 Adam Jaulhac, 19 Hugh Chalmers, 20 Loann Goujon, 21 Baptiste Serin, 22 Nans Ducuing, 23 Patrick Toetu
Montpellier: 15 Anthony Floch, 14 Marvin O'Connor, 13 Timoci Nagusa, 12 Andrew Smith, 11 Benjamin Fall, 10 François Trinh-Duc, 9 Benôit Paillaugue, 8 Kelian Galletier, 7 Ben Mowen, 6 Sitaleki Timani, 5 Paul Willemse, 4 Robins Tchale-Watchou, 3 Pat Cilliers, 2 Mickael Ivaldi, 1 Yvan Watremez
Replacements: 16 Charles Geli, 17 Schalk van der Merwe, 18 Antoine Battut, 19 Wian Liebenberg, 20 Nic White, 21 Ben Lucas, 22 Julien Malzieu, 23 Jacobie Adriaanse