ANDY FISHER 8
Generally good with the ball - a couple of minor mishaps aside - and was good in the air too. Made a really good save to deny Jed Wallace in the second-half to help the Swans keep their 16th Championship clean sheet of the season.
BEN CABANGO 8
Another very good performance from the Welshman whose ability on the ball is well and truly showing right now. An animal in the air and made several clearances too.
KYLE NAUGHTON - Star Man 9
The vast majority of his work was done with the ball at his feet. Time and time again, the defender helped his side bravely play out from the back. He was simply outstanding.
JOEL LATIBEAUDIERE 8
Continuing at left centre-back following a stellar display at Cardiff, Latibeaudiere read play well on numerous occasions to make his fair share of interceptions and clearances. The 22-year-old exuded confidence. Fine effort.
CYRUS CHRISTIE 7
Made a hash of a three-on-one situation in the second-half, but, that aside, Christie was solid at right wing-back. Put in a dangerous delivery that led to Joel Piroe's winner.
JAY FULTON 8
On his first start in two months, the Scot's influence grew as the first-half wore on. Defensively sound, making a number of clearances to ease the pressure on Fisher's goal. Some great moments going forward too. Subbed.
MATT GRIMES 8
Typically brave in possession, ending the game with a 95% pass accuracy. Played some really dangerous passes too. Another really good display from the captain.
RYAN MANNING 7
Back from suspension, the Irishman - operating at wing-back - got into some dangerous areas but most of his best work came defensively as he made a number of interceptions and clearances.
JOEL PIROE 8
Dropped deep throughout in a bid to help Swansea build from back to front and always looked dangerous when he got into good positions in the final third. Sublime finish to take his tally for the season to 18. Subbed.
HANNES WOLF 7
In an advanced role, Wolf created a glorious chance for Michael Obafemi early on. Some decent moments in behind Obafemi while he remained useful defensively, making a number of timely tackles. Withdrawn on the hour mark.
MICHAEL OBAFEMI 8
Denied by Bartosz Bialkowski in the first-half but always had the Millwall defence worried. Had numerous efforts at goal but couldn't bulge the net this time, although it was not through a lack of trying. Top shift.
Who was Swansea's star man from the Millwall game? Have your say in the comments section below.
Subs
Olivier Ntcham (for Wolf) - Really helped to take the sting out of things after coming on. Some good moments to get Swansea into good areas. 7
Korey Smith (for Fulton) - As above in many ways. Sensible and calm. 7
Jamie Paterson (for Piroe) - A couple of good moments in possession to help keep Millwall away from the Swansea goal. 7