Speaking at his end-of-year news conference, which lasted over three hours, he blamed “outside factors” for the currency hitting an all-time low.
But he admitted Russia’s central bank could have acted more swiftly.
Russia is on the verge of recession due to falling oil prices and sanctions over its role in the Ukraine crisis.
However, the president denied pursuing an “aggressive” foreign policy and accused the US and EU of conspiring to weaken Russia.
Mr Putin accepted Russia had failed to diversify its economy for the past two decades and relied too heavily on its oil and gas exports.
But he insisted the nation’s currency reserves were sufficient to keep the economy stable, saying the central bank should not “burn” its $419bn reserves.
“I don’t believe you can call it a crisis – you can call it what you like,” he told a packed conference hall.
If the economic problems persisted, he said, the government would have to “reduce social spending and future growth”.
But he added: “Our economy will get out of this crisis. How long? Maybe two years, but after that, growth is inevitable.”
Although the rouble strengthened on Thursday morning, it has taken a battering in recent days.
The currency’s collapse came after a drastic 6.5 percentage point rise in Russian interest rates to 17%.
Earlier this week, there were reports of Russians flocking to the shops to spend their cash before prices shoot back up. Many were said to be buying cars and home appliances.
President Putin gave a bravura performance, speaking frankly without notes, and accepting questions even from Russian and foreign journalists known for their hostility to him.
He wanted to calm fears about the fall of the rouble, and about pensions and living standards. At worst, he said, the problem would last two years.
I asked him about Western fears that he was stoking up a new Cold War. Now the Russian currency was in trouble, I said, he might need Western help.
So I asked if he would take this opportunity to say he didn’t want a Cold War and would work to solve the Ukraine problem. He answered at length – but it was noticeable he didn’t take advantage of the opportunity to calm things down.
Mr Putin estimated that Western sanctions, put in place after Russia annexed Crimea from Ukraine in March, had accounted for roughly 25-30% of the rouble’s troubles.
On Ukraine, President Putin said he was hopeful the conflict could be solved through peace talks.
He urged the Ukrainian government and pro-Russian rebels in the east of the country to conduct a quick “all for all” prisoner swap before Christmas.
Ukraine and the West accuse Mr Putin of sending Russian troops to fight with the rebels, but the Kremlin denies the allegations.
Responding to a question from the BBC’s John Simpson, Mr Putin said Russia was “not aggressive or encroaching on anyone’s interests – just protecting our own.”
He also accused the US of hypocrisy, saying that Russia has just two military bases outside its borders while there are American bases “all over the world”.
Meanwhile, the EU approved further sanctions against Russia on Thursday. They target investment in Crimea and oil and gas exploration in the Black Sea and come into force on Saturday.
“We are doing this because the EU has said the annexation [of Crimea] is illegal and what we’re doing is part of implementation of non-recognition of this policy by Russia,” EU spokeswoman Maja Kocijancic told reporters.
Later on Thursday, European leaders will meet in Brussels for their last summit of 2014 to discuss the Ukraine crisis and relations with Russia.
US President Barack Obama is also expected to sign legislation this week authorising new economic sanctions on Russia.