Skip to content
Voykit

When to go · Spain

Spain in December

Good month. Christmas lights and markets; the 6–8 December long weekend (puente) fills hotels. The Christmas lottery on 22 December stops the country for a morning.

Key facts

Verdict
Good
Crowds
Medium
Spain
Prices
Medium
Spain

Verdict

GoodVoykit month rating for Spain

Christmas lights and markets; the 6–8 December long weekend (puente) fills hotels. The Christmas lottery on 22 December stops the country for a morning.

Is another month better than December?

December is rated good. These months rate higher:

Weather in December

  • Madrid and the central plateau · Madrid, Toledo, Segovia, Salamanca, Cuencacool

    Dry, sunny and continental: frost on winter nights, 35–40 °C (95–104 °F) in July and August.

  • Andalusia · Seville, Córdoba, Granada, Málaga, Cádizfine

    Seville and Córdoba are Europe's hottest cities in summer (40–45 °C (104–113 °F)). Winters are mild and sunny on the coast; Granada is colder.

  • Mediterranean coast and Balearics · Barcelona, Valencia, Alicante, Mallorca, Ibizacool

    Beach season June–October; humid in August. Autumn DANA storms can bring flash floods.

  • Green north · San Sebastián, Bilbao, Santander, Asturias, Galiciarainy

    Atlantic weather: green because it rains. The best escape from summer heat; pack a rain jacket in any month.

  • Canary Islands · Tenerife, Gran Canaria, Lanzarote, Fuerteventura, La Palmabest weather

    Mild all year (20–28 °C (68–82 °F)); winter is high season. Calima dust storms blow in from the Sahara a few times a year.

  • Andalusia: Seville and the Guadalquivir valley · Seville, Córdoba, Jaéncool

    Inland heat: July averages about 36 °C (97 °F) by day and August nights stay near 21 °C (70 °F); rain is rare June–September.

  • Andalusia: Granada and the Sierra Nevada · Granada, Alpujarras, ski resortscool

    Higher and cooler than Seville; Sierra Nevada skiing is usually December–April, Europe's southernmost resort.

  • Andalusia: Costa del Sol and Costa de la Luz · Málaga, Marbella, Cádiz, Tarifafine

    Mild winters, sea warm enough to swim roughly June–October; Tarifa is windy year-round, which is the point.

  • Balearic Islands: Balearic Islands · all four islandscool

    Mediterranean: mild winters, dry hot summers. Sea swimming is comfortable roughly May–October; August is the hottest and busiest month.

  • Barcelona Province: Coastal Barcelona · Barcelona province coastcool

    Mild winters, hot dry summers; peak heat July–August

  • Canary Islands: Gran Canaria (coast) · south coast resortsfine

    Averages about 21 °C (70 °F) in January and 27 °C (81 °F) in August; wind makes it feel cooler. Rain is scarce — most falls Nov–Feb.

  • Canary Islands: Tenerife · south dry and sunny, north wetterfine

    Trade winds build cloud on the northern slopes; the south stays clear. Teide summit is far colder than the coast — take layers.

  • Desert-dry and windy year-round; the wind is the main reason it never feels too hot.

  • Castellón: Coast (Costa del Azahar) · Castellón de la Plana, Peñíscolacool

    Mediterranean: mild winters, hot summers. Rain is rare in July–August.

  • Continental: colder winters, hot summers; snow possible in Morella in winter.

  • Continental: hot dry summers, cold winters, rain concentrated in spring and autumn; annual rainfall above 500 mm.

  • Costa Blanca: Costa Blanca coast · Mediterranean shorelinebest weather

    Warm 22‑28 °C (82 °F) May‑Oct; July‑Aug hottest (30 °C (86 °F)+).

  • Costa del Sol: Costa del Sol coast · Mediterranean shorelinecool

    Average 19 °C (66 °F), >300 sunny days; summer 25‑30 °C (86 °F), winter rarely below 10 °C (50 °F); 500 mm annual rain.

  • Mild winters; rain spreads across spring and autumn. August is hot and crowded.

  • Eastern Spain: Valencian Community and Murcia · central and south coastcool

    Drier and warmer than Catalonia; July–August afternoons reach 30–35 °C (86–95 °F). Autumn rain (gota fría) can bring heavy downpours in September–October.

  • Summers can exceed 30 °C (86 °F); spring and autumn are most comfortable.

  • Girona Pyrenees: Girona Pyrenees · Mountain regioncold

    Ski season runs from Christmas holidays to mid‑March, covering all March weekends and Easter holidays.

  • Green Spain: Galicia and the northwest coast · Santiago, A Coruña, Vigo, Fisterrarainy

    Rain in every month; wettest October to January. Summers are mild, rarely above 25 °C (77 °F).

  • Green Spain: Asturias and Cantabria · Oviedo, Gijón, Santander, Picos de Europarainy

    Similar pattern; the Picos de Europa can hold snow into spring and close passes.

  • Continental climate; hot summers (30 °C (86 °F)+), cold winters (0 °C (32 °F)).

  • Migjorn de Mallorca: Coastal strip · Cala d'Or, Colònia de Sant Jordicool

    Summer highs 30 °C (86 °F)+; sea breeze helps. July–August peak crowds and prices.

  • Migjorn de Mallorca: Inland plain · Felanitx, Camposcool

    Hotter than the coast in summer; agrotourism stays are quieter.

  • Northern Spain: Basque coast · Bilbao, San Sebastiánrainy

    Rain in every month; July–September is the driest and busiest window. Summer highs are around 24–26 °C (75–79 °F), not 35 °C (95 °F).

  • Northern Spain: Asturias and Cantabria · Oviedo, Santander, Picos de Europarainy

    Mountain valleys are cooler and wetter than the coast; snow possible in the Picos from November to April.

  • Madrid10 °C (50 °F) / 3 °C (37 °F), 7 rain days
  • A Coruña14 °C (57 °F) / 8 °C (46 °F), 17 rain days
  • A Fonsagrada12 °C (54 °F) / 5 °C (41 °F), 13 rain days
  • Adra16 °C (61 °F) / 9 °C (48 °F), 6 rain days
  • Agost16 °C (61 °F) / 6 °C (43 °F), 7 rain days
  • Ainsa9 °C (48 °F) / 1 °C (34 °F), 8 rain days
  • Alaró18 °C (64 °F) / 8 °C (46 °F), 8 rain days
  • Albacete13 °C (55 °F) / 3 °C (37 °F), 5 rain days
  • Albarracín9 °C (48 °F) / 0 °C (32 °F), 6 rain days
  • Alburquerque13 °C (55 °F) / 4 °C (39 °F), 8 rain days
  • Alcalá de Henares12 °C (54 °F) / 2 °C (36 °F), 7 rain days
  • Alcalá de los Gazules17 °C (63 °F) / 9 °C (48 °F), 7 rain days
  • Alcalá la Real14 °C (57 °F) / 3 °C (37 °F), 6 rain days
  • Alcobendas10 °C (50 °F) / 2 °C (36 °F), 7 rain days
  • Alcossebre17 °C (63 °F) / 8 °C (46 °F), 4 rain days
  • Alcoy15 °C (59 °F) / 5 °C (41 °F), 6 rain days
  • Alcúdia16 °C (61 °F) / 8 °C (46 °F), 8 rain days
  • Algeciras17 °C (63 °F) / 9 °C (48 °F), 6 rain days
  • Alhama de Granada13 °C (55 °F) / 3 °C (37 °F), 6 rain days
  • Alicante17.9 °C (64 °F) / 7.5 °C (46 °F), 4 rain days
  • Almàssera18 °C (64 °F) / 9 °C (48 °F), 5 rain days
  • Almería18 °C (64 °F) / 10 °C (50 °F), 5 rain days
  • Almonaster la Real16 °C (61 °F) / 6 °C (43 °F), 8 rain days
  • Almuñécar17 °C (63 °F) / 9 °C (48 °F), 7 rain days
  • Álora16 °C (61 °F) / 6 °C (43 °F), 8 rain days
  • Alp8 °C (46 °F) / -1 °C (30 °F), 8 rain days
  • Alquezar9 °C (48 °F) / 1 °C (34 °F), 7 rain days
  • Altea18 °C (64 °F) / 9 °C (48 °F), 4 rain days
  • Amer14 °C (57 °F) / 5 °C (41 °F), 8 rain days
  • Amposta14 °C (57 °F) / 6 °C (43 °F), 6 rain days
  • Andratx16 °C (61 °F) / 9 °C (48 °F), 6 rain days
  • Ansó9 °C (48 °F) / 0 °C (32 °F), 9 rain days
  • Antequera16 °C (61 °F) / 6 °C (43 °F), 8 rain days
  • Aranjuez11 °C (52 °F) / 3 °C (37 °F), 6 rain days
  • Arrecife22 °C (72 °F) / 15 °C (59 °F), 4 rain days
  • Artés11 °C (52 °F) / 3 °C (37 °F), 8 rain days
  • Astorga9 °C (48 °F) / 1 °C (34 °F), 8 rain days
  • Atapuerca9 °C (48 °F) / 1 °C (34 °F), 8 rain days
  • Ávila9 °C (48 °F) / 1 °C (34 °F), 7 rain days
  • Avilés14 °C (57 °F) / 7 °C (45 °F), 14 rain days
  • Badajoz15 °C (59 °F) / 5 °C (41 °F), 9 rain days
  • Badalona15 °C (59 °F) / 8 °C (46 °F), 6 rain days
  • Baiona14 °C (57 °F) / 7 °C (45 °F), 15 rain days
  • Balaguer13 °C (55 °F) / 3 °C (37 °F), 7 rain days
  • Balmaseda12 °C (54 °F) / 6 °C (43 °F), 13 rain days
  • Banyoles13 °C (55 °F) / 5 °C (41 °F), 6 rain days
  • Baqueira‑Beret3 °C (37 °F) / -4 °C (25 °F), 9 rain days
  • Barbastro13 °C (55 °F) / 3 °C (37 °F), 7 rain days
  • Barcelona15 °C (59 °F) / 10 °C (50 °F), 6 rain days
  • Bàscara13 °C (55 °F) / 4 °C (39 °F), 8 rain days
  • Begues13 °C (55 °F) / 3 °C (37 °F), 5 rain days
  • Begur14 °C (57 °F) / 6 °C (43 °F), 5 rain days
  • Bellver de Cerdanya8 °C (46 °F) / -2 °C (28 °F), 6 rain days
  • Belorado10 °C (50 °F) / 2 °C (36 °F), 8 rain days
  • Bembibre11 °C (52 °F) / 1 °C (34 °F), 9 rain days
  • Benalmádena17 °C (63 °F) / 8 °C (46 °F), 8 rain days
  • Benidorm18 °C (64 °F) / 8 °C (46 °F), 5 rain days
  • Berga12 °C (54 °F) / 3 °C (37 °F), 8 rain days
  • Berlanga de Duero7 °C (45 °F) / 0 °C (32 °F), 9 rain days
  • Besalú13 °C (55 °F) / 3 °C (37 °F), 6 rain days
  • Biar17 °C (63 °F) / 7 °C (45 °F), 7 rain days
  • Bilbao14.1 °C (57 °F) / 6.1 °C (43 °F), 13 rain days
  • Blanes14 °C (57 °F) / 4 °C (39 °F), 6 rain days
  • Borredà9 °C (48 °F) / 1 °C (34 °F), 9 rain days
  • Buñol16 °C (61 °F) / 5 °C (41 °F), 5 rain days
  • Burgos9 °C (48 °F) / 0 °C (32 °F), 8 rain days
  • Cáceres13 °C (55 °F) / 3 °C (37 °F), 6 rain days
  • Cadaqués14 °C (57 °F) / 6 °C (43 °F), 5 rain days
  • Cádiz17 °C (63 °F) / 10 °C (50 °F), 9 rain days
  • Cala d'Or16 °C (61 °F) / 8 °C (46 °F), 7 rain days
  • Cala en Bosch15 °C (59 °F) / 9 °C (48 °F), 7 rain days
  • Cala Galdana15 °C (59 °F) / 8 °C (46 °F), 6 rain days
  • Cala Millor16 °C (61 °F) / 8 °C (46 °F), 6 rain days
  • Cala Ratjada16 °C (61 °F) / 9 °C (48 °F), 6 rain days
  • Calatayud9 °C (48 °F) / 1 °C (34 °F), 8 rain days
  • Calella de Palafrugell14 °C (57 °F) / 5 °C (41 °F), 6 rain days
  • Calella14 °C (57 °F) / 7 °C (45 °F), 6 rain days
  • Caleta de Fuste22 °C (72 °F) / 15 °C (59 °F), 2 rain days
  • Calpe17 °C (63 °F) / 8 °C (46 °F), 6 rain days
  • Calvià16 °C (61 °F) / 9 °C (48 °F), 6 rain days
  • Camprodon11 °C (52 °F) / 1 °C (34 °F), 7 rain days
  • Can Picafort16 °C (61 °F) / 7 °C (45 °F), 6 rain days
  • Candelaria22 °C (72 °F) / 15 °C (59 °F), 6 rain days
  • Canet de Mar15 °C (59 °F) / 6 °C (43 °F), 8 rain days
  • Canfranc6 °C (43 °F) / -2 °C (28 °F), 9 rain days
  • Cangas del Narcea12 °C (54 °F) / 5 °C (41 °F), 13 rain days
  • Cantallops13 °C (55 °F) / 3 °C (37 °F), 6 rain days
  • Cáparra12 °C (54 °F) / 3 °C (37 °F), 8 rain days
  • Caravaca de la Cruz16 °C (61 °F) / 6 °C (43 °F), 9 rain days
  • Cardona13 °C (55 °F) / 5 °C (41 °F), 7 rain days
  • Carrícola14 °C (57 °F) / 5 °C (41 °F), 5 rain days
  • Cartagena18 °C (64 °F) / 8 °C (46 °F), 4 rain days
  • Castelldefels15 °C (59 °F) / 8 °C (46 °F), 6 rain days
  • Castellfollit de la Roca13 °C (55 °F) / 5 °C (41 °F), 7 rain days
  • Castellnou de Seana12 °C (54 °F) / 2 °C (36 °F), 7 rain days
  • Castelló d'Empúries14 °C (57 °F) / 4 °C (39 °F), 5 rain days
  • Castellón15 °C (59 °F) / 7 °C (45 °F), 5 rain days
  • Castro Urdiales12 °C (54 °F) / 5 °C (41 °F), 12 rain days
  • Castrojeriz9 °C (48 °F) / 1 °C (34 °F), 7 rain days
  • Cervera12 °C (54 °F) / 3 °C (37 °F), 8 rain days
  • Chinchón11 °C (52 °F) / 3 °C (37 °F), 9 rain days
  • Chipiona17 °C (63 °F) / 9 °C (48 °F), 7 rain days
  • Ciudad Real13 °C (55 °F) / 3 °C (37 °F), 7 rain days
  • Ciutadella15 °C (59 °F) / 8 °C (46 °F), 8 rain days
  • Cocentaina15 °C (59 °F) / 4 °C (39 °F), 5 rain days
  • Colera13 °C (55 °F) / 5 °C (41 °F), 5 rain days
  • Combarro13 °C (55 °F) / 5 °C (41 °F), 12 rain days
  • Comillas14 °C (57 °F) / 7 °C (45 °F), 14 rain days
  • Consuegra13 °C (55 °F) / 3 °C (37 °F), 9 rain days
  • Córdoba16 °C (61 °F) / 5 °C (41 °F), 8 rain days
  • Cornellana13 °C (55 °F) / 6 °C (43 °F), 13 rain days
  • Corralejo21 °C (70 °F) / 16 °C (61 °F), 2 rain days
  • Costa Adeje21 °C (70 °F) / 16 °C (61 °F), 5 rain days
  • Costa Teguise22 °C (72 °F) / 15 °C (59 °F), 4 rain days
  • Cuenca11 °C (52 °F) / 1 °C (34 °F), 7 rain days
  • Cullera18 °C (64 °F) / 8 °C (46 °F), 4 rain days
  • Deia16 °C (61 °F) / 7 °C (45 °F), 8 rain days
  • Dénia18 °C (64 °F) / 9 °C (48 °F), 5 rain days
  • Echo8 °C (46 °F) / -1 °C (30 °F), 10 rain days
  • El Escorial11 °C (52 °F) / 3 °C (37 °F), 6 rain days
  • El Médano22 °C (72 °F) / 16 °C (61 °F), 5 rain days
  • El Pont de Suert6 °C (43 °F) / -1 °C (30 °F), 9 rain days
  • El Port de la Selva14 °C (57 °F) / 6 °C (43 °F), 5 rain days
  • El Prat de Llobregat15 °C (59 °F) / 8 °C (46 °F), 6 rain days
  • El Puerto de Santa María17 °C (63 °F) / 9 °C (48 °F), 9 rain days
  • El Puig16 °C (61 °F) / 7 °C (45 °F), 5 rain days
  • El Rocio17 °C (63 °F) / 7 °C (45 °F), 7 rain days
  • El Sauzal21 °C (70 °F) / 15 °C (59 °F), 7 rain days
  • El Vendrell15 °C (59 °F) / 6 °C (43 °F), 8 rain days
  • Elche17 °C (63 °F) / 8 °C (46 °F), 4 rain days
  • Elviria17 °C (63 °F) / 9 °C (48 °F), 6 rain days
  • Empuriabrava14 °C (57 °F) / 5 °C (41 °F), 5 rain days
  • Es Castell15 °C (59 °F) / 8 °C (46 °F), 7 rain days
  • Es Mercadal15 °C (59 °F) / 11.5 °C (53 °F), 8 rain days
  • Estepona18 °C (64 °F) / 10 °C (50 °F), 8 rain days
  • Ezcaray9 °C (48 °F) / 1 °C (34 °F), 7 rain days
  • Falset14 °C (57 °F) / 5 °C (41 °F), 8 rain days
  • Ferrol14 °C (57 °F) / 7 °C (45 °F), 16 rain days
  • Figueres14 °C (57 °F) / 4 °C (39 °F), 5 rain days
  • Fisterra14 °C (57 °F) / 8 °C (46 °F), 18 rain days
  • Frigiliana17 °C (63 °F) / 8 °C (46 °F), 9 rain days
  • Frómista9 °C (48 °F) / 2 °C (36 °F), 8 rain days
  • Fuengirola18 °C (64 °F) / 9 °C (48 °F), 7 rain days
  • Galapagar11 °C (52 °F) / 2 °C (36 °F), 7 rain days
  • Gandesa13 °C (55 °F) / 4 °C (39 °F), 6 rain days
  • Gandía18 °C (64 °F) / 8 °C (46 °F), 5 rain days
  • Garachico21 °C (70 °F) / 14 °C (57 °F), 8 rain days
  • Getafe11 °C (52 °F) / 2 °C (36 °F), 7 rain days
  • Getaria13 °C (55 °F) / 7 °C (45 °F), 13 rain days
  • Gibraleón17 °C (63 °F) / 7 °C (45 °F), 7 rain days
  • Gijón14 °C (57 °F) / 7 °C (45 °F), 14 rain days
  • Girona14 °C (57 °F) / 2 °C (36 °F), 5 rain days
  • Graciosa21 °C (70 °F) / 15 °C (59 °F), 4 rain days
  • Grado13 °C (55 °F) / 5 °C (41 °F), 12 rain days
  • Granada13 °C (55 °F) / 3 °C (37 °F), 7 rain days
  • Granadilla de Abona21 °C (70 °F) / 15 °C (59 °F), 5 rain days
  • Grandas de Salime13 °C (55 °F) / 5 °C (41 °F), 12 rain days
  • Granollers13 °C (55 °F) / 4 °C (39 °F), 8 rain days
  • Graus7 °C (45 °F) / -1 °C (30 °F), 9 rain days
  • Grazalema16 °C (61 °F) / 7 °C (45 °F), 13 rain days
  • Guernica13 °C (55 °F) / 5 °C (41 °F), 12 rain days
  • Guía de Isora21 °C (70 °F) / 16 °C (61 °F), 1 rain days
  • Güímar22 °C (72 °F) / 14 °C (57 °F), 11 rain days
  • Haría21 °C (70 °F) / 15 °C (59 °F), 5 rain days
  • Haro11 °C (52 °F) / 3 °C (37 °F), 8 rain days
  • Hondarribia11 °C (52 °F) / 5 °C (41 °F), 12 rain days
  • Hontanas9 °C (48 °F) / 1 °C (34 °F), 8 rain days
  • Hornillos del Camino10 °C (50 °F) / 2 °C (36 °F), 8 rain days
  • Huesca11 °C (52 °F) / 2 °C (36 °F), 6 rain days
  • Ibiza, city17 °C (63 °F) / 9 °C (48 °F), 6 rain days
  • Icod de los Vinos20 °C (68 °F) / 14 °C (57 °F), 8 rain days
  • Igualada13 °C (55 °F) / 3 °C (37 °F), 9 rain days
  • Inca16 °C (61 °F) / 8 °C (46 °F), 6 rain days
  • Ingenio22 °C (72 °F) / 16 °C (61 °F), 5 rain days
  • Irun12 °C (54 °F) / 5 °C (41 °F), 9 rain days
  • Isla Cristina17 °C (63 °F) / 9 °C (48 °F), 8 rain days
  • Iznájar13 °C (55 °F) / 4 °C (39 °F), 7 rain days
  • Jaca5 °C (41 °F) / -1 °C (30 °F), 10 rain days
  • Jaén11 °C (52 °F) / 3 °C (37 °F), 7 rain days
  • Jerez de la Frontera17 °C (63 °F) / 7 °C (45 °F), 9 rain days
  • Júzcar18 °C (64 °F) / 9 °C (48 °F), 8 rain days
  • La Antilla17 °C (63 °F) / 9 °C (48 °F), 7 rain days
  • La Bisbal d'Empordà14 °C (57 °F) / 4 °C (39 °F), 5 rain days
  • La Esperanza, El Rosario21 °C (70 °F) / 16 °C (61 °F), 6 rain days
  • La Línea de la Concepción15 °C (59 °F) / 8 °C (46 °F), 8 rain days
  • La Llacuna14 °C (57 °F) / 6 °C (43 °F), 8 rain days
  • La Manga17 °C (63 °F) / 7 °C (45 °F), 6 rain days
  • La Orotava19 °C (66 °F) / 13 °C (55 °F), 7 rain days
  • La Palma de Cervelló14 °C (57 °F) / 4 °C (39 °F), 5 rain days
  • La Palma22 °C (72 °F) / 15 °C (59 °F), 8 rain days
  • La Pobla de Lillet8 °C (46 °F) / -1 °C (30 °F), 9 rain days
  • La Seu d'Urgell8 °C (46 °F) / 1 °C (34 °F), 8 rain days
  • Langreo13 °C (55 °F) / 5 °C (41 °F), 13 rain days
  • Las Palmas22 °C (72 °F) / 17 °C (63 °F), 6 rain days
  • Las Rozas12 °C (54 °F) / 3 °C (37 °F), 8 rain days
  • Les Borges Blanques9 °C (48 °F) / 1 °C (34 °F), 7 rain days
  • L'Escala14 °C (57 °F) / 5 °C (41 °F), 5 rain days
  • L'Esquirol13 °C (55 °F) / 4 °C (39 °F), 8 rain days
  • L'Estany12 °C (54 °F) / 3 °C (37 °F), 5 rain days
  • L'Estartit14 °C (57 °F) / 5 °C (41 °F), 6 rain days
  • L'Hospitalet de Llobregat14 °C (57 °F) / 6 °C (43 °F), 6 rain days
  • Llafranc14 °C (57 °F) / 5 °C (41 °F), 6 rain days
  • Llançà14 °C (57 °F) / 6 °C (43 °F), 5 rain days
  • Llastres12 °C (54 °F) / 6 °C (43 °F), 12 rain days
  • Llavorsí5 °C (41 °F) / -2 °C (28 °F), 9 rain days
  • Lleida12 °C (54 °F) / 3 °C (37 °F), 7 rain days
  • Llivia6 °C (43 °F) / -1 °C (30 °F), 12 rain days
  • Lloret de Mar14 °C (57 °F) / 5 °C (41 °F), 5 rain days
  • Lluc18 °C (64 °F) / 9 °C (48 °F), 8 rain days
  • Logroño10 °C (50 °F) / 3 °C (37 °F), 7 rain days
  • Lorca15 °C (59 °F) / 6 °C (43 °F), 5 rain days
  • Los Cristianos22 °C (72 °F) / 16 °C (61 °F), 5 rain days
  • Los Gigantes21 °C (70 °F) / 15 °C (59 °F), 3 rain days
  • Luanco14 °C (57 °F) / 7 °C (45 °F), 13 rain days
  • Lugo12 °C (54 °F) / 4 °C (39 °F), 15 rain days
  • Magaluf16 °C (61 °F) / 9 °C (48 °F), 6 rain days
  • Málaga18 °C (64 °F) / 9 °C (48 °F), 7 rain days
  • Malgrat de Mar15 °C (59 °F) / 8 °C (46 °F), 6 rain days
  • Manacor16 °C (61 °F) / 7 °C (45 °F), 6 rain days
  • Manises18 °C (64 °F) / 8 °C (46 °F), 4 rain days
  • Manresa13 °C (55 °F) / 6 °C (43 °F), 8 rain days
  • Maó15 °C (59 °F) / 8 °C (46 °F), 8 rain days
  • Marbella17.3 °C (63 °F) / 10.7 °C (51 °F), 9 rain days
  • Martorell13 °C (55 °F) / 5 °C (41 °F), 8 rain days
  • Masca21 °C (70 °F) / 15 °C (59 °F), 5 rain days
  • Maspalomas21 °C (70 °F) / 15 °C (59 °F), 2 rain days
  • Mataró14 °C (57 °F) / 6 °C (43 °F), 5 rain days
  • Medina de Pomar9 °C (48 °F) / 1 °C (34 °F), 7 rain days
  • Mérida13 °C (55 °F) / 4 °C (39 °F), 7 rain days
  • Mijas16 °C (61 °F) / 9 °C (48 °F), 6 rain days
  • Miranda de Ebro11 °C (52 °F) / 3 °C (37 °F), 8 rain days
  • Moià13 °C (55 °F) / 5 °C (41 °F), 8 rain days
  • Mojácar17 °C (63 °F) / 11 °C (52 °F), 2 rain days
  • Mollerussa12 °C (54 °F) / 3 °C (37 °F), 8 rain days
  • Molló11 °C (52 °F) / 2 °C (36 °F), 6 rain days
  • Montanejos17 °C (63 °F) / 7 °C (45 °F), 5 rain days
  • Montblanc13 °C (55 °F) / 3 °C (37 °F), 8 rain days
  • Montejaque17 °C (63 °F) / 7 °C (45 °F), 7 rain days
  • Móra d'Ebre14 °C (57 °F) / 4 °C (39 °F), 5 rain days
  • Moraira18 °C (64 °F) / 8 °C (46 °F), 6 rain days
  • Morella11 °C (52 °F) / 2 °C (36 °F), 5 rain days
  • Móstoles11 °C (52 °F) / 3 °C (37 °F), 6 rain days
  • Mundaka12 °C (54 °F) / 6 °C (43 °F), 14 rain days
  • Murcia18 °C (64 °F) / 6 °C (43 °F), 4 rain days
  • Murillo de Gallego10 °C (50 °F) / 2 °C (36 °F), 6 rain days
  • Muros12 °C (54 °F) / 6 °C (43 °F), 12 rain days
  • Muxía14 °C (57 °F) / 7 °C (45 °F), 16 rain days
  • Nerja17 °C (63 °F) / 9 °C (48 °F), 6 rain days
  • Níjar18 °C (64 °F) / 8 °C (46 °F), 5 rain days
  • Novo Sancti Petri17 °C (63 °F) / 9 °C (48 °F), 9 rain days
  • O Grove12 °C (54 °F) / 5 °C (41 °F), 13 rain days
  • Ojén15 °C (59 °F) / 7 °C (45 °F), 7 rain days
  • Olot13 °C (55 °F) / 3 °C (37 °F), 6 rain days
  • Olvera17 °C (63 °F) / 9 °C (48 °F), 7 rain days
  • Orihuela16 °C (61 °F) / 7 °C (45 °F), 5 rain days
  • Ourense12 °C (54 °F) / 3 °C (37 °F), 14 rain days
  • Oviedo13 °C (55 °F) / 6 °C (43 °F), 13 rain days
  • Palafrugell14 °C (57 °F) / 5 °C (41 °F), 5 rain days
  • Palamós14 °C (57 °F) / 6 °C (43 °F), 5 rain days
  • Palencia9 °C (48 °F) / 1 °C (34 °F), 8 rain days
  • Palma de Mallorca17 °C (63 °F) / 10 °C (50 °F), 6 rain days
  • Palos de la Frontera17 °C (63 °F) / 9 °C (48 °F), 6 rain days
  • Pals14 °C (57 °F) / 4 °C (39 °F), 5 rain days
  • Pamplona10 °C (50 °F) / 2 °C (36 °F), 10 rain days
  • Paterna18 °C (64 °F) / 8 °C (46 °F), 4 rain days
  • Peñíscola17 °C (63 °F) / 8 °C (46 °F), 4 rain days
  • Peralada14 °C (57 °F) / 5 °C (41 °F), 8 rain days
  • Peratallada14 °C (57 °F) / 4 °C (39 °F), 5 rain days
  • Piedrasblancas13 °C (55 °F) / 6 °C (43 °F), 12 rain days
  • Pitres13 °C (55 °F) / 4 °C (39 °F), 7 rain days
  • Plasencia13 °C (55 °F) / 4 °C (39 °F), 9 rain days
  • Platja d'Aro14 °C (57 °F) / 5 °C (41 °F), 5 rain days
  • Playa Blanca22 °C (72 °F) / 15 °C (59 °F), 4 rain days
  • Playa de las Américas20 °C (68 °F) / 14 °C (57 °F), 6 rain days
  • Playa del Inglés22 °C (72 °F) / 16 °C (61 °F), 4 rain days
  • Pola de Allande13 °C (55 °F) / 5 °C (41 °F), 13 rain days
  • Pola de Lena13 °C (55 °F) / 5 °C (41 °F), 13 rain days
  • Pola de Siero13 °C (55 °F) / 6 °C (43 °F), 10 rain days
  • Pollença16 °C (61 °F) / 7 °C (45 °F), 8 rain days
  • Ponferrada10 °C (50 °F) / 2 °C (36 °F), 11 rain days
  • Pontevedra14 °C (57 °F) / 7 °C (45 °F), 15 rain days
  • Porreres16 °C (61 °F) / 8 °C (46 °F), 6 rain days
  • Port de Pollença16 °C (61 °F) / 7 °C (45 °F), 8 rain days
  • Portbou14 °C (57 °F) / 6 °C (43 °F), 5 rain days
  • Portugos13 °C (55 °F) / 3 °C (37 °F), 6 rain days
  • Prats de Lluçanès14 °C (57 °F) / 6 °C (43 °F), 8 rain days
  • Puente Genil13 °C (55 °F) / 2 °C (36 °F), 7 rain days
  • Puerto Banús18 °C (64 °F) / 9 °C (48 °F), 7 rain days
  • Puerto de la Cruz22 °C (72 °F) / 16 °C (61 °F), 8 rain days
  • Puerto de Mogán22 °C (72 °F) / 16 °C (61 °F), 6 rain days
  • Puerto del Carmen22 °C (72 °F) / 15 °C (59 °F), 4 rain days
  • Puerto del Rosario22 °C (72 °F) / 15 °C (59 °F), 5 rain days
  • Puerto Rico, Spain23 °C (73 °F) / 17 °C (63 °F), 3 rain days
  • Puigcerdà8 °C (46 °F) / 1 °C (34 °F), 13 rain days
  • Queralbs7 °C (45 °F) / -1 °C (30 °F), 8 rain days
  • Rabé de las Calzadas10 °C (50 °F) / 2 °C (36 °F), 7 rain days
  • Rabós14 °C (57 °F) / 6 °C (43 °F), 8 rain days
  • Requena12 °C (54 °F) / 2 °C (36 °F), 5 rain days
  • Reus14 °C (57 °F) / 5 °C (41 °F), 5 rain days
  • Ribadavia13 °C (55 °F) / 6 °C (43 °F), 13 rain days
  • Ribadeo14 °C (57 °F) / 6 °C (43 °F), 13 rain days
  • Ribadesella13 °C (55 °F) / 5 °C (41 °F), 12 rain days
  • Ripoll11 °C (52 °F) / 3 °C (37 °F), 8 rain days
  • Roncesvalles10 °C (50 °F) / 1 °C (34 °F), 9 rain days
  • Ronda15 °C (59 °F) / 6 °C (43 °F), 10 rain days
  • Roquetas de Mar17 °C (63 °F) / 8 °C (46 °F), 4 rain days
  • Roses14 °C (57 °F) / 6 °C (43 °F), 5 rain days
  • Rupit10 °C (50 °F) / 1 °C (34 °F), 6 rain days
  • Sa Pobla16 °C (61 °F) / 8 °C (46 °F), 5 rain days
  • Sabadell14 °C (57 °F) / 6 °C (43 °F), 6 rain days
  • Sagunto16 °C (61 °F) / 7 °C (45 °F), 5 rain days
  • Sahagún9 °C (48 °F) / 2 °C (36 °F), 8 rain days
  • Salamanca9 °C (48 °F) / 1 °C (34 °F), 6 rain days
  • Salas12 °C (54 °F) / 6 °C (43 °F), 13 rain days
  • Salou15 °C (59 °F) / 6 °C (43 °F), 5 rain days
  • San Agustín22 °C (72 °F) / 16 °C (61 °F), 5 rain days
  • San Andrés, Tenerife22 °C (72 °F) / 17 °C (63 °F), 7 rain days
  • San Cristóbal de La Laguna17.4 °C (63 °F) / 11.6 °C (53 °F), 8 rain days
  • San Javier16 °C (61 °F) / 7 °C (45 °F), 7 rain days
  • San Millán de la Cogolla11 °C (52 °F) / 2 °C (36 °F), 8 rain days
  • San Sebastián14 °C (57 °F) / 7 °C (45 °F), 13 rain days
  • San Vicente de la Barquera13 °C (55 °F) / 6 °C (43 °F), 12 rain days
  • Sanlúcar de Barrameda17 °C (63 °F) / 8 °C (46 °F), 8 rain days
  • Sant Antoni de Portmany17 °C (63 °F) / 9 °C (48 °F), 6 rain days
  • Sant Boi de Llobregat13 °C (55 °F) / 6 °C (43 °F), 8 rain days
  • Sant Carles de la Ràpita15 °C (59 °F) / 7 °C (45 °F), 5 rain days
  • Sant Cugat del Vallès14 °C (57 °F) / 5 °C (41 °F), 5 rain days
  • Sant Esteve d'en Bas13 °C (55 °F) / 3 °C (37 °F), 9 rain days
  • Sant Feliu de Guíxols14 °C (57 °F) / 5 °C (41 °F), 6 rain days
  • Sant Feliu de Llobregat15 °C (59 °F) / 7 °C (45 °F), 5 rain days
  • Sant Joan de les Abadesses13 °C (55 °F) / 3 °C (37 °F), 9 rain days
  • Sant Lluís15 °C (59 °F) / 9 °C (48 °F), 5 rain days
  • Sant Pere Pescador14 °C (57 °F) / 5 °C (41 °F), 5 rain days
  • Sant Pol de Mar15 °C (59 °F) / 7 °C (45 °F), 8 rain days
  • Santa Coloma de Cervelló14 °C (57 °F) / 6 °C (43 °F), 7 rain days
  • Santa Coloma de Farners13 °C (55 °F) / 5 °C (41 °F), 8 rain days
  • Santa Coloma de Gramenet14 °C (57 °F) / 7 °C (45 °F), 6 rain days
  • Santa Cruz de la Palma21 °C (70 °F) / 14 °C (57 °F), 7 rain days
  • Santa Cruz de Tenerife22 °C (72 °F) / 17 °C (63 °F), 7 rain days
  • Santa Eulària des Riu16 °C (61 °F) / 9 °C (48 °F), 6 rain days
  • Santa Lucía de Gordón8 °C (46 °F) / -1 °C (30 °F), 9 rain days
  • Santa Maria del Camí16 °C (61 °F) / 7 °C (45 °F), 6 rain days
  • Santa Pola16 °C (61 °F) / 8 °C (46 °F), 8 rain days
  • Santa Susanna15 °C (59 °F) / 6 °C (43 °F), 6 rain days
  • Santander14 °C (57 °F) / 7 °C (45 °F), 13 rain days
  • Santes Creus14 °C (57 °F) / 4 °C (39 °F), 5 rain days
  • Santiago de Compostela13 °C (55 °F) / 6 °C (43 °F), 15 rain days
  • Santiago del Teide21 °C (70 °F) / 15 °C (59 °F), 7 rain days
  • Santillana del Mar14 °C (57 °F) / 7 °C (45 °F), 13 rain days
  • Santiponce17 °C (63 °F) / 7 °C (45 °F), 6 rain days
  • Santo Domingo de la Calzada10 °C (50 °F) / 2 °C (36 °F), 8 rain days
  • Sarria13 °C (55 °F) / 5 °C (41 °F), 13 rain days
  • Sedella17 °C (63 °F) / 9 °C (48 °F), 9 rain days
  • Segorbe15 °C (59 °F) / 5 °C (41 °F), 4 rain days
  • Segovia9 °C (48 °F) / 1 °C (34 °F), 7 rain days
  • Setcases7 °C (45 °F) / -2 °C (28 °F), 8 rain days
  • Seville16.9 °C (62 °F) / 7.4 °C (45 °F), 7 rain days
  • Sierra Norte16 °C (61 °F) / 6 °C (43 °F), 9 rain days
  • Sineu17 °C (63 °F) / 9 °C (48 °F), 7 rain days
  • Sitges15 °C (59 °F) / 7 °C (45 °F), 7 rain days
  • Sóller16 °C (61 °F) / 7 °C (45 °F), 7 rain days
  • Solsona13 °C (55 °F) / 2 °C (36 °F), 8 rain days
  • Somport4 °C (39 °F) / -3 °C (27 °F), 12 rain days
  • Son Bou16 °C (61 °F) / 9 °C (48 °F), 7 rain days
  • Soria9 °C (48 °F) / 0 °C (32 °F), 8 rain days
  • Sort9 °C (48 °F) / -1 °C (30 °F), 8 rain days
  • Tabarca17 °C (63 °F) / 8 °C (46 °F), 4 rain days
  • Taganana21 °C (70 °F) / 16 °C (61 °F), 6 rain days
  • Tardajos9 °C (48 °F) / 2 °C (36 °F), 8 rain days
  • Tarifa17 °C (63 °F) / 11 °C (52 °F), 9 rain days
  • Tarragona15 °C (59 °F) / 6 °C (43 °F), 5 rain days
  • Tàrrega12 °C (54 °F) / 3 °C (37 °F), 8 rain days
  • Taüll6 °C (43 °F) / -1 °C (30 °F), 9 rain days
  • Tegueste17 °C (63 °F) / 12 °C (54 °F), 8 rain days
  • Teguise22 °C (72 °F) / 15 °C (59 °F), 4 rain days
  • Telde22 °C (72 °F) / 17 °C (63 °F), 2 rain days
  • Terrassa14 °C (57 °F) / 6 °C (43 °F), 7 rain days
  • Teruel8 °C (46 °F) / -1 °C (30 °F), 5 rain days
  • Tineo12 °C (54 °F) / 5 °C (41 °F), 13 rain days
  • Toledo12 °C (54 °F) / 3 °C (37 °F), 7 rain days
  • Torla8 °C (46 °F) / -1 °C (30 °F), 10 rain days
  • Torre del Mar17 °C (63 °F) / 9 °C (48 °F), 5 rain days
  • Torrelavega15 °C (59 °F) / 7 °C (45 °F), 13 rain days
  • Torremolinos18 °C (64 °F) / 9 °C (48 °F), 7 rain days
  • Torrent18 °C (64 °F) / 8 °C (46 °F), 5 rain days
  • Torrevieja18 °C (64 °F) / 8 °C (46 °F), 4 rain days
  • Torroella de Montgrí14 °C (57 °F) / 4 °C (39 °F), 5 rain days
  • Torrox17 °C (63 °F) / 8 °C (46 °F), 5 rain days
  • Tortosa13 °C (55 °F) / 6 °C (43 °F), 5 rain days
  • Tossa de Mar14 °C (57 °F) / 6 °C (43 °F), 6 rain days
  • Tremp7 °C (45 °F) / -1 °C (30 °F), 10 rain days
  • Trujillo13 °C (55 °F) / 5 °C (41 °F), 8 rain days
  • Tui13 °C (55 °F) / 6 °C (43 °F), 15 rain days
  • Úbeda13 °C (55 °F) / 3 °C (37 °F), 8 rain days
  • Ullastret12 °C (54 °F) / 4 °C (39 °F), 6 rain days
  • Ulldecona16 °C (61 °F) / 6 °C (43 °F), 5 rain days
  • Uterga10 °C (50 °F) / 2 °C (36 °F), 10 rain days
  • Valencia17.4 °C (63 °F) / 8.3 °C (47 °F), 5 rain days
  • Vall de Boí7 °C (45 °F) / -1 °C (30 °F), 7 rain days
  • Valladolid9 °C (48 °F) / 1 °C (34 °F), 8 rain days
  • Vallbona de les Monges8 °C (46 °F) / -1 °C (30 °F), 7 rain days
  • Valldemossa16 °C (61 °F) / 7 °C (45 °F), 8 rain days
  • Valle Gran Rey22 °C (72 °F) / 16 °C (61 °F), 5 rain days
  • Valls13 °C (55 °F) / 3 °C (37 °F), 8 rain days
  • Vélez-Blanco15 °C (59 °F) / 4 °C (39 °F), 4 rain days
  • Vélez-Málaga18 °C (64 °F) / 9 °C (48 °F), 7 rain days
  • Vic13 °C (55 °F) / 3 °C (37 °F), 7 rain days
  • Vigo14 °C (57 °F) / 7 °C (45 °F), 15 rain days
  • Viladecans14 °C (57 °F) / 6 °C (43 °F), 4 rain days
  • Vilaflor14.5 °C (58 °F) / 7 °C (45 °F), 56 rain days
  • Vilafranca del Penedès15 °C (59 °F) / 7 °C (45 °F), 8 rain days
  • Vilalba12 °C (54 °F) / 4 °C (39 °F), 15 rain days
  • Vilanova i la Geltrú14 °C (57 °F) / 6 °C (43 °F), 6 rain days
  • Villafranca Montes de Oca10 °C (50 °F) / 2 °C (36 °F), 8 rain days
  • Villanueva de Sigena10 °C (50 °F) / 2 °C (36 °F), 5 rain days
  • Villarreal17 °C (63 °F) / 6 °C (43 °F), 7 rain days
  • Villaviciosa14 °C (57 °F) / 7 °C (45 °F), 14 rain days
  • Vitoria-Gasteiz9 °C (48 °F) / 1 °C (34 °F), 8 rain days
  • Xàbia18 °C (64 °F) / 8 °C (46 °F), 5 rain days
  • Xàtiva17 °C (63 °F) / 7 °C (45 °F), 4 rain days
  • Yaiza22 °C (72 °F) / 15 °C (59 °F), 4 rain days
  • Zafra14 °C (57 °F) / 4 °C (39 °F), 8 rain days
  • Zahara de la Sierra16 °C (61 °F) / 6 °C (43 °F), 6 rain days
  • Zamora10 °C (50 °F) / 2 °C (36 °F), 7 rain days
  • Zaragoza11 °C (52 °F) / 3 °C (37 °F), 5 rain days
  • Zarauz12 °C (54 °F) / 5 °C (41 °F), 5 rain days

Festivals and holidays

Dates as our data lists them. Moving holidays (lunar and Islamic calendars, Easter) shift every year: check the date for your year before you build a trip on it.

  • Constitution Day and Immaculate Conception

    6 and 8 Dec

    The 'puente de diciembre' long weekend: city hotels and trains busy.

  • Christmas Day

    25 Dec

    Everything closed; the family meal is on the 24th.

  • Christmas lights and markets check

    Late Nov to Jan 6 · Madrid

    Crowded evenings and pickpockets; roasted chestnuts on the corners.

  • Nochebuena and Navidad

    Dec 24–25 · Madrid

    Most restaurants and shops close on the evening of Dec 24 and all of Dec 25.

  • Christmas and New Year

    Dec 24–25 and Jan 1 · Madrid

    Most restaurants and shops closed on the evening of Dec 24 and Dec 25.

Crowds and prices

Crowds · Spain
Medium
Prices · Spain
Medium

Compare two months

Weather, crowds and prices for any two months in Spain, side by side.

  • Verdict

    Dec: Good

    Apr: Great (better)

  • Crowds

    Dec: Medium

    Apr: High

  • Prices

    Dec: Medium

    Apr: High

  • Festivals listed

    Dec: 5

    Apr: 2

December: Christmas lights and markets; the 6–8 December long weekend (puente) fills hotels. The Christmas lottery on 22 December stops the country for a morning.

April: Excellent weather everywhere; Seville's April Fair and any Holy Week in April push Andalusian prices to the year's high.

Spain: figures are long-term averages from this guide, not a forecast.

What to pack

  • Layers: a fleece or light jacket
  • A rain jacket or umbrella and shoes that dry fast

Build the full packing list for your trip →

Where to go in December

Rated best or good this month

  • Canary Islands

    Best weather of the year (Tenerife, Gran Canaria, Lanzarote, Fuerteventura, La Palma)

  • Alp

    Best months: Dec–Apr (ski season)

  • Baqueira‑Beret

    Best months: Dec–Feb (peak snow)

  • Caleta de Fuste

    Best months: Oct–May (milder sea, less heat)

  • Candelaria

    Best months: Oct–May

  • Corralejo

    Best months: Oct–May (warm, windy, less crowded)

  • El Médano

    Best months: Oct–May

  • El Sauzal

    Best months: Oct–May

  • Ezcaray

    Best months: Jun–Sep for hiking; Dec–Feb for skiing

  • Granadilla de Abona

    Best months: Oct–May (warm, less rain)

  • Guía de Isora

    Best months: Oct–May (mild temps, low rain)

  • Güímar

    Best months: Oct–May