The team announced the change one day after a 45-24 loss to the Atlanta Falcons extended the franchise's longest losing streak within the same season since 1977 to 10 games.
Morris went 17-31, including a 10-6 mark in 2010, when the Bucs (4-12) narrowly missed the playoffs.
"I have has a lot of respect and appreciation for the passion coach Morris gave to our football team, but this change is one we felt was necessary," general manager Mark Dominik said in a brief statement released by the team, which is owned by the Glazer family.
"We want to thank coach Morris for all his hard work and dedication as head coach," team co-chairman Joel Glazer said.
The Bucs scheduled a 3 p.m. news conference to discuss the change.
The 35-year-old Morris was hired in January 2009, replacing Jon Gruden after Tampa Bay lost the final four games of 2008 to miss the playoffs following a 9-3 start.
This year's collapse followed a promising 4-2 start that included wins over NFC South rivals New Orleans and Atlanta, which are both headed to the playoffs.
Morris began his stint as the NFL's youngest coach with a seven-game losing streak. It ended with a skid that rivaled some of the worst stretches in franchise history, in part because it came only a year after it looked like the Bucs might be headed in the right direction.