|Leicester (14) 34|
|Tries: O'Connor, T Youngs, Slater Cons: Williams, Burns Pens: Williams 5|
|Bath (7) 14|
|Tries: Rokoduguni, Dunn Cons: Ford 2|
Owen Williams kicked 17 points as Leicester Tigers inflicted a first defeat of the season on Bath.
After an early Williams penalty, Telusa Veainu's break from deep eventually set up Brendon O'Connor to cross.
Semesa Rokoduguni caught George Ford's up-and-under superbly and broke free to get Bath back in the game.
Tom Youngs and Ed Slater both dotted down from mauls for Tigers and Williams slotted five penalties, with Tom Dunn's try Bath's only points after the break.
Welsh fly-half Williams was named at inside-centre but Freddie Burns dropped to the bench as he was feeling unwell and Mathew Tait came into the starting XV, while Bath's England centre Jonathan Joseph also missed out late on, with Dan Bowden replacing him.
In contrast to Williams' impressive display, England fly-half George Ford missed two kicks and threw a misplaced pass in the second half that led to a Tigers penalty.
Bath, who finished ninth last season, had started the campaign impressively under new director of rugby Todd Blackadder but they struggled to find any rhythm at Welford Road.
Richard Cockerill's Leicester have now won three of their opening four games and sit fourth - a place and a point behind the Blue, Black and Whites.
Leicester director of rugby Richard Cockerill: "The performance was pretty good. It was a proper Leicester performance, which is the first time in four weeks.
"We did not let Bath into the game and we never looked like losing. It was a really important game for us because it puts us right back in the mix.
"We had not played anywhere near how we would like. Today was a step in the right direction."
Bath director of rugby Todd Blackadder: "I've no complaints about the result. It was a really good game, a really good test.
"It was an arm wrestle, probably what we needed. I am not going to complain about the result because we fronted up.
"It's just that our skill execution wasn't what it should have been at times. We probably tried too hard and it cost us."
Leicester: Veainu; Thompstone, Betham, Tait, Pietersen; O Williams, B Youngs; Ayerza, T Youngs (capt), Cole, Fitzgerald, Kitchener, M Williams, O'Connor, McCaffrey.
Replacements: McGuigan, Genge, Bateman, Slater, Evans, Harrison, Burns, Roberts.
Bath: T Homer; Rokoduguni,, Banahan, Bowden, Watson; Ford (capt), Fotuali'i; Catt, Batty, Thomas, Ewels, Attwood, Garvey, Ellis, Houston.
Replacements: Dunn, Obano, Lahiff, Stooke, Mercer, W Homer, Brew, Williams.
For the latest rugby union news follow @bbcrugbyunion on Twitter.