Ryan Brunt scored twice as Bristol Rovers beat Port Vale, who are now without a win in five matches.
Brunt, who had earlier put a free header wide, headed the hosts in front.
The former Stoke City trainee was then left unmarked again to meet Oliver Norburn's corner on the volley on the stroke of half-time.
Lee Hughes and Tom Pope had chances after the break for Vale, who drop to third in League Two, but Rovers secured their third successive home victory.
The hosts made their early intentions clear as Brunt went close and left-back Jim Paterson was allowed too much space but fired across the face of goal.
Sam Morsy shot wide for Vale, before Brunt put Rovers ahead when he headed in Norburn's corner.
Pope and Chris Birchall had chances for the visitors in quick succession and Brunt had another free header at the other end but failed to find the target.
Norburn's corners were creating havoc in the Vale area and he set up Brunt to volley the home side into a 2-0 half-time lead.
Vale keeper Chris Neal produced a magnificent save from Ellis Harrison after the break and Brunt missed the chance to complete his hat-trick when he fired over from close range.
Pope and substitute Hughes wasted opportunities to get the visitors back into the game, but substitute Ashley Vincent was carried off on a stretcher after falling awkwardly when attempting a shot at goal.
VIEW FROM THE DRESSING ROOM
Bristol Rovers striker Ryan Brunt told BBC Radio Bristol:
"I think we put a solid performance in but we needed to, to bounce back from Saturday.
"We all put our bodies on the line, blocked balls away - it was tough.
"I had two great balls from Norburn and no one was marking me and they went in, so it was pleasing.
"But it wasn't so pleasing to miss the third one. I was annoyed at myself as it's not every day you score a hat-trick."