Two goals in six minutes midway through the first half set Bristol Rovers up for a first win in eight games and piled more misery on free-falling Oxford as they won 3-0.
Scott Sinclair sent Simon Eastwood the wrong way from the penalty spot in the 22nd minute after Lamare Bogarde was tripped by Cameron Brannagan.
Then on 28 minutes Aaron Collins turned in Sinclair’s right-wing cross from close range at the near post.
Luca Hoole headed in James Connolly’s 75th-minute corner as Rovers made it three to wrap up a comfortable league double over a sorry-looking U’s.
Oxford have now picked up just one point from the last 24 and large sections of the home support called for manager Karl Robinson to go.
The home side did almost take the lead in the first minute when a corner came off a Rovers player’s head and struck the post.
Kyle Joseph also turned a Yanic Wildschut cross narrowly wide and Oxford were dealt a further blow when striker Sam Baldock hobbled off injured after 20 minutes.