Warriors were sunk by a fusillade of late tries from Northampton in a match of two distinct halves which was shaped by miserable weather.
Warriors were ahead at half-time through three Duncan Weir penalties and still very much in contention with ten minutes to go.
But Northampton eventually managed to unleash their dangerous backs and ran in three tries in a six minutes purple patch during which time they secured the bonus point.
Warriors scored a late try through Francois Venter, on his seasonal debut, but it came too late to change the result or salvage a losing bonus point.
Heavy rain in the 24 hours before kick-off and again throughout the match made underfoot conditions difficult and the ball slippery but Warriors applied themselves diligently during the first half.
They worked themselves in attacking positions, patiently built the pressure and when Northampton went off-side, Weir applied the punishment.
With the wind at his back in the first half Weir struck twice in the first 11 minutes, the second from 40m out.
Chris Pennell took over the kicking duties when Warriors were awarded another penalty just inside their own half. Although Pennell struck the ball well and his kick had the distance, it went wide of the target.
Northampton pulled back three points midway through the half when James Grayson landed a straightforward penalty but Weir cancelled it out almost immediately with his third penalty three minutes later.
Warriors went down to 14 men for ten minutes when Ethan Waller was sin-binned against his former club – who included his brother Alex in the front row – and Grayson kicked the penalty.
But those were the only points Warriors conceded while Waller was off the pitch and they almost finished that period on level terms as Weir was narrowly off target with another long range penalty attempt.
Weir was also unable to land a penalty early in the second half which Warriors also started on the front foot.
But errors and poor discipline crept into the game and Northampton went into the lead for the first time with a contentious try after 46 minutes.
Grayson threaded a grubber kick through the advancing defence but Jono Kitto appeared to have beaten Northampton full-back George Furbank to the touchdown. Referee Jack Makepeace, who was taking charge of his Premiership match, went upstairs and the TMO ruled that Kitto had not grounded the ball which was still live when Tom Collins followed up and scored.
Grayson added the conversion but Warriors were still in the game until Taqele Naiyaravoro crashed over from a five metre scrum.
Warriors enjoyed a period of pressure which might have brought them back into the game but the ball was lost in contact after they had won a five metre lineout and Northampton rattled in three tries in a devastating six minute period which sealed the win.
Furbank scored two of them with wing Ollie Sleightholme racing through from the restart, after lock Lewis Bean had made ground, in between.
Warriors did have the consolation of scoring a try at the death when Sam Lewis popped up a pass for Venter with Lance drop kicking the conversion.
Warriors lost scrum-half Francois Hougaard with a shoulder injury early in the second half. Hougaard’s injury will be assessed by Warriors’ medical staff early next week.
Warriors | 15 Chris Pennell, 14 Perry Humphreys, 13 Ashley Beck (Venter 55), 12 Ryan Mills (C), 11 Melani Nanai, 10 Duncan Weir (Lance 55), 9 Francois Hougaard (Kitto 45), 1 Ethan Waller (Black 64), 2 Niall Annett, 3 Conor Carey (Palframan 57), 4 Anton Bresler, 5 Michael Fatialofa, 6 Ted Hill, 7 Sam Lewis (Black 32-40), 8 Cornell du Preez.
Replacements | 16 Joe Taufete’e, 17 Callum Black, 18 Richard Palframan, 19 Graham Kitchener, 20 GJ van Velze, 21 Jono Kitto, 22 Jono Lance, 23 Francois Venter.
5m | Weir pen 0-3
11m | Weir pen 0-6
23m | Grayson pen 3-6
26m | Weir pen 3-9
30m | Grayson pen 6-9
46m | Collins try 11-9
47m | Grayson con 13-9
54m | Naiyaravoro try 18-9
55m | Grayson con 20-9
70m | Furbank try 25-9
72m | Sleightholme try 30-9
76m | Furbank try 35-9
78m | Venter try 35-14
79m | Lance con 35-16