The 30-year-old Clyde skipper and former Scotland internationalist put pen to paper before Saturday's Scottish Cup tie at Bonnyrigg - and says he will be at the club for as long as they want him.
Goodwillie, who has scored 74 goals in his three years with the club, said: "This is my home and I'll be here for as long as Clyde want me.
"There are exciting times ahead for the club and I want to be part of that. We all want to see Clyde make the next step up to the Championship. I've also got a great relationship with the manager and that's a big part of being at a club.
"Being captain, it gives me the responsibility to lead and step up to the plate when things aren't going great for us. It's something that's new to me in my career but I try to take it in my stride and lead by example.
"Clyde have welcomed me with open arms and I hope the fans know that I appreciate that. Every time I score I try to celebrate with them. The way the fans are with me was a big part in my decision and I want to give them more good times ahead."
Clyde manager, Danny Lennon added: "We are delighted to have David committed to the club for three more seasons. He is such a high quality striker who brings the best out of the players around him.
"Our club and David have been a tremendous fit for each other and to continue that relationship is another indicator that special things are happening at Clyde. We look forward to seeing what we can all achieve together in the weeks and months ahead.
"I've also got to say a massive thank you to the Chairman and the Board for their support with all of our recent deals. They've worked very hard behind the scenes to get things over the line, which goes on unnoticed. It's been terrific, so a big round of applause is due to all of the directors for making it possible."