The Tigers made four changes to the side beaten at Ipswich a week earlier. With Callum Burton having joined Chesterfield on loan, Harrison Foulkes took over in goal. Lewis Ritson returned from injury to replace Jacob Greaves and Callum Smith and Ahmed Salam came in for Max Sheaf and Elliot Holmes.
Millwall had a chance in the opening minute but Foulkes easily gathered Isaac Olaofe’s header.
Scoring chances were at a premium but the visitors took the lead in the 19th minute. Rob Harvey raced away down the right and crossed for Mason Saunders-Henry to volley past Foulkes from close range.
The only other chance of note in the first period also came the way of the visitors but Lazar Stojsavljevic headed wide from a Joe Wicks corner.
Millwall went close to doubling their lead in the opening moments of the second period but Saunders-Henry’s left foot strike from just outside the box was tipped over by Foulkes. However, the Tigers were unable to clear Wicks’ corner and Stojsavljevic converted from close range in the 53rd minute.
The home side were back in the game just a minute later when Jordan Hickey floated a cross in from the left side of the box and Lewis-Potter headed past Lions keeper Ryan Sandford at the back post.
The Tigers made their first change with Tyler Hamilton replacing Salam and they went close to a leveller with a great move that saw Hamilton crossing for Tom Powell to head narrowly wide.
Jon Beale then made a double change with Greaves and Holmes replacing Ritson and Hickey and his side pressed for an equaliser in the closing 20 minutes but the Lions defence held firm.
It was not until stoppage time that the Tigers created their best chance to draw level. Smith pulled the ball back from the left and although Lewis-Potter’s effort was blocked Matty Jacob looked certain to score from the rebound until a last ditch block from the Millwall defence ensured that the three points were on their way to South London.
Hull City: Harrison Foulkes, Will Taylor, Matty Jacob, Jordan Hickey (Elliot Holmes 66), Lewis Ritson (Jacob Greaves 66), Josh Thacker, Callum Smith, Billy Chadwick, Tom Powell, Keane Lewis-Potter, Ahmed Salam (Tyler Hamilton 56).
Subs Not Used: Harvey Cartwright, Ben Adamson.
Millwall: Ryan Sandford, Danny McNamara, Michel Parker, Jethro Hanson, Jesse Debrah, Lazar Stojsavljevic, Rob Harvey, Joe Wicks, Isaac Olaofe, Lewis White (Josh Davison 46, George Alexander 90), Mason Saunders-Henry.
Subs Not Used: Joe Wright, Billy Mitchell, Reuben Duncan.