The scoreline flattered a Sale side who needed two second-half tries to break the spirit of Bristol, and although the hosts moved into third place there are still serious question marks over their recent performances.
The Australian Graeme Bond and the wing Steve Hanley got those tries, the latter after a chip and a chase, and with a drop goal for Bond those were crucial scores after they began the second period with a mere 10-6 lead. A try for the England A scrum-half Peter Richards gave Bristol hope, but it was not enough.
Sale's head coach Jim Mallinder is well aware that his side are struggling. On paper this fixture should have been easy but that was not the case.
Bristol arrived without their half-backs Felipe Contepomi and Agustin Pichot, on international duty with Argentina, but in the early exchanges it was not easy to tell which side was bottom and which was hoping to climb into second place.
And for all the effort, chances were few. Bristol's Shane Drahm, playing at fly-half rather than full-back, missed an early drop-goal and a penalty. It was the 38th minute before he opened his side's account with a penalty, but sooon afterwards he was again on target to keep them in contention at the interval.
Jason Robinson was picked at centre to give Sale more of a cutting edge, and he was twice involved in the build-up to their first half try. After a period of pressure the ball was worked left, where Mark Cueto had switched wings, and he glided through and crossed for a try.
Bristol had made Garath Archer captain despite his appalling disciplinary record. Those with reservations had their doubts confirmed when he was soon sent to the sin bin for careless footwork at a ruck, though a Nick Walshe penalty was all the hosts had to show for the one-man advantage.
Sale: Going; Cueto, Robinson, Bond, Hanley; Walshe, Redpath (capt); Yates (Thorp, 59), Titterrell, Turner (Stewart, 59), Jones, Schofield, Anglesea, Pinkerton, Davies.
Tries : Cueto, Bond, Hanley. Cons: Walshe 2. Pens: Walshe 2. Drop: Bond.
Bristol: Best; Rees, Higgins, Gibson, Christophers; Drahm, Richards; Bergamaschi (Nelson, 74), Johnstone, Crompton, Archer (capt), Brown, Short, Lipman (C Morgan, 26), Oakley.
Try: Richards. Pens : Drahm 3. Sin bin : Archer 23.
Referee : R Maybank (Kent).