James Hook kicked all 15 points as Gloucester came from behind to beat Bath and inflict a sixth successive loss on their West Country rivals.
Bath, who reached last season’s Premiership final but now sit ninth after 10 matches, led 8-0 after Dominic Day’s try and Tom Homer’s penalty.
Homer landed another kick after two Hook penalties to keep them 11-6 ahead.
But, in the wind and rain, three more kicks from Hook secured Gloucester’s first win at The Rec since 2012.
Relive Gloucester’s win over Bath
Victory for the Cherry and Whites, which lifted them to fifth in the table, also ended Bath’s run of five straight wins in the West Country derby, the most consecutive successes either side have ever managed.
Mike Ford’s team spent the first 13 minutes camped inside Gloucester’s half and led 8-0 after Day eventually forced his way over behind a driving maul, but threw away a significant lead for the second week running, having squandered a 13-0 advantage to lose to Saracens last Saturday.
The Blue, Black and Whites have now won just two of their past 11 games in all competitions and have already lost seven Premiership matches this season – more than in the entire campaign in 2014-15.
They are 14 points off the top four and, with six points also separating them and sixth-placed Wasps, may even face a tough task to again qualify for the European Champions Cup.
But Gloucester, whose spirited second-half display was rewarded by Wales fly-half Hook’s accuracy from the tee, continue their revival under director of rugby David Humphreys and have opened up a seven-point advantage over their local rivals.
Bath head coach Mike Ford:
“We didn’t have much of a kicking game, to be honest. There were times near the end we should have held on to the ball and tried to build pressure. But we carried on kicking poorly.
“Dan (Bowden) had a great debut at 12 last week but we missed an out-and-out number 10 tonight. The forwards did what they had to do but it was an ugly game, wasn’t it? Not the best I’ve ever watched.
“Once they got in front it was difficult in that wind and rain. When we did get field position we kicked poorly or offloaded and the ball went to ground.
“Tactically we couldn’t do anything else, with the weather and the personnel we had available.”
Gloucester director of rugby David Humphreys:
“It was an important toss to win. We knew there was wind and rain coming in, so then it was a case of trying to get into the lead.
“Our set-piece was good but our half-backs managed the game and didn’t panic, just kept Bath in their half.
“It’s hard to appreciate watching on TV or even sitting in the stand how difficult it was out there to play.”
Bath: Homer; Rokoduguni, Banahan, Eastmond, Agulla; Bowden, Cook; Lahiff, Webber, Wilson, Hooper (capt), Day, Garvey, Louw, Houston.
Replacements: Dunn, Catt, Thomas, Ewels, Ellis, Faosiliva, Matawalu, Clark.
Gloucester: Burns; Sharples, Meakes, Twelvetrees (capt), McColl; Hook, Heinz; McAllister, Hibbard, Afoa, Savage, Galarza, Kalamafoni, Rowan, Morgan.
Replacements: Dawidiuk, Wood, Thomas, Stooke, Kvesic, Braley, Atkinson, Moriarty.
For the latest rugby union news follow @bbcrugbyunion on Twitter.