Paul Benson scored a late winner for Swindon against 10-man Macclesfield in a match that also saw Robins manager Paolo Di Canio sent to the stands.
Luke Rooney, who was making his debut, crossed for Benson to head home for his first league goal for Swindon.
Di Canio watched that goal from the stands after protesting when his side were not awarded a free-kick.
Macclesfield's Nat Brown was sent off for shoving Aden Flint but Matt Hamshaw wasted a chance late on to equalise.
VIEWS FROM THE DRESSING ROOM
Swindon manager Paolo di Canio told BBC Wiltshire:
"This is the game you have to win if you want to go up. In the second half we were on top of the game, with better desire. We deserved to win.
Di Canio on being sent to the stands:
"People have to understand my character. I speak with my body language, I didn't abuse anybody.
"If they want to send me off every game, no problem. I will win this league anyway because my team is a strong team."
Macclesfield manager Gary Simpson told BBC Radio Manchester:
"We've had our backs against the wall in terrible conditions and we did well trying to play.
"We've just not worked the keeper enough today and to be honest they're a good team and made us pay.
"Nat Brown says he hasn't done anything, then we were told he stamped on him. We haven't seen it yet so we won't pass comment until we've seen the DVD."