Stephen Myler kicked seven penalties as Northampton defeated Sale in a bruising contest at Franklin’s Gardens.
Sale were the more enterprising side, scoring the only try of the game, but ill-discipline which saw them lose two players to the sin-bin ultimately cost them the match.
A late drop goal from Ryan Lamb sealed the victory for Northampton, but Sale were full value for their bonus point.
Sale had the first opportunity for points but Nick Macleod was badly wide with his 45-metre penalty attempt.
The Saints had their first chance after nine minutes and Myler made no mistake with his simple penalty kick.
Sale soon responded with a penalty from Macleod after George Pisi was harshly adjudged to have impeded Mark Cueto as the visitors' wing chased after his own kick.
The two penalties were the only scores of the opening quarter as strong defences dominated play. The sides were evenly matched and there was little to enthuse the crowd apart from one enterprising run from Noah Cato, who turned defence into attack with a 40-metre run which saw him beat two defenders.
Despite the presence of Andrew Sheridan in the Sharks line-up, Northampton were the dominant force in the scrum and pushed the Sale eight off their own ball on three consecutive occasions, yet they still failed to threaten the try line.
On the half hour, Northampton regained the lead when Sale were penalised for dragging down a forward drive and Myler made no mistake with his 30-metre penalty.
Moments later, a poor clearance kick from Cueto gave Northampton the chance to counter-attack, Sale were again offended against and Myler was again successful, this time from close on 50 metres.
On the stroke of half-time, Sale were dealt two further blows. A crunching tackle by Courtney Lawes on Macleod saw the outside-half lose possession.
Northampton took advantage and when Sheridan was penalised for killing the ball, the prop was sin-binned and Myler kicked the resulting penalty to give Northampton a 12-3 interval lead.
In Sheridan's absence, Sale produced the best movement of the match. A fine pass from Macleod sent Johnny Leota through a huge gap and the movement ended with Dwayne Peel, who was hauled down narrowly short.
However Northampton were penalised for offside and Macleod kicked the second penalty.
Myler restored Northampton's nine-point lead with a 40-metre penalty but Sale stunned the home side with an excellent try from Cueto who outflanked the home defence for the score, which Macleod was unable to convert.
Sheridan returned but the Sharks lost the impressive Peel with a leg injury, although they received a boost when Myler missed a penalty kick from 45 metres.
The reprieve was short-lived as a poor pass from Cillian Willis put the Sharks under pressure. They were penalised and Myler kicked his sixth goal.
Sale lost a second man to the sin-bin when Sam Tuitupou was yellow-carded for a high tackle on Vasily Artemyev. The referee appeared to have let off the Sale captain with a warning but on seeing the TV screen replay he issued the yellow card.
Macleod kicked his third penalty to leave the Sharks trailing 18-14 with 15 minutes to go but that was soon nullified by another goal from Myler, who almost immediately left the field after taking a heavy blow to the head.
Myler's replacement, Lamb, then dropped a goal to seal a Saints win but Macleod's fourth penalty with the last kick of the match secured the deserved bonus point.