Goals from Sam Vokes and Danny Ings helped Burnley beat Millwall for their third Championship win in a row.
Vokes opened the scoring for the away side with a neat finish after some excellent play from Junior Stanislas.
Millwall's Martyn Woolford had his shot cleared off the line and Liam Trotter forced a save from Lee Grant as the home side looked to equalise.
But Ings's header following Kieran Trippier's cross came against the run of play for the victory.
Sean Dyche's men have continued their excellent start to the new year, winning all three league matches and keeping clean sheets in all those games.
But for Millwall, the defeat comes as a blow to their play-off hopes as they drop down to ninth in the table.
It was Vokes who was causing the problems, as he capitalised on a poor clearance from goalkeeper David Forde but Ross Wallace and Dean Marney got in each other's way as they looked to get on the end of their team-mate's cross.
It stirred the home side into life as Stanislas gifted possession to James Henry, only for the midfielder to shoot over.
Jason Shackell had to be more alert to clear Woolford's shot, and Grant made a smart save from Trotter's low shot.
But they were made to pay as Ings headed home to double the advantage, and Kenny Jackett's men struggled to create any more openings.
Millwall manager Kenny Jackett: "The result didn't please me. We didn't do enough to get something out of the game. Burnley showed more hunger and desire for the game than we did and that's disappointing.
"We didn't defend well, not with everything we've got, not for our life, which we do when we're playing well."
Burnley boss Sean Dyce: "I want us to win as many games as possible and who knows where that can take us? That's the challenge, quite simply.
"We're in the hunt right now but we can only take it one game at a time. It was a very good performance against Millwall and a very good win for many different reasons."
- 01 Forde
- 03 Shittu
- 16 Beevers
- 21 Smith
- 25 Smith
- 06 Trotter
- 14 Henry
- 18 Woolford (Tyson - 46' )
- 26 Abdou
- 20 Keogh
- 22 N'Guessan (Marquis - 66' )
- 33 M Taylor
- 02 Dunne
- 27 Osborne
- 04 Wright
- 08 Racon
- 09 Marquis
- 10 Tyson
- 01 Grant
- 02 Trippier
- 03 Lafferty
- 05 Shackell
- 15 Edgar
- 06 McCann
- 07 Wallace
- 08 Marney
- 11 Stanislas (Treacy - 70' )
- 09 Vokes Booked
- 14 Ings Booked (Paterson - 90' )
- 12 Jensen
- 16 O'Neill
- 34 Anderson
- 20 Bartley
- 22 Stock
- 26 Treacy
- 10 Paterson
Live Text Commentary
Full Time The final whistle is blown by the referee.90:00 +3:27 Substitution
Substitution Martin Paterson replaces Danny Ings.89:35
Ross Wallace is caught offside. David Forde restarts play with the free kick.88:36
Sam Vokes concedes a free kick for a foul on Mark Beevers. Free kick taken by James Henry.87:30
Shot from outside the area by Nathan Tyson misses to the left of the goal.85:29
Dean Marney concedes a free kick for a foul on John Marquis. Free kick taken by Liam Trotter.84:33
Keith Treacy takes a shot. Save made by David Forde.82:43
Danny Ings takes a shot. David Forde makes a save.81:54
John Marquis challenges Jason Shackell unfairly and gives away a free kick. Direct free kick taken by Lee Grant.81:23
Corner taken right-footed by James Henry, save by Lee Grant.80:10
Liam Trotter takes a shot. Clearance by Kieran Trippier.79:44 Booking
Booking Danny Ings is given a yellow card.79:31
Nathan Tyson fouled by Kieran Trippier, the ref awards a free kick. James Henry takes the free kick.77:29
James Henry takes the inswinging corner, Danny Lafferty manages to make a clearance.76:59 Booking
Booking Booking for Sam Vokes for unsporting behaviour.75:04
Adam Smith has an effort at goal from outside the penalty box missing to the wide left of the goal.74:30
James Henry decides to take a short corner.74:15
Andy Keogh takes a shot. Save made by Lee Grant.73:58
Liam Trotter takes a shot. Chris McCann gets a block in.71:57
Corner from left by-line taken by Ross Wallace.
Keith Treacy takes a shot. Save by David Forde.70:02
Shot from deep inside the area by Danny Ings clears the crossbar.69:22 Substitution
Substitution Keith Treacy is brought on as a substitute for Junior Stanislas.66:59
Sam Vokes has shot on goal from just outside the box which goes wide of the right-hand upright.65:38 Substitution
Substitution Dany N'Guessan goes off and John Marquis comes on.64:55
Adam Smith takes a shot. Jason Shackell gets a block in.64:26
Corner taken right-footed by James Henry from the left by-line, clearance made by Sam Vokes.63:53
Danny Ings takes a shot. Comfortable save by David Forde.61:07
Free kick awarded for an unfair challenge on Danny Ings by Nadjim Abdou. David Edgar restarts play with the free kick.59:53
The referee blows for offside. Free kick taken by Lee Grant.58:29
Assist by Kieran Trippier.58:29 Goal scored
Goal! - Danny Ings - Millwall 0 - 2 Burnley Danny Ings finds the net with a headed goal from close in. Millwall 0-2 Burnley.57:56
Junior Stanislas has an effort from just inside the box that misses to the left of the goal.57:44
Danny Lafferty takes a shot. Danny Shittu gets a block in.56:56
Sam Vokes takes a shot. Danny Shittu gets a block in.56:17
Danny Ings takes a shot. Blocked by Mark Beevers.53:18
Mark Beevers challenges Ross Wallace unfairly and gives away a free kick. Direct free kick taken by Ross Wallace.51:21
Andy Keogh produces a right-footed shot from deep inside the six-yard box which goes wide of the right-hand upright.48:44
Effort from the edge of the area by Ross Wallace goes wide of the left-hand upright.48:00
Shot by Junior Stanislas from outside the box goes over the target.47:14
Corner taken right-footed by James Henry from the right by-line, clearance by Chris McCann.45:02 Substitution
Substitution Martyn Woolford goes off and Nathan Tyson comes on.45:01
The second half kicks off.45:00 +2:02 Half time
Half Time The players leave the pitch at half time.45:00 +0:41
Foul by Sam Vokes on Danny Shittu, free kick awarded. Free kick taken by David Forde.41:35
Free kick awarded for a foul by Sam Vokes on Danny Shittu. Free kick taken by David Forde.40:00
Headed effort from deep inside the area by Sam Vokes misses to the left of the goal.38:13
Liam Trotter fouled by Ross Wallace, the ref awards a free kick. Free kick crossed right-footed by James Henry from left wing, Mark Beevers challenges Lee Grant unfairly and gives away a free kick. Direct free kick taken by Lee Grant.36:11
Free kick awarded for a foul by Nadjim Abdou on Danny Ings. Jason Shackell takes the direct free kick.35:36
Header by Sam Vokes from deep inside the penalty area misses to the left of the goal.33:53
Liam Trotter takes a shot. Lee Grant makes a save.32:59
Outswinging corner taken right-footed by James Henry from the right by-line, clearance made by Jason Shackell.27:39
Unfair challenge on Dean Marney by Dany N'Guessan results in a free kick. Lee Grant restarts play with the free kick.26:33
James Henry takes a shot from deep inside the box clearing the bar.24:14
Mark Beevers fouled by Sam Vokes, the ref awards a free kick. Direct free kick taken by David Forde.22:36
Effort on goal by Danny Ings from just inside the penalty box goes harmlessly over the target.20:28
Unfair challenge on David Edgar by Dany N'Guessan results in a free kick. Dean Marney restarts play with the free kick.18:03
Assist on the goal came from Junior Stanislas.18:03 Goal scored
Goal! - Sam Vokes - Millwall 0 - 1 Burnley Sam Vokes gets on the score sheet with a goal from inside the six-yard box low into the middle of the goal. Millwall 0-1 Burnley.17:27
Corner from the left by-line taken by Junior Stanislas, save by David Forde.16:20
Sam Vokes concedes a free kick for a foul on Danny Shittu. David Forde takes the direct free kick.15:55
The assistant referee signals for offside against Andy Keogh. Lee Grant takes the direct free kick.15:08
Danny Ings takes a shot. Comfortable save by David Forde.13:54
Junior Stanislas takes a shot. Save by David Forde.13:21
Mark Beevers gives away a free kick for an unfair challenge on Sam Vokes. Dean Marney restarts play with the free kick.12:20
Corner taken right-footed by James Henry from the left by-line, Lee Grant makes a save.9:50
Inswinging corner taken left-footed by Ross Wallace from the right by-line, save by David Forde.3:47
Andy Keogh concedes a free kick for a foul on Junior Stanislas. Free kick taken by Jason Shackell.1:49
Inswinging corner taken by Ross Wallace, Mark Beevers makes a clearance.0:23
Outswinging corner taken by James Henry from the right by-line, clearance made by Jason Shackell.0:00
The referee starts the match.
Live data and text provided by our data suppliers