François Trinh-Duc held his nerve as Montpellier stunned Clermont 21-20 at the Stade Marcel Michelin.
The French international scored 18 of his side's 21 points, including a last-minute penalty from 45 metres out when Clermont had been penalised in a scrum.
Fritz Lee, making his first start of the season, scored the only try of the game, as he took full advantage of a great rolling maul as Clermont led 8-6 at the break.
But Montpellier fought back in the second half, with Trinh-Duc in fine kicking form as he slotted two drop goals to add to four penalties to help the visitors to a first-ever win at Clermont.
In the end the difference looked to be a yellow card given to Nicolas Mas when Clermont were looking dangerous, allowing the home side to come back and take the lead, only for Trinh-Duc to win it at the death.
Clermont dominated the territory battle early on and had the first real chance of the game when Nick Abendanon kicked through for Zac Guildford, but debutant Ben Mowen was well-placed and beat the former All Black to the ball.
Although Clermont had looked the stronger side early on, it was Montpellier who took the lead with three points from Benoit Paillaugue when Davit Zirakashvili was penalised at the first scrum.
Clermont hit back straight away when Benjamin Fall was caught offside. Morgan Parra had struggled from the kicking tee last week so it was Brock James who stepped up, making no mistake to level the scores.
Montpellier could have retaken the lead after another powerful scrum, but Paillaugue's effort from more than 50m drifted just wide.
James matched Paillaugue, missing his second kick at goal, but his effort came back off the post, leading to a knock-on by Antoine Battut which put Clermont in a dangerous position in the Montpellier 22.
However the visitors were looking good in defence and kept Clermont at bay.
Having kept Clermont out, the visitors were back on the offensive with a great break from Trinh-Duc down the left.
As the ball was moved back right, Abendanon tackled Lucas Dupont with his side stretched, but he then kicked the ball out of Paillaugue's hands and was logically sent to the sin-bin.
Paillaugue's penalty drifted wide but the game was starting to get a little tense, with Julien Bardy and Tom Donnelly earning a talking to from Romain Poite after a scuffle.
The home side coped well with their man disadvantage, keeping Montpellier out for ten minutes, and it could have been even better but for a scrum lost against the head five metres out.
Abendanon returned four minutes from the break, and Clermont scored immediately on his return.
The former England full-back had no involvement however, with the Clermont pack taking complete control from a lineout in the Montpellier 22.
The home pack, with some help from Zac Guildford, set up a perfect maul, and Fritz Lee was at the bottom of the pile and claimed the score.
James' conversion was pulled wide, and Montpellier got back to within two points in the dying stages of the first half when Trinh-Duc, taking the kicking duties from Paillaugue, slotted a long-range penalty after a high tackle from Parra.
Neither side was at their best and the errors continued at the start of the second half. It was Montpellier who took control with an early drop goal from Trinh-Duc putting them in front.
And they were able to extend their lead soon after when Thomas Domingo came in from the side of a ruck, with Trinh-Duc slotting the tricky penalty to make it 12-8.
Clermont looked short of ideas but just before the hour-mark they came back with some quick hands down the left to stretch the Montpellier defence.
When the visitors were caught offside, Parra took a quick penalty, only to be tackled immediately by Nicolas Mas, who was sin-binned as a result. James was on target to bring the home side back to within a point.
The reaction from Montpellier was immediate. They turned the ball over from the restart, and sent the ball straight back from the ruck, to Trinh-Duc, who slotted his second drop goal of the evening.
It was back and forth with Clermont next to score, earning a penalty from the restart which James converted from out wide.
Franck Azema decided to roll the dice by introducing some new faces, and Aurelien Rougerie - who had come on for Jonathan Davies - made an instant impact with a nice run that set up another penalty for James.
The Australian made no mistake and Clermont moved back in front 17-15.
Montpellier were struggling to cope with the pace of the game, and when they were caught offside once more, James was able to stretch the lead to five just before Mas' return.
Fabien Galthié changed things around, introducing Timoci Nagusa and Rene Ranger, but it was the forwards who got them back on track, earning a penalty at the next ruck, which allowed Trinh-Duc to cut the deficit once more.
And with Clermont looking on course for the win, James kicked a penalty dead giving Montpellier the scrum which earned the decisive penalty that allowed Trinh-Duc to win it.
Penalties: James 5
Yellow Cards: Abendanon
Penalties: Paillaugue, Trinh-Duc 4
Drop goals: Trinh-Duc 2
Yellow Cards: Mas
Clermont: 15 Nick Abendanon, 14 Zac Guildford, 13 Jonathan Davies, 12 Wesley Fofana, 11 Julien Malzieu, 10 Brock James, 9 Morgan Parra, 8 Fritz Lee, 7 Julien Bardy, 6 Damien Chouly (c), 5 Sébastien Vahaamahina, 4 Jamie Cudmore, 3 Davit Zirakashvili, 2 Benjamin Kayser, 1 Thomas Domingo.
Replacements: 16 John Ulugia, 17 Vincent Debaty, 18 Loic Jacquet, 19 Viktor Kolelishvili, 20 Ludovic Radosavljevic, 21 Camille Lopez, 22 Aurelie Rougerie, 23 Daniel Kotze
Montpellier: 15 Pierre Berard, 14 Lucas Dupont, 13 Robert Ebersohn, 12 Wynand Olivier, 11 Benjamin Fall, 10 François Trinh-Duc, 9 Benoit Paillaugue, 8 Ben Mowen, 7 Antoine Battut, 6 Fulgence Ouedraogo (c), 5 Sitaleki Timani, 4 Tom Donnelly, 3 Nicolas Mas, 2 Mickael Ivaldi, 1 Mikheil Nariashvili.
Replacements: 16 Thomas Bianchin, 17 Yvan Watremez, 18 Robins Tchale Watchou, 19 Akapusi Qera, 20 Jonathan Pelissie, 21 Timoci Nagusa, 22 Rene Ranger, 23 Chris King
Referee: Romain Poite
Assistant Referees: Mathieu Delpy, Laurent Breil