Bath made it two wins from two at the start of the Aviva Premiership season as Wasps were made to pay for more costly errors at the Rec.
A first-half try from Matt Banahan had put the hosts 10-6 up at the break, and further scores from wings Tom Biggs and Kyle Eastmond, the latter's first since joining the club, sealed the win, with Olly Barkley adding 15 points with the boot.
Two Nicky Robinson penalties had kept Wasps in it and Tom Varndell and Christian Wade crossed in the second half but, as with their surrender of a 27-point lead against Quins last week, it was missed tackles and unforced errors that did for Dai Young's side.
Barkley booted the hosts into a fifth-minute lead with a penalty after Marco Wentzel infringed at a line-out, before Bath spurned two excellent attacking opportunities in quick succession thanks to a forward pass from Barkley and a knock-on from Dan Hipkiss.
Having received a let-off Wasps responded as Robinson levelled the scores from close range, having failed with an attempt from distance moments earlier.
Wasps may have racked up 40 points in a losing effort last week, but it was Bath who looked far more potent with ball in hand.
But a lack if accuracy dogged their play in the Wasps 22, with good hard running from Eastmond and Nick Abendanon wasted by another spillage.
However, the first try did arrive after 25 minutes as smart hands from Hipkiss freed marauding centre partner Banahan to fend off Elliot Daly's weak tackle and cross, with Barkley adding the conversion.
Having spent the majority of the opening half on the back foot, Wasps went so close to a try of their own just before half-time. A scything counter from deep by scrum-half Joe Simpson appeared certain to end in a score as Robinson freed flying winger Wade, only for Barkley to pull off a superb cover tackle.
Wasps did at least get some reward for their endeavour as Robinson landed his second penalty to send them into the changing rooms just four points in arrears.
Barkley quickly wiped out that score with a penalty of his own three minutes into the second half after the home pack destroyed the Wasps scrum.
And the visitors' task soon became a whole lot tougher as Biggs capitalised on a terrible mistake from Robinson.
The fly-half found himself caught in two minds as he looked to counter and his woeful pass ricocheted off Tom Palmer to allow Biggs to kick through and beat Wade to the touchdown.
Barkley knocked over the extras for a 20-6 lead but Wasps hit back instantly in unlikely fashion.
Little appeared to be on when lock Wentzel received the ball on the left edge of the Bath 22, but the South African's chip was gathered by Varndell who raced in.
Bath should have put the game to bed entering the final quarter as Barkley's delayed pass sent Carl Fearns tearing toward the line, but Biggs could not find Michael Claassens with the final pass.
Eastmond made up for the miss as the the former St Helens man twisted and jinked his way through at least half a dozen feeble Wasps tackles to get over for his first try since switching to the 15-a-side code. Wade responded by running in from 60 metres after Joe Launchbury had made the most of a turnover to give Wasps hope.
But the visitors looked like missing out on a losing bonus point as Barkley added a late three-pointer, only for Robinson to reply with his own penalty with the last kick of the game.
Bath: Abendanon, Eastmond, Hipkiss, Banahan, Biggs, Barkley, Claassens, Catt, Mears, Wilson, Hooper, Day, Taylor, Fearns, Skirving. Replacements: Cuthbert for Abendanon (73), Devoto for Banahan (72), James for Catt (52), Batty for Mears (71), Palma-Newport for Wilson (71), Attwood for Hooper (60), Ovens for Fearns (63). Not Used: McMillan.
Scorers: Tries – Banahan, Biggs, Eastmond. Cons – Barkley 3. Pens – Barkley 3.
Wasps: Southwell, Varndell, Daly, C. Bell, Wade, Robinson, Simpson, Payne, Lindsay, Staibano, Palmer, Wentzel, Haskell, Poff, Vunipola, Mayor. Replacements: Mayor for C. Bell (22), McIntyre for Payne (71), T. Thomas for Lindsay (55), Taulafo for Staibano (71), Launchbury for Palmer (55), Johnson for Vunipola (60), T. Bell for Mayor (66).
Scorers: Tries – Varndell, Wade. Cons – Robinson 2. Pens – Robinson 3.
Referee: Tim Wrigglesworth (RFU).