The 35-year-old, who joined the Potters from Tottenham for £10m in 2011, has scored 49 goals in 186 appearances.
His previous deal was due to expire at the end of this season, with the new contract coming after Crouch scored twice in his past two league starts.
"Still got a good few things to achieve yet," tweeted Crouch.
Stoke chief executive Tony Scholes said: "Peter still has a great deal to offer us as a player.
"We are pleased he has decided to extend his stay with us."
Stoke striker Peter Crouch says he still has things to achieve at the club, after agreeing a contract extension until the summer of 2018.