BURNLEY suffered a first defeat under new manager Sean Dyche, as Ipswich recorded their first home win since March.
Daryl Murphy put the home side in front in the 50th minute, albeit in controversial fashion as Clarets goalkeeper Lee Grant was fouled in the process.
Burnley equalised courtesy of an own goal for Danny Higginbotham, who headed in Junior Stanislas' cross.
But DJ Campbell turned in an 87th minute winner to continue Burnley's Portman Road hoodoo.
It has proved to be a bogey ground for Burnley over the years – with the Clarets winning only once here.
But with the Tractor Boys losing their previous five home games there was reason for Dyche's men to be optimistic of a change in fortunes.
Burnley had Grant to thank for going into the half-time break goalless after pulling off a spectacular save to keep out Campbell's volley.
Murphy headed Ipswich in front five minutes into the second half, despite a collision with Grant in which the keeper went to ground.
The Clarets surrounded referee Mark Brown in protest, but the goal was given.
Dyche brought on Stanislas and Sam Vokes 15 minutes later, and the duo looked to combine for the equaliser.
Stanislas sent in a cross from the left in search of Vokes, but instead Higginbotham turned it past his own goalkeeper.
The Clarets couldn't see the game out though, and with three minutes of normal time to go were hit on the break, with Campbell volleying a right wing cross past Grant with the outside of his right boot.