
This was Bristol City's second win in their their last 16 matches in Wales in all competitions
Swansea City suffered a first defeat of the season as they were beaten at home by Bristol City.
Andreas Weimann put the away side ahead after just 31 seconds, and they would have led by more were it not for Swans keeper Erwin Mulder.
He remained busy after the break as his lacklustre side searched in vain for an equaliser.
Swansea's Mike van der Hoorn had a late header cleared off the line, but Lee Johnson's visitors were worthy winners.
City's second successive away league victory, having previously failed to win on the road since December 2017, lifted them up to ninth in the Championship table, a place above Swansea.
While the Swans had been involved in a thrilling 2-2 draw with the division's early pace-setters Leeds on Tuesday, Bristol City cantered to a first league win of the season, triumphing 3-0 at Queens Park Rangers.
Two of the Robins' goals came from summer signing Weimann, and he took no time to add to his tally here, converting Niclas Eliasson's low left-wing cross.
The earliest strike in any EFL game this season took Weimann to five goals in five appearances for City, as many as he managed in 40 games for Derby last season.
The 27-year-old had opportunities to extend his new side's lead at Liberty Stadium, but he and his team-mates, including Eliasson and Callum O'Dowda, were denied by several fine saves from Mulder.
The goalkeeper was one of the few Swansea players to impress, as his outfield colleagues played with a distinct lack of pace and precision.
Although Swansea's unbeaten start to the season showed promise, their fans had been unhappy about the club's transfer activity, with several first-team players sold, but only a handful signed to leave manager Graham Potter with a rather thin squad.
Their lack of strength in depth was laid bare by a second-half substitution in which their only fit striker, Oli McBurnie, was replaced by a midfielder, Leroy Fer, even though they were chasing an equaliser.
Fer was one of a handful of Swansea players to try their luck with shots on goal in the closing stages, but their belated attacking efforts were too little, too late.
Swansea City manager Graham Potter said:
"It wasn't the best of starts, that's the first thing to say. I thought we recovered quite well for 20 or 30 minutes although we were not quite at our level.
"We were a little bit flat in the first half - it was one of those days when it wasn't quite happening for us.
"We huffed and puffed and got a bit better as the second half wore on, but the reality is that we didn't do enough to get anything from the game. Credit to Bristol City, they were the better team."
Bristol City head coach Lee Johnson told BBC Radio Bristol:
"It's a fantastic three points, particularly on the back of a tough week. I think the players deserve a huge amount of credit for the work rate they put in.
"The players, to a man, didn't make any mistakes. We've got quality and we've got players that are being nurtured and improving all the time.
"We'll grow into this season, we'll get stronger as we go. Every result like that buoys the squad."