The Saints were forced into defence for much of the game and were lucky to keep the score down after they were reduced to only 13 men at one stage with flanker Darren Fox and prop Chris Budgen both sent to the sin bin.
Bath took advantage of a handling error by Saints fullback Nick Beal, who couldn't hang onto a pass by scrum-half Mark Robinson, when flanker Michael Lipman scooped up the loose ball and sent winger Lee Best on his way for the first try of the game.
Fly-half Ollie Barkley failed with the conversion attempt and then struck the crossbar with a penalty attempt shortly afterwards, but he made amends 10 minutes before the end of the half with a brilliant solo try that saw him beat three Saints defenders. Unfortunately Barkley could not extend the lead with the conversion, having seemingly left his kicking boots at home.
Saints fly-half Shane Drahm cut the lead to seven with a penalty before the break, but Barkley replied with a penalty of his own and Bath managed to keep the lead comfortable at half-time.
Drahm and Barkley traded penalties early in the second-half before Fox was handed a yellow card for slowing the ball down, although Bath were unable to make use of the extra man. But when Budgen was sent from the field soon afterwards Barkley extended the lead to 19-6 through a penalty with only three minutes remaining.
The hosts added the final nail in Saints' coffin when substitute flanker Scott Gray went over for a try after collecting scrum-half Martyn Wood's kick ahead on the stroke of full-time.
For Bath:Tries: Best, Barkley, GrayPens: Barkley 3
For NorthamptonPens: Drahm 2