Northampton kept pace with the Aviva Premiership play-off contingent after recording a nervy 25-23 win over Bath at Franklin's Gardens on Saturday.
Jamie Elliott's 72nd minute try snatched victory for Saints over a Bath side who'd shown great spirit to remain in the contest.
Bath headed into the match in sparkling Premiership form, while the Saints had been much more inconsistent in recent weeks.
A slow start to the game saw the two sides exchange penalties in the opening ten minutes. Tom Heathcote gave Bath the lead on four minutes, before Stephen Myler put the hosts back on level terms five minutes later.
The game's first try came on 20 minutes, when Elliott grabbed his first of the afternoon following good work from Myler, who was wide with the conversion.
Further penalties followed, with one from the boot of Myler enough to preserve the Saints' lead after Heathcote had applied the pressure with a quickfire brace.
Three penalty goals from Myler in the third quarter of the game made it 20-9, and Northampton appeared to be in cruise control.
But Bath had other ideas and sensationally took the lead with two converted tries in less than ten minutes.
Chief tormentor Heathcote's effort on the hour put Bath within touching distance, before Semesa Rokoguduni crashed over to give his side the lead.
But the double concession sprung the hosts into life, and Elliott's second try with less than ten minutes on the clock, unconverted, was enough to snatch the lead back.
And this time Saints were savvy enough to defend their narrow advantage until the final whistle, breaking Bath hearts while making it two wins from two for Northampton.
Tries: Elliott 2
Pen: Myler 5
Tries: Penalty, Rokoduguni
Con: Heathcote 2
Pen: Heathcote 3
Northampton: 15 Ben Foden, 14 James Wilson, 13 George Pisi, 12 Tom May, 11 Jamie Elliott, 10 Stephen Myler, 9 Lee Dickson,8 GJ van Velze, 7 Ben Nutley, 6 Phil Dowson (c), 5 Mark Sorenson, 4 Samu Manoa, 3 Tom Mercey, 2 Mike Haywood, 1 Soane Tomga'uiha.
Replacements: 16 Ross McMillan, 17 Alex Waller, 18 Paul Doran Jones, 19 James Craig, 20 Rhys Oakley, 21 Martin Roberts, 22 Ryan Lamb, 23 Dom Waldouck.
Bath: 15 Nick Abendanon, 14 Horacio Agulla, 13 Matt Banahan, 12 Kyle Eastmond, 11 Tom Biggs, 10 Tom Heathcote, 9 Peter Stringer, 8 Ben Skirving, 7 Mat Gilbert, 6 Carl Fearns, 5 Dave Attwood, 4 Dominic Day, 3 Anthony Perenise, 2 Rob Webber (c), 1 Charlie Beech.
Replacements: 16 Ross Batty, 17 Nathan Catt, 18 Kane Palma-Newport, 19 Will Spencer, 20 Nick Koster, 21 Michael Claassens, 22 Sam Vesty, 23 Semesa Rokoduguni.
Referee: Luke Pearce
Assistant referees: Robin Goodliffe, Ashley Rowden
Timekeeper: Nigel Yates
Television match official: Mike Hamlin