Powell set a world record of 9.77sec in June 2005 before lowering the mark to 9.74, a record that stood until his compatriot Usain Bolt smashed it in May 2008.
"Chapter 40 & retired, a new phase of life," Powell wrote on Twitter.
"As I say good bye to the sport, I'd like to say thank you to all my loyal fans that stood by me my entire career and even now."
While Bolt then dominated the sport and Powell never won either an Olympic or world championships individual gold, he ran under 10sec some 97 times.
Powell made the decision just three day after celebrating his 40th birthday.
He ran a final official 100m in May 2021 in Clermont, Florida in 10.07sec but with a favourable wind.