Match ends, Birmingham City 3, Derby County 3.
Birmingham City 3-3 Derby County
On-loan Manchester United striker Federico Macheda's late goal rescued a draw for Birmingham City on his debut.
Rams midfielder Craig Bryson had a penalty saved before Brian Howard headed the home side into the lead.
Derby equalised a minute later when Patrick Bamford angled home, and went 3-1 up through Chris Martin's deflected shot and a Craig Forsyth strike.
Chris Burke's curler pulled one back for Blues before Macheda struck at close range from an injury-time corner.
The draw left Blues still without a home league win since 1 October, while Derby failed to capitalise on promotion rivals QPR and Burnley drawing 3-3.
The Rams remain fourth in the table, four points behind second-placed QPR.
The visitors had the better of the first half and were awarded a 38th-minute penalty when Will Hughes was tripped by Tyler Blackett.
However, Bryson's low spot-kick was saved comfortably by Blues keeper Darren Randolph.
Birmingham went in front early in the second half, when Howard flicked home a header from Paul Caddis's right-wing cross, his first goal for the club.
Yet less than a minute later it was 1-1. Bamford smashed a shot against the woodwork before reacting quickest to get to fire home despite Will Packwood's efforts to block the shot.
Derby went ahead when Martin's shot was deflected in, before Forsyth capitalised on some slack defending to slot home the third after good work by Jamie Ward.
Macheda should have done better from close range before fellow sub Burke made things interesting with a 78th-minute strike, cutting inside to bend the ball beyond Lee Grant.
The equaliser then came more than three minutes into injury time as, also on his Blues debut, midfielder Emyr Huws flicked fellow on-loan Manchester City Albert Rusnak's corner onto the post and Macheda gleefully smashed in the loose ball.
Macheda, who came on as a 60th-minute substitute for Lee Novak, was one of five Blues debutants.
Fellow Man Utd youngsters Tyler Blackett and Tom Thorpe both started the game, along with Man City's Welsh loan man Huws.
But 21-year-old Thorpe lasted just 14 minutes on his Football League debut before being stretchered off with an ankle injury, to be replaced by another deadline day signing Aaron Martin.
Birmingham City manager Lee Clark:
"The desire and never-say-die attitude was there for everyone to see. We could have buckled at 3-1 down against quality opposition but we kept going and got a terrific ending to the game.
"The lack of experience is scary at times but they're taking it in their stride and showing a mental courage to keep fighting and fighting.
"Federico didn't meet his team-mates until 12.30pm today so that's probably why he started on the bench. But he made a huge contribution and looked bright."
Derby County boss Steve McClaren:
"We should have won it easily and instead we ended up drawing, so that's a disappointment. It's a harsh lesson for our team.
"At 3-1 we lost our discipline and didn't control the game. We just went for it and a game we could have won 4-1, 5-1 or 6-1 ended up a 3-3 draw.
"The second goal we conceded was an absolute disgrace. It was a terrible goal. It's cost us. We've missed a great opportunity in a game we should have won, but that's football."
- 24AdeyemiSubstituted forC Burkeat 69'minutes
- 5ThorpeSubstituted forMartinat 14'minutes
- 12NovakSubstituted forMachedaat 60'minutes
- 10HowardBooked at 36mins
- 7C Burke
- 33WisdomBooked at 57mins
- 14EustaceBooked at 44mins
- 19HughesSubstituted forHendrickat 75'minutes
- 9MartinSubstituted forSammonat 90+1'minutes
- 35BamfordBooked at 64minsSubstituted forRussellat 78'minutesBooked at 90mins
- Craig Pawson
- Shots on Target
Second Half ends, Birmingham City 3, Derby County 3.
Johnny Russell (Derby County) is shown the yellow card.
Jeff Hendrick (Derby County) wins a free kick on the right wing.
Foul by Brian Howard (Birmingham City).
Goal! Birmingham City 3, Derby County 3. Federico Macheda (Birmingham City) left footed shot from very close range to the centre of the goal.
Emyr Huws (Birmingham City) hits the left post with a right footed shot from the centre of the box. Assisted by Albert Rusnák with a cross following a corner.
Corner, Birmingham City. Conceded by Andre Wisdom.
Substitution, Derby County. Conor Sammon replaces Chris Martin.
Offside, Derby County. Jamie Ward tries a through ball, but Craig Bryson is caught offside.
Attempt missed. Jamie Ward (Derby County) right footed shot from long range on the left is high and wide to the right.
John Eustace (Derby County) wins a free kick in the defensive half.
Foul by Federico Macheda (Birmingham City).
Attempt blocked. Jeff Hendrick (Derby County) right footed shot from outside the box is blocked. Assisted by Craig Forsyth.
Offside, Birmingham City. Peter Løvenkrands tries a through ball, but Federico Macheda is caught offside.
Attempt saved. Johnny Russell (Derby County) left footed shot from the left side of the box is saved in the centre of the goal. Assisted by Chris Martin.
Jake Buxton (Derby County) wins a free kick in the defensive half.
Foul by Federico Macheda (Birmingham City).
Attempt missed. Jeff Hendrick (Derby County) right footed shot from the centre of the box is close, but misses to the left. Assisted by Johnny Russell.
Corner, Birmingham City. Conceded by Craig Forsyth.
Substitution, Derby County. Johnny Russell replaces Patrick Bamford.
Goal! Birmingham City 2, Derby County 3. Chris Burke (Birmingham City) left footed shot from the right side of the box to the bottom left corner.
Attempt saved. Federico Macheda (Birmingham City) right footed shot from the right side of the box is saved in the centre of the goal. Assisted by Aaron Martin with a through ball.
Substitution, Derby County. Jeff Hendrick replaces Will Hughes.
Goal! Birmingham City 1, Derby County 3. Craig Forsyth (Derby County) right footed shot from the centre of the box to the bottom right corner. Assisted by Jamie Ward.
Attempt missed. Brian Howard (Birmingham City) left footed shot from outside the box misses to the right.
Foul by John Eustace (Derby County).
Peter Løvenkrands (Birmingham City) wins a free kick in the attacking half.
Substitution, Birmingham City. Chris Burke replaces Tom Adeyemi.
Richard Keogh (Derby County) wins a free kick in the defensive half.
Dangerous play by Federico Macheda (Birmingham City).
Patrick Bamford (Derby County) wins a free kick in the attacking half.
Foul by Tom Adeyemi (Birmingham City).
Attempt missed. Aaron Martin (Birmingham City) header from the centre of the box is high and wide to the right. Assisted by Brian Howard with a cross following a set piece situation.
Patrick Bamford (Derby County) is shown the yellow card.
Foul by Patrick Bamford (Derby County).
Tyler Blackett (Birmingham City) wins a free kick on the left wing.
Attempt saved. Craig Bryson (Derby County) right footed shot from the left side of the box is saved in the centre of the goal. Assisted by Chris Martin with a headed pass.
Substitution, Birmingham City. Federico Macheda replaces Lee Novak.
Goal! Birmingham City 1, Derby County 2. Chris Martin (Derby County) right footed shot from outside the box to the top left corner.