Leyton Orient picked up their first points of the League One season at the expense of Swindon, who have now lost three games in six days.
The Robins also lost their 28-game unbeaten home run, which spanned all competitions, stretching back to 30 August 2011.
Michael Symes headed off target and Kevin Lisbie missed from six yards for the visitors.
But Lee Cook converted Leon McSweeney's cross at the back post to settle it.
That ended Swindon's club record run of 12 home matches without conceding, which had been in place since Matt Richards scored for Shrewsbury at the County Ground on 21 February.
VIEW FROM THE DRESSING ROOM
Swindon Town manager Paolo Di Canio told BBC Wiltshire:
"There wasn't passion in this game or desire. It was an empty performance.
"I have over-estimated some of my players. I hope my players analyse themselves.
"We have very good players but football is not just about technique, it's about the brain, mentally.
"I have to convince them that they have to work a lot."
Leyton Orient manager Russell Slade told BBC London 94.9:
"It was a really solid performance. It was worth waiting for.
"We created a couple of really good chances in the first half and we could have got in front, but it's really great that one of the new boys managed to slot the all-important goal in the net.
"All of a sudden, from a gloomy start to the season where we played three and lost three, we have now won a game.
"We have a game in hand and two home games to come, so the place is a little bit brighter."