Match ends, Middlesbrough 1, Queens Park Rangers 3.
Bobby Zamora and Ravel Morrison scored injury-time goals to earn Queens Park Rangers a dramatic victory at Middlesbrough.
George Friend put the home side in front when he stabbed in from eight yards, before Yossi Benayoun equalised.
With a draw likely, Boro goalkeeper Dimi Konstantopoulos missed a backpass in the fourth minute of stoppage time, which allowed Zamora to score.
Two minutes later Morrison ran on to Zamora's flick to score a third.
The win, just QPR's third in 10 matches, keeps Harry Redknapp's team 10 points behind second-placed Burnley, in fourth. Mid-table Middlesbrough have won once in 11 matches.
The hosts moved ahead when Friend drifted in from the left and collected a ricochet before turning the ball in.
But Redknapp's side pulled level in first-half added time when Niko Kranjcar's blocked shot fell for Benayoun to score his first goal since May 2012.
Junior Hoilett's powerful effort was held by Konstantopoulos before the Middlesbrough goalkeeper's error allowed Zamora to stroll through to tap in in the 94th minute.
On-loan West Ham midfielder Morrison then scored his fifth goal in seven Rangers appearances to keep his team's slim automatic promotion hopes alive.
Middlesbrough manager Aitor Karanka:
"I don't believe it. I can explain what happened but I can't understand it. It has happened again.
"It was a game we did not deserve to lose. We had a good chance to win at one end and then suddenly we have lost the game.
"There was not much between the teams and we had chances but every week it is the same story. I just wish one game it would be us scoring in the last minute."
QPR assistant manager Kevin Bond:
"It certainly was a late, late show.
"It seemed both teams had accepted a draw then in the last minute I really don't know where those two goals came from.
"It was an amazing bobble to be fair to the keeper and it was a real gift for us."
- 3FriendBooked at 72mins
- 24ChalobahBooked at 66mins
- 6ButterfieldSubstituted forTomlinat 63'minutes
- 29KamaraBooked at 75minsSubstituted forLedesmaat 88'minutes
- 17BartonBooked at 76mins
- 35BenayounSubstituted forO'Neilat 76'minutesBooked at 90mins
- 10CarrollBooked at 23mins
- 12KeaneSubstituted forZamoraat 64'minutes
- 4MorrisonBooked at 75mins
- 19KranjcarBooked at 32minsSubstituted forHoilettat 61'minutes
- Keith Hill
- Shots on Target
Second Half ends, Middlesbrough 1, Queens Park Rangers 3.
Goal! Middlesbrough 1, Queens Park Rangers 3. Ravel Morrison (Queens Park Rangers) left footed shot from the left side of the box to the bottom right corner. Assisted by Bobby Zamora with a headed pass.
Goal! Middlesbrough 1, Queens Park Rangers 2. Bobby Zamora (Queens Park Rangers) left footed shot from very close range to the centre of the goal.
Attempt missed. George Friend (Middlesbrough) left footed shot from outside the box misses to the right. Assisted by Albert Adomah.
Corner, Middlesbrough. Conceded by Yun Suk-Young.
Gary O'Neil (Queens Park Rangers) is shown the yellow card for a bad foul.
Foul by Gary O'Neil (Queens Park Rangers).
Emmanuel Jorge Ledesma (Middlesbrough) wins a free kick on the left wing.
Attempt missed. Ravel Morrison (Queens Park Rangers) right footed shot from outside the box is close, but misses to the left. Assisted by Nedum Onuoha.
Substitution, Middlesbrough. Emmanuel Jorge Ledesma replaces Kei Kamara.
Corner, Middlesbrough. Conceded by Tom Carroll.
Attempt saved. Junior Hoilett (Queens Park Rangers) right footed shot from outside the box is saved in the bottom left corner. Assisted by Yun Suk-Young.
Offside, Middlesbrough. Nathaniel Chalobah tries a through ball, but George Friend is caught offside.
Attempt saved. Albert Adomah (Middlesbrough) left footed shot from outside the box is saved in the centre of the goal. Assisted by Lee Tomlin.
Corner, Queens Park Rangers. Conceded by József Varga.
Dean Whitehead (Middlesbrough) wins a free kick in the defensive half.
Foul by Bobby Zamora (Queens Park Rangers).
Substitution, Queens Park Rangers. Gary O'Neil replaces Yossi Benayoun.
Joey Barton (Queens Park Rangers) is shown the yellow card.