Kwesi Appiah gave Reading an early lead and after Adam Federici saved a Darren Bent penalty, second half goals from Michael Hector and Gareth McCleary left Derby outside the top six.
Derby’s vastly superior goal difference meant they only needed a point to seal a top six finish but they went behind in only the second minute.
Appiah intercepted a pass from Will Hughes and sprinted away on the right before cutting inside Richard Keogh and firing low past Lee Grant.
It was the third game running Derby had conceded the first goal but they had fought back every time and they went close to an equaliser twice in the space of a minute.
First Bent turned just outside the box in the 20th minute to fire in a shot that Federici saved to his left and then Keogh’s header from a corner was cleared off the line by McCleary.
Derby had another chance in the 25th minute when Tom Ince whipped in a cross that went all the way across the area to Johnny Russell who shot just wide.
Head coach Steve McClaren made a change in the 32nd minute, replacing Stephen Warnock with Jess Lingard and switching to a 4-4-2 but Reading gave the home fans another scare in the 38th minute when Oliver Norwood’s 20-yard free kick was turned behind at full stretch by Grant.
But Derby had a chance in the stoppage time to level when Jordan Obita tangled with Johnny Russell on the right side of the area but Bent’s spot kick was saved by Federici diving to his right.
McClaren made another change at half-time, bringing on top scorer Chris Martin for Russell, but Reading almost scored again in the 47th minute when Grant could only parry a 20-yard drive from Tarique Fosu.
Reading had another chance in the 55th minute when Nathaniel Chalobah ran at the defence before setting up Fosu but he shot just wide of Grant’s left post from 12 yards.
The visitors increased their lead in the 72nd minute when Derby failed to deal with a corner and Hector pounced on the loose ball to beat Grant from eight yards.
Derby were close to pulling a goal back when Lingard put Bent in but he went wide after going past Federici and when he pulled the ball back, Martin was crowded out.
It was a huge moment because Reading broke away in the 85th minute and Jem Karacan was brought down by Grant for McCleary to cooly send the goalkeeper the wrong way with the penalty.