In theory, the statutory law permits you to be naked on any beach in Spain. In practice, most most people avoid the busy sensibly, commercialised beaches of the principle tourist resorts.
There are literally hundreds of beaches however, bays, coves, islands and some inland beaches where naturism is the norm even. The Spanish naturist blogging site Lugares Naturistas has come up with the following comprehensive list (from north to south) encompassing mainland Spain, the Balearics and the Canaries.
MAINLAND
Galicia
Playa Caolín – O Vicedo
Playa Portonovo – Viveiro
Calas de los Alemanes – Burela – Cangas
Playa Niñeiriños – Pobra do Caramiñal – Xobre
Playa O Vilar – Riveira
Playa Balieiros – Olveira – Corrubedo
Playa Espiñeirido – Espiñeirido – Serans
Playa As Furnas – Xuño – Caamaño
Playa Río Sieira – Caamaño
Playa Queiruga – Queiruga
Playa Arealonga – Baroña
Playa Aguieira (Cedeira) – Porto do Son – Nebra
Playa Testal – Testal – Noia
Playa Lago Louro (Las Dunas) – Lariño – Muros
Playa Ancoradoiro – Louro – Lariño – Muros
Playa Lariño – Lariño – Louro – Muros
Playa Area Blanca – Ponte do Porto – Camariñas
Playa Reira – Camariñas
Playa Traba – Boaño
Playa Morro – Niñóns
Playa Niñóns – Niñóns
Playa Reja Grande – San Martiño de Cambre
Playa Reja Chica – San Martiño de Cambre
Playa San Miro – San Martiño de Cambre
Playa Razo – Razo
Playa Baldaio – Imende – Razo
Playa Barrañan – Caión – Barrañan
Playa Combouzas – Barrañan
Playa Bastiagueriño – Santa Cruz
Playa Canabal – Mera
Playa El Cirro – Veigue – Sada
Playa Arnela – Camoedo – Fontán – Sada
Playa Insua – Boebre – Perbes
Pequeñas Calas – Ferrol
Playa Lumebo – Ferrol
Playa Ponzos – Cobas – Ferrol
Playa de Casal – Ferrol
Playa de Baleo – Valdoviño – Pantín
Playa A Fontaiña – Vigo
Playa San Martiño – Isla de San Martiño – Islas Cies
Playa Figueiras – Isla de Monteagudo – Islas Cies
Playa Viñó – Donón – Nerga
Playa Barra – Donón – Nerga
Playa Melide – Donón
Playa Sartaxens – Menduiña
Playa Tulla o Tuia – Beluso
Playa Aguete – Marín
Playa Melide – Isla de Ons
Playa Bascuas – Portonovo – Sanxenxo
Playa Pragueira – Portonovo – Sanxenxo
Playa A Lanzada – Carballal – Revolta
Playa Abelleira – San Vicente do Mar
Playa Canelas – San Vicente do Mar
Playa Con do Corvo – San Vicente do Mar
Playa Aguieira – San Vicente do Mar – O Grove
Playa Borreiro – San Vicente do Mar – O Grove
Playa Castiñeira – O Grove – San Vicente
Calas Parque Natural del Carreiron – Isla de Arousa
Río Cerves – Melón
Asturias
Cala Mexota – Serantes – Tapia de Casariego
Playa Barayo (La Vega) – Vigo – Sabugo – Luarca
Playa Sabugo – Sabugo – Luarca
Playa Oleiros – Lamuño – Cudillero
Playa Campofrio – Las Dueñas – Cudillero
Playa L´Atalaya – S.Esteban de Pravia – Muros de Nalón
Playa Quebrantos – S. Juan de la Arena – Muros de Nalón
Playón Bayas (El Sablón) Sta. María del Mar
Playa Requexinos – Sta. María del Mar
Playa Xagó – Avilés
Playa Aguilera – Verdicio – Avilés
Playa Peñarrubia – Gijón
Playa Cagonera y Serín – Gijón
Playa Merón – Careñes – Tazones – Villaviciosa
Playa Vega – Vega – Berbes – Ribadesella
Cala Gulpiyuri – Naves – Llanes
Playa San Antolín – Niembro – Llanes
Playa Pestaña – Niembro – Llanes
Playa Torimbia – Niembro – Llanes
Playa San Martín – Poo de Llanes – Celorio – Llanes
Playa Portiellu – Llanes – Cué
Playa Ballota – Andrín – Llanes
Cantabria
Playa Valdearenas – Liencres
Playa Somocuevas – Liencres – Soto de la Marina
Playa Covachos – Soto de la Marina
Playa El Puntal – Somo
Playa Somo – Somo – Loredo
Playa Loredo – Loredo – Somo
Playa Langre I – Langre – Loredo
Playa Langre II – Langre – Loredo
Playa Antuerta – Ajo – Arnuero – Santoña
Playa La Arena (Los Nudistas) – Isla – Arnuero
Playa Tregandín – Noja
Playa Arenal de Sonabia – Oriñon – Islares – Castro-Urdiales
Playa Arenillas – Islares – Castro-Urdiales
Playa Valdearenas – Liencres
Playa Somocuevas – Liencres – Soto de la Marina
Playa Covachos – Soto de la Marina
Playa El Puntal – Somo
Playa Somo – Somo – Loredo
Playa Loredo – Loredo – Somo
Playa Langre I – Langre – Loredo
Playa Langre II – Langre – Loredo
Playa Antuerta – Ajo – Arnuero – Santoña
Playa La Arena (Los Nudistas) – Isla – Arnuero
Playa Tregandín – Noja
Playa Arenal de Sonabia – Oriñon – Islares – Castro-Urdiales
Playa Arenillas – Islares – Castro-Urdiales
Vizcaya
Playa Azkorri (Gorrondatxe) – Getxo
Playa La Salvaje (Barinatxe) Sopela
Playa Meñakoz – Sopela – Barrika
Playa Barrika – Barrika
Playa La Cantera – Barrika
Cala Lapatxa – Ea – Elantxobe
Playa Ogeia (Ogella) – Ispaster – Lekeito
Playa Saturraran – Saturraran – Mutriku – Ondarroa
Playa Zarautz – Zarautz
Playa de La Zurriola – San Sebastián
Playa Isla de Santa Clara – San Sebastián
Álava
Campa de Arrangua – Pantano de Ullibarri – Arroiabe
Campa Lago de Arroiabe – Pantano de Ullibarri – Arroiabe
Navarra
Pantano de Alloz – Alloz – Lerate
Pantano de Yesa – Yesa
Rio Aigüeta de Barbarruéns – Seira – Valle de Benasque
Pantano de la Sotonera – Alcalá de Gurrea – Almudévar
Río Ara – L´Ainsa – Fiscal
Río Gállego – San Juan de Mozarrifar – Villanueva de Gállego
Río Ulldemó – Beceite
Pantano de Sant Ponc – Solsona
Barcelona
Playa El Moli
Sant Pol de Mar
Playa L´Home Mort – Sitges
Playa Els Balmins – Sitges – Vallcarca
Cala Morisca – Vallcarca
Playa Viladecans – Viladecans
Playa de La Ricarda – El Prat de Llobregat
Playa Sant Sebastià – Barcelona
Playa La Mar Bella – Barcelona
Playa de Ponent – El Masnou – Premià de Mar
Playa del Fortí o del Búnker – Mataró
Playa La Musclera – Caldes d´Estrac – Arenys de Mar
Playa La Murtra (El Moli) – Canet y Sant Pol del Mar
Playa La Roca Grossa (La Cabra) – Calella
Playa La Vinyeta – Calella
Tarragona
Playa Els Trabucador – Sant Carles de la Rápita
Playa El Serrallo – Sant Jaume D´Enveja – Deltebre
Playa La Marquesa – Deltebre
Playa El Torn – L´Hospitalet de L´Infant
Cala D´Oques – L´Hospitalet de L´Infant
Playa La Savinosa – Tarragona
Cala Waikiki o Fonda – Tarragona
Cala Calabeig o Roca Plana – Tarragona
Gerona
Cala Boadella – Lloret del Mar
Cala D´en Carlos – Tossa de Mar
Playa Vallpresona – Canyet
Playa Senyor Ramon o Corrullada – Canyet
Playa El Castell – Palamós – La Fosca
Calas Roca Bona y del Crit – Palamós – La Fosca
Playa L´Illa Roja – Begur – Sa Riera – Pals
Playa Pals – Begur – Pals
Playa L´Estartit – L´Estartit
Playa Sant Pere Pescador o La Gola – Sant Pere Pescador
Playa Can Comes – Sant Pere Pescador
Cala Murtra – Roses – Canyelles
Cala Nans – Cadaqués
Playa Sa Conca – Cadaqués
Calas S´Alqueira Gran y Petita – Cadaqués
Calas Jugadora y Sa Pedrosa – Cadaqués
Cala Tavallera – El Port de la Selva
Cala Tamariua – El Port de la Selva
Playa del Borró – Port de LlanÇa – Colera
Cala del Pí – Portbou
Valencia
Playa de Vedat o D´Aigua Blanca – Oliva
Playa de L´Ahuir – Gandía
Playa El Dorado – El Brosquil – Tavernes
Playa El Dosser (Dosel) – Cullera – Torre del Cap
Playa San Lorenzo – Cullera – Mareny de San Lorenzo
Playa La Devesa – El Saler
Playa Pinedo – Valencia
Playa Corint (Malva-Rosa) – Sangunto – La Malva-Rosa
Castelló
Playa Platgetes de Bellver (Playetas) – Benicàssim
Playa La Torre de la Sal – Oropesa – Cabanes
Playa La Ribera de Cabanes – Torrenostra – Cabanes
Playa Capicorb – Torrenostra – Alcossebre
Playa Tres Playas – Alcalá de Chivert
Playa Les Fonts – Alcossebre – Las Fuentes
Cala Blanca – Alcossebre – Las Fuentes
Cala Mundina – Alcossebre – Las Fuentes
Playa Ribamar – Alcossebre – Las Fuentes
Cala Arsilaga (Cubanita) – Alcossebre – Las Fuentes
Playa El Russo – Peñíscola
Cala El Volante – Peñíscola
Playa L´Aljub – Peñíscola
Alicante
Playa Los Tusales – Guardamar del Segura
Playa El Rebollo – Guardamar del Segura – La Marina
Playa La Marina – Guardamar del Segura – La Marina
Playa Pinet – El Pinet – Santa Pola
Calas de la Isla de Tabarca – Alicante
Playa Arenales del Sol – Dunas de Carabassí – Arenales del Sol
Playa Saladar – Alicante
Playa La Albufereta – Alicante
Cala Judíos – Alicante
Cala Cantalars – Alicante
Calas del Cabo de las Huertas o Aliodre – Alicante
Playa Esparrelló o del Montbolí – Villajoyosa
Cala La Mallaeta – Villajoyosa
Cala Fonda – Villajoyosa – Benidorm
Playa Torre Conill – Villajoyosa – Benidorm
Calas Ti Ximo – Benidorm
Playa La Mina – Albir – Alfaz del Pí
Playa L´Olla – L´Olla – Altea
Playa La Solsida – L´Olla – Altea
Playa Mascarat – Altea
Cala La Barra – Altea
Cala Cap Blanc – Calpe
Cala Los Tiestos – Poble Nou de Benitachell
Playa Ambolo – La Granadella – Jávea
Cala Torre – Cabo de la Nao – Jávea
Playa Portichol (La Barraca) – Portichol – Jávea
Cala Cap Martí (Sardinera) – Javea
Murcia
Playa de los Ingleses – Calarreona – Aguilas
Playa La Higuera – Calarreona – Aguilas
Playa Matalentisco – Calarreona – Aguilas
Playa Puntas de Calnegre – Puntas de Calnegre
Playa Parazuelos – Puntas de Calnegre
Playa Las Minas – Puntas de Calnegre
Playa Percheles – Puntas de Calnegre
Playa Covaticas – Puntas de Calnegre – Bolnuevo
Playa Barranco Ancho – Puntas de Calnegre – Bolnuevo
Cala Desnuda – Bolnuevo
Playa Cala Leño – Bolnuevo
Playa La Grúa – Bolnuevo
Cala Amarilla – Bolnuevo
Playa Cueva de los Lobos – Bolnuevo
Playa El Rincón – Bolnuevo
Playa Bolnuevo – Bolnuevo
Playa El Portús – El Portús – Cartagena
Playa de la Morena (Losa) – El Portús – Cartagena
Cala de las Mulas – Portman – Los Belones
Playa Parreño – Los Belones – Cartagena
Playa Calblanque – Playa Larga – Cabo de Palos
Cala Reona – Cabo de Palos
Playa Ensenada del Esparto – La Manga del Mar Menor
Playa La Llana – San Pedro del Pinatar
Almería
Playa Entinas – Almerimar – El Ejido
Playa El Príncipe (El Sabinar) – El Ejido – San Agustín
Playa Cerrillos – San Agustín – Roquetas de Mar
Playa Ancón de Cabo de Gata – Cabo de Gata
Cala Carbón – Cabo de Gata – San José
Cala Media Luna – Cabo de Gata – San José
Playa El Monsul – Cabo de Gata – San José
Cala Barronal – Cabo de Gata – San José
Cala Chica – Cabo de Gata – San José
Cala Príncipe – Cabo de Gata – San José
Cala de los Amarillos – Cabo de Gata – San José
Playa Los Genoveses – San José
Cala La Polancra – Las Negras
Cala San Pedro – Las Negras
Cala del Plomo – Agua Amarga
Cala de Enmedio – Agua Amarga
Playa Agua Amarga – Agua Amarga
Playa Los Muertos – Carboneras
Playa El Algarrobico – Carboneras
Playa Granatillas – Agua de Medio – Sopalmo – Mojácar
Playa El Sombrerico – Agua de Medio – Mojácar
Playa Castillo de Macenas – Agua de Medio – Mojácar
Playa El Playazo – Vera
Playa La Carolina – San Juan de los Terreros
Granada
Playa Cantarrijan – Almuñécar
Playa El Muerto – El Cotobro – Almuñécar
Playa La Joya – Torrenueva – Motril
Málaga
Playa Arroyo Vaquero – Costa Natura – Estepona
Playa Artola – Cabo Pino – Marbella
Playa Benalnatura – Torrequebrada – Benalmádena Costa
Playa San Julián – Málaga
Playa Almayate – Bajamar – Torre del Mar
Cala del Pino – Maro – Nerja
Río Chillar – Nerja – Málaga
Cadiz
Playa Punta Candor – Rota
Playa de Valdelagrana – Levante (Los Toruños) – El Puerto de Santa María
Playa Campo Soto – San Fernando
Calas de Poniente – Conil de la Frontera
Cala del Aceite – Conil de la Frontera
Playa Castilnovo – Conil de la Frontera
Playa La Mangueta (El Palmar-Zahora) Zahora – Barbate
Playa Faro de Trafalgar (El Palmar-Zahora) Zahora – Los Caños
Playa Caños de Meca – Caños de Meca – Barbate
Playa Arroyo del Cañuelo – Zahara de los Atunes
Playa Bolonia – Tarifa
Playa Sotogrande – San Roque
Huelva
Playa Flecha de Nueva Umbría – Lepe
Playa La Mata Negra (Los Enebrales) – Punta Umbría
Playa de Rompeculos – Mazagón – Matalascañas
Playa del Asperillo (Cuesta de Maneli) – Matalascañas
BALEARICS
Mallorca
Playa des Dic (del Dique del Oeste o d´es Grell) – Palma de Mallorca
Playa Es Trenc – Sa Ràpita – Colònia Sant Jordi
Cala S´Almunia – Santayí
Cala Bafri – Porto Colom
Cala Varques – Porto Cristo – Manacor
Cala Petita – Porto Cristo – Manacor
Caló d´en Rafalino – Porto Cristo – Manacor
Cala Moltó – Capdepera – Artà
Cala Sa Mesquida – Capdepera – Artá
Cala Torta – Artà
Cala Sa Canova – Son Serra de Marina – Sta. Margalida
Cala Son Real – Son Serra de Marina – Sta. Margalida
Playa Coll Baix – Alcúdia
Cala Es Canyaret – Llucalcari – Deià
Playa Caló des Monjo – Calvià
Cala Bella Dona – Calvià
Cala El Mago – Calvià
Menorca
Cala Mesquida – Sa Mesquida – Mahón
S´Illa d´en Colom – Mahón – Alaior
Playa Es Tamarells del Nord – Es Grau – Mahón
Playa Es Tamarells del Sud – Es Grau – Mahón
Playa Sa Torreta – Mahón
Playa En Tortuga – Mahón
Cala Presili – Mahón
Cala Roja – Ses Salines – Fornells – Es Mercadal
Playa Ferragut (Cavalleria) – Es Mercadal
Cala Mica – Es Mercadal
De Binimel-la a Cala Pregonda – Es Mercadal
Cala Calderer – Es Mercadal
Cala del Pilar – Ferreries
Playa Algairens – Citadella de Menorca
Cala Macarelleta – Sta. Galdana – Ferreries
Cala Fustam – Es Migjorn Gran
Cala Trebeluger – Sant Tomàs – Es Migjorn Gran
Playa Sant Adeonato – Sant Tomàs – Es Migjorn Gran
Playa Binigaus – Sant Tomàs – Alaior
Playa Son Bou – Sant Tomàs – Alaior
Cala Coves (Biniadris) – Urb. Cala en Porter – Alaior
Playa Punta Prima – Punta Prima – Alcalfar
Ibiza
Playa de ses Salines (Migjorn) – Sant Francesc de ses Salines
Playa Cavallet – Sant Francesc de ses Salines
Playa d´en Bossa – Sant Francesc de ses Salines
Cala Talamanca – Talamanca – Ibiza
Cala Olivera – Sta. Eulària des Riu
Playa Es Canar – Es Canar – Sta. Eulària des Riu
Playa Es Figueral – Es Figueral – Sant Carles de Peralta
Playa Aigues Blanques – Sant Carles – Sant Vicent de sa Cala
Cala Xarraca – Portinatx – Sant Joan Baptista
Cala Bassa – Port des Torrent – Sant Antoni de Portmany
Cala Tarida – Cala Tarida – Sant Joseph
Formentera
Playa Sa Torreta – Es Pujòls – Sa Savina
Playa S´Alga – Es Pujòls – Sa Savina
Playa Sa Senyora – Es Pujòls
Calas Bocs Grans y Petits – Es Pujòls
Playa Illetes – Es Pujòls – Sa Savina
Playa Pas den Adolf – Raco de ses Ampolles – Es Pujòls
Playa de Llevant – Es Pujòls
Cala Saona – Sant Francesc de Formentera
Playa els Arenals (Mal Pas) Sant Francesc de Formentera
Playa Migjorn – Sa Savina
Playa Es Caló (Ses Plagetes) – Es Caló – Mola
Playa Es Pujòls – Es Pujòls
Playa Sa Roqueta – Es Pujòls
CANARIES
Gran Canaria
Playa del Inglés – Maspalomas – San Agustín
Playa Maspalomas – Maspalomas – San Agustín
Playa Las Mujeres – Maspalomas – El Oasis
Playa Montaña de Arena – Maspalomas – El Oasis
Playa Las Meloneras – El Oasis – Arguineguín
Playa Las Carpinteras – El Oasis – Arguineguín
Playa Lomo Galeón – Arguineguín
Playa del Molinero – Arguineguín
Playa Tauro – Puerto Rico – Mogán
Playa Medio Almud – Arguineguín – Mogán
Playa Tiritaña – Mogán
Playa Taurito – Mogán
Playa Veneguera – Veneguera – Mogán
Playa Los Secos – Tasarte
Playa Ambar – Tasarte
Fuerteventura
Playa de Sotavento de Jandía – Morro del Jable
Playa Butihondo – Morro del Jable
Playa Las Coloradas – Morro del Jable
Playa Morro de Potala – Morro del Jable
Playa El Cofete – El Cofete – Morro del Jable
Playa Viejo Rey – Morro del Jable – Pájara
Playa Ajuy – Ajuy – Puerto de la Peña – Pájara
Playa Janubio – Puerto de Los Molinos – La Oliva
Playa Aljibe (La Cueva) – El Cotillo – La Oliva
Playa Castillo – La Oliva
Playa Marfolín – El Cotillo – Corralejo
Playa Islote – El Cotillo – Corralejo
Playa Río – El Cotillo – Corralejo
Playas Los Charcos – El Cotillo – Corralejo
Playa Charcón – Corralejo
Playa Beatriz – Corralejo
Playa Punta Blanca – Corralejo
Playas de Corralejo – Corralejo
Lanzarote
Playas de Lanzarote
Playa Guasimeta – Arrefice – Tías
Playa Matagorda – Arrefice – Tías
Playa Puerto Muelas – Playa Blanca
Playa Caleta del Congrio – Playa Blanca
Playa Las Mujeres – Playa Blanca
Playa Afre (Las Coloradas) – Playa Blanca
Playa Janubio – Yaiza
Playa Famara – Famara – Teguise
La Palma
Playa Monjas – Puerto Naos
La Gomera
Playa Guancha – San Sebastián de la Gomera
Playa del Cabrito – San Sebastián de la Gomera
Playa Roja – San Sebastián de la Gomera
Playa Guincho – San Sebastián de la Gomera
Playa Suarez – Laguna de Santiago
Playa Chinguarime – Laguna de Santiago
Playa del Medio – Laguna de Santiago
Playa Tapahuga – Laguna de Santiago
Playa Argaga – Valle Gran Rey
Playa Vueltas – Valle Gran Rey
Playa La Calera – Valle Gran Rey
Playa del Inglés – Valle Gran Rey
El Hierro
Playa del Verodal – La Dehesa – El Golfo