Stephen Myler scored 15 points as Northampton handed Saracens only their third loss of the season, but it came at a cost with Courtney Lawes suffering a potentially serious leg injury.
Lawes limped off late in the first half with an ankle problem and will now be a question mark for Saturday's Six Nations clash with Wales.
Northampton scored the only try of the first half, with Myler the man to cross, but two penalties from Ben Spencer, and another from the impressive Alex Goode gave Saracens a 9-7 half-time lead.
Lee Dickson went over early in the second half for his fifth try in four games, to give Saints the lead once more, with the sides trading penalties thereafter as Saracens failed to come back.
Northampton dominated possession early on but made too many mistakes to be able to turn that into points.
A big hit from Brad Barritt forced a knock-on from George Pisi and after he released Jamie George, Saints conceded a penalty which Spencer converted.
They led 3-0 after 17 minutes and stretched that advantage with a second penalty of the afternoon after a good break from Goode.
However just after the half-hour they lost Spencer to the sin-bin for hands in the ruck, but almost immediately Northampton were dealt a blow as Lawes was forced off with a leg injury.
Still, Saints took advantage of their extra man and when Tom Wood charged down Goode's kick, he was able to feed Myler for the try. The fly-half converted his own score to put the visitors in front for the first time.
The lead was short-lived though, Goode slotting a penalty that came from a scrum to make it 9-7 to the league leaders at the break.
With a man advantage still, Northampton started the second half strongly, earning a penalty deep in Saracens territory.
Spencer returned but could do nothing as Dickson burrowed over from close range after a series of drives from the forwards. Myler converted from out wide to make it 14-9.
It could have got even better but Ben Foden knocked on over the line when diving acrobatically, with Michael Rhodes getting back to make a fantastic tackle.
The hosts needed a response and they got one when Luther Burrell came in from the side at a ruck, allowing Spencer to cut the deficit to two points.
Saracens had dominated at scrum-time, but the introduction of Paul Hill appeared to turn the tide, earning three points for Myler to push Northampton 17-12 up.
Dickson was pinged for offside at a scrum with ten minutes remaining, allowing Goode to knock over his second penalty of the afternoon to get Saracens back into it.
However Jacques Burger was penalised soon after at a ruck which allowed Myler to push the lead back to five points and give the leaders some breathing space.
And when Chris Wyles was caught in his own territory, Northampton earned another penalty, allowing the visitors to see out the win.