Manuel Benson had put Burnley in front with his first goal since joining the club from Royal Antwerp
Jay Rodriguez scored a second-half winner as Burnley edged out Bristol City to make it seven Championship games unbeaten.
Rodriguez headed in a cross from Johann Berg Gudmundsson for his fifth goal of the season midway through the half to secure only a second home win of the campaign for the Clarets, as they moved up to fourth.
For the Robins, Nahki Wells had cancelled out Manuel Benson's early strike.
But they suffered a second loss on the road in four days as they fell to eighth in the table.
- Relive Saturday's EFL action
The Clarets only needed four minutes to go in front when Benson, a summer arrival from Royal Antwerp, drilled in his first goal for Burnley from just inside the area.
But Bristol City are the joint lead scorers in the Championship, netting in every game, and they kept that record going by finding an equaliser.
Kal Naismith's corner was not cleared and the ball reached Wells, who scored against one of his old clubs from barely a yard out for his fourth goal in as many games.
There was a good flow to the match as Robins goalkeeper Dan Bentley denied Ian Maatsen at one end and Aro Muric kept out Rob Atkinson and Wells at the other.
It has been a summer of change for Vincent Kompany since he took over at Burnley in the summer but it was two of the Clarets' old guard who made the vital contribution.
Substitute Gudmundsson delivered the cross and there was Rodriguez with a pinpoint header into the far corner.
Joe Williams almost had a second equaliser for Nigel Pearson's men, only for another save from Muric as Burnley narrowed the gap on second-placed Norwich City to three points.
- Line-upsMatch StatsLive Text
Line-upsBurnley
Formation 4-2-3-1
49Muric14Roberts5Harwood-Bellis36Beyer29Maatsen24Cullen4Cork17Manuel8Brownhill23Tella9RodrÃguez
- 49Muric14Roberts5Harwood-Bellis36Beyer29MaatsenSubstituted forda Silvaat 88'minutes24Cullen4CorkBooked at 89mins17ManuelSubstituted forGudmundssonat 53'minutes8Brownhill23TellaSubstituted forZarouryat 66'minutes9RodrÃguezSubstituted forDervisogluat 88'minutes
Substitutes
- 6Egan-Riley7Gudmundsson15Peacock-Farrell19Zaroury22da Silva26Bastien30Dervisoglu
Bristol City
Formation 3-4-1-2
1Bentley26Vyner4Naismith5Atkinson17Sykes6James7Scott3Dasilva14Weimann21Wells15Conway
- 1Bentley26Vyner4Naismith5AtkinsonSubstituted forMartinat 79'minutes17Sykes6JamesSubstituted forMassengoat 76'minutes7ScottBooked at 32minsSubstituted forWilliamsat 45'minutes3Dasilva14Weimann21Wells15ConwaySubstituted forSemenyoat 45'minutes
Substitutes
- 8Williams9Martin10King11Semenyo12O'Leary19Tanner30Massengo
Referee:Oliver LangfordMatch StatsHome TeamBurnleyAway TeamBristol CityPossessionHome72%Away28%ShotsHome13Away9Shots on TargetHome6Away5CornersHome8Away5FoulsHome10Away6Live TextPost update
Match ends, Burnley 2, Bristol City 1.
90'+5'Full Time
Second Half ends, Burnley 2, Bristol City 1.
90'+4'Post update
Attempt missed. Nahki Wells (Bristol City) right footed shot from outside the box misses to the right. Assisted by Jay Dasilva.
90'+2'Post update
Foul by Connor Roberts (Burnley).
90'+2'Post update
Nahki Wells (Bristol City) wins a free kick on the left wing.
90'Post update
Foul by Halil Dervisoglu (Burnley).
90'Post update
Kal Naismith (Bristol City) wins a free kick in the defensive half.
89'Booking
Jack Cork (Burnley) is shown the yellow card for a bad foul.
88'Post update
Foul by Jack Cork (Burnley).
88'Post update
Nahki Wells (Bristol City) wins a free kick in the defensive half.
88'Substitution
Substitution, Burnley. Halil Dervisoglu replaces Jay RodrÃguez.
88'Substitution
Substitution, Burnley. Vitinho replaces Ian Maatsen.
87'Post update
Corner, Burnley. Conceded by Daniel Bentley.
86'Post update
Attempt saved. Anass Zaroury (Burnley) left footed shot from the left side of the box is saved in the bottom left corner. Assisted by Jack Cork.
83'Post update
Attempt blocked. Antoine Semenyo (Bristol City) left footed shot from outside the box is blocked. Assisted by Nahki Wells.
81'Post update
Attempt missed. Jay RodrÃguez (Burnley) right footed shot from the right side of the box is close, but misses to the left. Assisted by Josh Brownhill.
81'Post update
Ian Maatsen (Burnley) wins a free kick on the left wing.
81'Post update
Foul by Antoine Semenyo (Bristol City).
80'Post update
Attempt saved. Josh Brownhill (Burnley) left footed shot from outside the box is saved in the top centre of the goal. Assisted by Connor Roberts.
80'Post update
Offside, Burnley. Josh Cullen tries a through ball, but Anass Zaroury is caught offside.
Page 1 of 5rewindpreviousNavigate to the next pagenextNavigate to the last pageforward
Source: bbc.com