The former England international, who moved to the Britannia Stadium for £10million six years ago, will now remain with the Potters until at least the summer of 2019.
Crouch, 36, has scored three times for Stoke in the Premier League this season taking his overall tally to 58 for Mark Hughes' side.
The forward scored the winner for Stoke in their 2-1 victory against Southampton in September, before he was on target earlier this month to salvage a late point against Leicester. He also scored the equaliser for Stoke in their 1-1 draw at West Brom back in August.
Crouch has made 440 appearances in the Premier League during a career which has included spells at Tottenham, Portsmouth, Southampton and Liverpool. He has scored 106 goals during that time.
"Peter has been with Stoke longer than he has been with any other club which I think speaks volumes for how he views us and how we view him," said Stoke boss Hughes.
"He still has so much to offer us. He may be 36 but he continues to have a major impact on games, as he has proved on numerous occasions this season."
Stoke's chief executive Tony Scholes added: "The discussions with Peter and his representatives were very straightforward; Peter is happy here and made no secret of his desire to stay with the club. We're delighted with the news.
"There were one or two raised eyebrows when we signed Peter from Tottenham because it was a huge outlay for us as a club at the time but he has now signed his fourth contract and has been a vital figure for us in the Premier League."