Prime Minister Pedro Sánchez informed regional leaders the mask measure would be put to ministers and signed into law before Christmas, despite it being dropped six months ago.
He also announced an acceleration of the vaccine booster programme with greater involvement from the military.
In Spain, the variant is believed to account for almost half of infections although the country has had a very successful vaccine rollout and avoided stricter measures compared with other European countries during the autumn months.
The Omicron variant is spreading across Europe fast and the World Health Organisation (WHO) said the region is once again at the epicentre of the pandemic.
In Spain, Omicron as spread in a matter of days, and the incidence rate has jumped to 695 cases per 100,000 people which is higher than a year ago.
Last Christmas some Spanish regions sealed off their borders which limited travel.
However, in parliament on Wednesday, the prime minister sought to reassure the public, saying: “Don’t worry, families will be able to celebrate.”
What’s happening in the rest of Europe?
The WHO’s Europe regional director, Hans Kluge, said the Omicron variant was already dominant in the UK, Denmark and Portugal and would likely become the continent’s main variant “in a couple of weeks”.
Sweden has reported a 30 per cent jump in Covid cases in the past week, and it has joined a growing number of EU countries requiring a negative test for travellers arriving there.
The measure will take effect from December 28. Finland announced a similar requirement on Tuesday night.
The head of Germany’s Covid crisis team, Maj Gen Carsten Breuer said the new government’s target of 30 million vaccinations by the end of December was close to being met, with 28 million doses already delivered.
“Only giving the booster, only increasing vaccine protection gives us any chance of at least keeping the Omicron wave at bay,” he told German media.
France began vaccinating children between the ages of five and 11 on Wednesday, but said boosters would not be offered to 12 to 15-year-olds for now.
Germany is among a number of European countries to introduce restrictions either side of the Christmas break.
From December 28 private gatherings will be limited to 10 people and nightclubs will shut.
Austria is to start closing restaurants at 10pm from Monday, December 27, and it has recommended that people celebrate the new year on a small scale.
The evening curfew is being used as a signal that it is “no time to celebrate”, according to Chief Medical Officer Katharina Reich.
While Portugal has ordered bars and nightclubs to shut from Sunday, in Finland bars and restaurants will have to close at 6pmfrom December 28 and have limited seating.