Darren Moore’s men took advantage of some slack Swindon defending after the break to record their third straight league win.
Defender-turned-midfielder Reece James scored twice to take his tally for the season to five.
Diallang Jaiyesimi replied from the penalty spot with the last kick of the game but it could not detract from another good night’s work from Doncaster.
Rovers ended the first period on top and came close to breaking the deadlock when Danny Amos’s effort from range was kept out by Matej Kovar.
Swindon should have taken the lead on the half hour when Jonny Smith skied his shot.
Doncaster started the second half with Moore’s words ringing in their ears and it took them less than two minutes to break the deadlock as James fired home from inside the box.
Joe Lumley made a good save to keep out Jaiyesimi’s close-range effort and shortly after Rovers sealed the points when James was sent clear by Ben Whiteman and finished with aplomb.
Jaiyesimi scored from the spot after being fouled by Brad Halliday but it proved to be only a consolation.
Doncaster Rovers: Lumley, Halliday, Anderson, Butler, Amos, Whiteman, Smith (John 73), Coppinger (Richards 60), James, Sims (Taylor 60), John-Jules (Okenabirhie 78). Unused substitutes: Jones, Hasani, Lokilo.
Swindon: Kovar, Odimayo, Baudry, Fryers, Grounds, Conroy (T Smith 79), M Smith, Payne, J Smith, Hope (Stevens 59), Jaiyesimi. Unused substitutes: Fryer, Caddis, Pitman, Curran, Grant.
Referee: P Howard (London).
Support The Yorkshire Post and become a subscriber today. Your subscription will help us to continue to bring quality news to the people of Yorkshire. In return, you’ll see fewer ads on site, get free access to our app and receive exclusive members-only offers. Click HERE to subscribe.