President George W Bush has admitted U.S. economic growth is slowing but in his final State of the Union address urged Americans to have long-term confidence, BBC World News reports.
The president acknowledged that the US was facing "uncertainty".
However, a $150bn stimulus plan agreed by Congress and the White House would help, he said, and must be passed soon.
Mr Bush also said his troop "surge" in Iraq was succeeding after a long and costly war and that al-Qaeda was "on the run" and would be defeated.
He called on Iran's leaders to cease their "support for terror abroad", although he said the US respected the country's people.