Saints continued their 100 per cent start to 2017 as they battled to secure a 32-26 bonus-point win against Bristol at Franklin’s Gardens.
Tries from Louis Picamoles, Mike Haywood, JJ Hanrahan and Tom Wood, allied with nine points from Stephen Myler and a drop goal from Harry Mallinder, got the job done for Jim Mallinder’s men.
But they were pushed all the way by improving Bristol, who led on a couple of occasions and scored a try-of-the-season contender through impressive full-back Jason Woodward.
Bristol had been on a four-match winning streak, but that was halted by a determined Saints display, led by the brilliance of the club’s back row forwards.
Picamoles, Wood, Teimana Harrison and replacement Jamie Gibson all played sizeable roles in the success.
And it provided Saints with the five-point win they needed to go up to fifth in the Aviva Premiership, one point ahead of rivals Leicester Tigers, who travel to Wasps on Sunday.
Saints had gone into the game on the back of victories against Sale Sharks and Gloucester, but Bristol were also buoyant and threatened early on.
Saints had to be alert to stop Tom Varndell claiming a Premiership record, with the wing, who only needed one try to become the league’s all-time top scorer, shut down as he flew towards the corner.
Bristol missed another chance to go ahead soon after as Woodward fluffed a penalty attempt, and Saints responded with a dazzling George North surge from inside his own half.
North’s charge set up a sniff of an opportunity for Jamie Elliott, but he was just beaten to a clever grubber kick and injured himself in the process, with Juan Pablo Estelles called into action after just 12 minutes.
But Saints weren’t put out of their stride and after the home side proved too heavy to handle at a scrum five metres out, Picamoles picked up the loose ball to score.
Myler converted to make it 7-0, but Bristol immediately reduced the arrears with a Woodward penalty.
And it wasn’t too long before Bristol were ahead as they found gaps in the Saints defence and No.8 Mitch Eadie powered over the line.
Woodward’s conversion made it 10-7 to the away side and they soon won a fortunate penalty, giving Woodward a chance to add another three points, which he did, with aplomb.
But Saints started knocking on the door and after Alex Waller was stopped just short, the next move saw Haywood grab his team’s second score of the afternoon.
Myler converted to put Mallinder’s men 14-13 up at the break and they started the second half in fine style as a superb charge from Picamoles set up Wood for a run to the line.
Myler added the extras to make it an eight-point lead but the gap was cut to five by a Woodward penalty.
And the Bristol full-back was soon putting his team back in front as he kicked ahead, Varndell gathered and Woodward latched onto an inside pass to race in for a fine score.
He converted to make it 23-21, but Saints issued an immediate riposte as Hanrahan charged down Will Cliff’s attempted clearance and gathered to score.
Myler missed the conversion and Bristol were soon level as Woodward landed a penalty, with the home fans’ frustration with referee Andrew Jackson increasing.
It was an enthralling encounter that was going to the wire and Saints started to step up their aggression levels, led by their indefatigable back row forwards.
They finally managed to win a penalty in the Bristol half and Myler slotted it to make it 29-26 with eight minutes remaining.
The nerves were eased further by Harry Mallinder, who made the most of some relentless Saints pressure by stepping back into the pocket and landing a drop goal.
And Saints saw out the closing stages of the match to secure another vital league victory.
Saints: Foden; Elliott (Estelles 12), Burrell, Hanrahan (Mallinder 66), North; Myler, Groom (Dickson 70); A Waller (E Waller 68), Haywood, Brookes (Hill 61); Lawes, Day (Craig 68); Wood (c), Harrison, Picamoles (Gibson 66).
Bristol: Woodward; Wallace, Palamo (Arscott 70), Hurrell, Varndell; Jarvis (Searle 61), Cliff (Williams 61); Traynor (Bevington 61), Hawkins (Crumpton 57), Ford-Robinson (Cortes 61); Tuohy, Glynn (Sorenson 57); Fenton-Wells (Lam 68), Robinson (c), Eadie.
Referee: Andrew Jackson