The 26 year old right-hander will make $12.5 million this season, along with a $500,000 signing bonus.
Porcello was traded by the Tigers to Boston in December in exchange for Yoenis Cespedes with one year left on his existing contract. With Monday's extension, the Red Sox have secured Porcello's services through the 2019 season.
On Monday, Porcello characterized his team as one that "expects" to win a World Series in 2015.
"The main topic of conversation was winning a World Series in 2015. What struck me was that it wasn’t discussed like it was a goal, but rather an expectation," Porcello wrote of the team's internal discussions in spring training.
- Will Green