Dragons were left to rue missed opportunities as Perpignan edged the European Challenge Cup opener 22-16 at Stade Aime Giral in France.
Two penalties from Sam Davies gave Dragons the advantage at the break in the Pool B fixture.
The fly half nudged the visitors further ahead - while Jordon Olowofela and Harrison Keddie had tries chalked off – before a stunning home fightback.
Perpignan scored 24 points in 12 minutes to wrestle back momentum and control – with Dean Ryan’s team down to 13 men at one point.
And a late try from Jamie Roberts was only enough to secure a losing bonus point from a game that Dragons will feel they should have got more from.
Attention now turns to more French Top 14 opposition with Lyon the visitors to Rodney Parade this Friday night.
Dragons started the game on the front foot and almost made a dream start inside four minutes with wing Rio Dyer just having a foot in touch as he brilliantly dived into the right corner.
Wide man Olowofela was then almost sent clear down the opposite flank after neat handing as Ryan’s men looked to hit the floor running.
Early pressure was deservedly rewarded with a penalty from Davies, after the French side drifted offside.
A first real Perpignan attack was repelled by a combination of Will Rowlands and Joe Davies while the visitors were working hard to disrupt the French driving lineout and set piece.
Scrum half Tavis Knoyle was the next man to burst through at the midpoint of the half and, following a sublime support run from Basham, slick hands from Dyer almost set Warren into space.
A penalty for going off their feet allowed Davies to double the advantage.
Perpignan started to leak penalties at the breakdown as the half wore on and lost hooker Seilala Lam to the sin bin after a dangerous high shot on opposite number Elliot Dee.
A dramatic start to the second half saw Olowofela have a try disallowed for a knock on in the build-up and then back row Keddie denied from close range by the TMO.
Perpignan were down to 13 men and Davies duly nudged Dragons into a 9-0 lead with half an hour to go.
The momentum, though started to shift on 55 minutes as Perpignan returned to full numbers and were awarded a penalty try – with Knoyle sin binned for illegally halting the score.
Now roared on by the home crowd, Perpignan came alive and went ahead on the hour when Tom Ecochard crossed the whitewash before adding a penalty five minutes later.
With two extra men, with Warren joining Knoyle in the sin bin, the hosts ruthlessly took advantage with Baptiste Plana going over after some slick handling from deep.
Roberts raised late hope when he bulldozed over seven minutes from time, but there was to be no late comeback as Dragons had to settle for a losing bonus point.
Timeline:
08m Davies p 0-3
21m Davies p 0-6
52m Davies p 0-9
55m Penalty t 7-9
60m Ecochard t Ecochard c 14-9
65m Ecochard p 17-9
67m Plana t 22-9
73m Roberts t Davies c 22-16
Perpignan: Lucas Dubois, Jean Bernard Pujol, Emmanuel Vaitulukina, Edward Sawaileau, Nino Seguela, Pato Fernandez, Martin Landajo; Charles Berguet, Seilala Lam, Akato Fakatika, Tristan Labouteley, Tex Cavubati, Nafi Ma'afu, Ewan Bertheau, Matthieu Ugena
Replacements: Victor Montgaillard, Sami Mavinga, Vatang Jincharadze, Andrei Mahu, Guillem Montagne, Tom Ecochard, Matteo Rodor, Baptiste Plana
Dragons: Jonah Holmes, Rio Dyer, Adam Warren (Knoyle 65), Aneurin Owen (Roberts 56), Jordan Olowofela (Babos 57), Sam Davies, Tavis Knoyle (Lewis 65); Aki Seiuli (Reynolds 56), Elliot Dee (Benjamin 34), Mesake Doge (Brown 48), Joe Davies, Will Rowlands (Carter 48), Harrison Keddie, Taine Basham, Aaron Wainwright (Baker 69)
Replacements: James Benjamin, Joshua Reynolds, Leon Brown, Ben Carter, Dan Baker, Dan Babos, Josh Lewis, Jamie Roberts
Referee: Christophe Ridley (England)
Attendance: 5,455