The 49ers won the toss to start the game and elected to defer, giving the Buccaneers the ball to start the game. The drive was stalled behind a third-down stop with one-yard to go by San Francisco, forcing the three-and-out. Bryan Anger's punt pinned the 49ers inside their own 10 to start the drive before running back Matt Breida took off for 33 yards on the first play of the series. San Francisco stalled on their next set of downs, punting the ball right back to the Bucs.
The next series saw the Bucs get their ground game involved and after a 42-yard completion down the sideline to wide receiver Mike Evans, the Bucs were inside the red zone. The drive resulted in a six-yard touchdown pass to tight end Cameron Brate in the back of the end zone. The point after was good by kicker Cairo Santos and the Bucs jumped out to a 7-0 lead with 8:21 left in the first quarter.
Quarterback Jameis Winston was sacked at the eight-yard-line by San Francisco defensive tackle DeForest Buckner as the Bucs got the ball back. It backed the Bucs up and into a third-and-18 situation that they wouldn't be able to overcome, giving the ball right back to San Francisco.
The Bucs were able to force another punt behind a lot of pressure to 49ers quarterback Nick Mullens. On the return, San Francisco was called for an ineligible man downfield, causing a re-kick that went out of bounds at the 49ers' 13-yard line.
Tampa Bay's next drive stalled around midfield, forcing another punt. The 49ers next possession would end up proving fruitful this time. A nine-play, 79 yard drive was capped off by a 19-yard pass from quarterback Nick Mullens to wide receiver Dante Pettis for the score. San Francisco would fail to pull even on a missed extra point, preserving the Bucs' lead at 7-6 halfway through the second quarter.
The Bucs moved down the field to just outside the red zone on their next possession. They were stopped at the 23-yard line but kicker Cairo Santos was able to convert on the 41-yard field goal to extend the Bucs lead 10-6 with just over three minutes left in the first half.
San Francisco was moving well down the field before a big sack of quarterback Nick Mullens started a chain reaction that forced a 49ers punt after a third-and-30 situation. The catalyst was the sack for defensive end Jason Pierre-Paul, which pushed him to 10.5 on the season, becoming the first double-digit sack player for the Buccaneers since Simeon Rice in 2005. Defensive tackle Gerald McCoy followed up with a sack on his own on the next play, giving him 4.5 sacks in his last four games. The Buccaneers got the ball back with 1:43 left in the half.
The drive resulted in a 39-yard field goal from kicker Cairo Santos that extended the Bucs' lead to 13-6 as time expired in the first half.
The 49ers got the ball to start the second half and instead of a three-and-out that the Bucs initially had them pinned to, a holding call on Tampa Bay gave them a fresh set of downs. San Francisco got down to the half-yard line before the Buccaneers' defense put up a huge effort in denying the 49ers the end zone. Tampa Bay. would draw a false start on fourth-and-goal, backing the San Francisco up. They then elected to kick the field goal instead, closing the gap to 13-9 with 11:05 left in the third quarter.
The Buccaneers moved easily down the field behind another big catch by wide receiver Mike Evans on their next drive and were inside the red zone in no time. A couple of solid runs by Barber go the Bucs a first-and-goal at the two-yard-line.
After getting past midfield, the 49ers came up empty as rookie defensive tackle Vita Vea knocked the 49ers Jeff Wilson back for a loss of three. It set up a third-and-13 that San Francisco failed to convert, punting the ball back to the Bucs with 4:10 to go in the third quarter.
The Bucs marched down the field and were still outside the red zone when quarterback Jameis Winston rolled out to his right and throwing across his body, connected with a wide open Adam Humphries in the middle of the field. Humphries turned up field and fought his way over the goal line for his fourth touchdown of the season. The 28-yard score extended the Bucs lead to 27-9 at the start of the fourth quarter.
Tampa Bay's defense did their part on the next drive. Rookie defensive tackle and 2018 first-round pick Vita Vea registered his second sack of the season on quarterback Nick Mullens, dropping him for a seven-yard loss on second-down and 19 following a San Francisco penalty. The Bucs offense got the ball back before they knew it, taking over at the 12:05 mark of the fourth quarter.
Sticking with the run, the first play saw running back Jacquizz Rodgers burst through the middle for an immediate first down. However, the Bucs would be forced to punt for the first time in the second half on the drive.
Just as the 49ers were threatening, Mullens took a shot to the end zone where it was picked off by cornerback Ryan Smith for the Bucs' first takeaway since Week 3 against the Pittsburgh Steelers. It was also the first interception of Smith's career. The Bucs bled as much clock as they could and forced San Francisco to burn through all their timeouts. They surrendered the ball with just over three minutes to play in the game.
The Bucs sealed the game on a late interception from safety Isaiah Johnson to leave the final score 27-9 in favor of the Bucs.
View photos of the Bucs' Week 12 matchup against the San Francisco 49ers.