The 35-year-old German, who drives for the Aston Martin team, won his titles with Red Bull from 2010-13 and also spent six seasons with Ferrari.
He made the announcement ahead of this weekend’s Hungarian Grand Prix, the 13th round of the season and last race before the August break.
“I hereby announce my retirement from Formula One by the end of the 2022 season,” he said in a video statement explaining his reasons on a newly-created Instagram page.
“I love this sport. It has been central to my life since I can remember. But as much as there is life on track, there’s my life off track too. Being a racing driver has never been my sole identity.
“Next to racing I have grown a family and I love being around them. I have grown other interests outside Formula One,” he explained.
Vettel, who has become increasingly outspoken on a range of topics from the environment to LGBTQ+ rights, said Formula One was increasingly in conflict with his personal life.