The midfielder will spend the rest of the season at The Den. Woods, who is 26 years old, worked under the now-Millwall boss Gary Rowett at Stoke has now reunited with him in London.
The Staffordshire-born midfielder has struggled to hit the ground running since joining the Potters from Brentford in August 2018 and has allowed to leave the Bet365 Stadium.
After joining Millwall Woods has said, as per their website: “I’m absolutely delighted to be here. It’s been a frustrating period for me over the last few months, but I’m pleased to get the deal done and can’t wait to get going. The lads and the club are doing a great job in the League at the moment, and hopefully I can come and add to that.”
He added: “I know Gary and the staff really well and he played a big part in getting me here. I’ve played against a lot of the lads before as well, so hopefully it will be easy for me to settle in and get going as quickly as possible.”
Woods started his career with a brief spell as a youngster at Walsall before joining Shrewsbury Town in 2009. He went on to make 103 appearances for the Shrews and helped them gain promotion from League Two in 2015.
Brentford swooped to sign him in September 2015 for a fee of around £1 million and he had an impressive three seasons at Griffin Park. Stoke then paid £6.5 million to sign him but his time there has not worked out.