The announcement by Powell, a retired four-star US Army general who served in George W. Bush's administration, is the latest from a long line of Republican former and current officials and politicians who have announced they are not voting for their party's nominee Donald Trump.
"General Powell said at a meeting of the Long Island Association that he would be voting for Hillary Clinton," his assistant Peggy Cifrino told AFP.
In a June email that was hacked and published last month, Powell had called Trump an "international pariah" and a "national disgrace," following months of provocative and demeaning rhetoric by Trump against minorities, immigrants, women and others.
In an another stinging indictment of the brash Republican billionaire, in an August email Powell blasted as "racist" the so-called birther movement propelled by Trump that falsely claims President Barack Obama was not born in the United States.
Powell made headlines in September when it emerged that he had counseled Clinton on how best to keep official emails out of public view, when she took office at the State Department.
The first African American to hold the position of top US diplomat, Powell endorsed Democrat Obama for president in 2008 and 2012.