Spain's AEMET agency says a low pressure system will make its way across northern Spain on Christmas Eve, bringing rain to Galicia, Asturias, Cantabria, the Basque Country and Catalonia.
By Christmas Day, all of mainland Spain and the Balearic Islands will experience heavy rainfall and strong gusts of wind.
There is also likely to be snow at altitudes above 800 metres.
The good weather has returned to the Canary Islands after last week’s wild storms left the archipelago windswept and flooded.
The islands’ forecast for Christmas Eve is partially cloudy and predominantly sunny for Christmas Day.
AEMET has forecast that the weather will improve across all of Spain by Boxing Day.