Mr Romney, 67, said he had decided it was “best to give other leaders in the party the opportunity to become our next nominee”.
His statement comes weeks after a surprise announcement saying he was considering another bid.
The decision not to run frees up donors to support other Republican candidates.
Former Florida Governor Jeb Bush, New Jersey Governor Chris Christie and Senator Rand Paul are among those who are considering a White House bid.
On the Democratic side, the presumed front-runner is former Secretary of State Hillary Clinton, although she has not made any announcement about campaigning.
Mrs Clinton previously ran for president in 2008 but lost the Democratic nomination to Mr Obama.
Mr Romney’s campaign raised more than $1bn (£666m) in the 2012 election, when he unsuccessfully challenged President Obama.
He also lost the 2008 Republican nomination to Senator John McCain.
In a statement made during a phone call to donors, Mr Romney said he was “convinced that we could win the nomination”, but added that “one of our next generation of Republican leaders… may well emerge as being better able to defeat the Democrat nominee”.
He said it was a tough decision for him and his wife, Ann, “but we believe it is for the best of the party and the nation”.
Mr Romney reportedly discovered after floating a potential run three weeks ago that several of his key fundraisers had decided to support Mr Bush, according to the Associated Press news agency.
Jeb Bush – the son of a former president and brother of another – announced in December he was “exploring” a run.
After Mr Romney’s announcement Mr Bush tweeted “Mitt is a patriot and I join many in hoping his days of serving our nation and our party are not over.”