From licence to finished home, municipality by municipality
For each of the 308 municipalities: how many dwellings INE counts as licensed and how many as completed, how the two compare, and how many units we have for sale in the catalogue. The map shows dwellings completed per 1,000 residents.
Full table as CSV · JSON · Building-permit barometer by municipality · How it is calculated
Dwellings completed per 1,000 residents
Dwellings completed in new buildings in 2025 (INE estimate), per 1,000 residents. Source: INE.
- < 1.0
- 1.0–2.0
- 2.0–4.0
- 4.0–8.0
- ≥ 8.0
- no data
per 1,000 residents
Informação geográfica cedida pela Direção-Geral do Território (CAOP, CC BY 4.0) · INE
Portugal: 27301 dwellings completed in 2025, 2.39 per 1,000 residents.
All 308 municipalities, by population
Coverage: full cases with day-level dates, type of works, entry and decision dates; partial cases collected, without some of these items; annual only cases carry the year only; count only cases carry no dates; no data we have not yet collected open data for this municipality. Data coverage and limitations
—1 fewer than 30 dwellings licensed in the period, too few for a stable ratio.
| Municipality | Open data | Dwellings licensed in the year (INE) (2025) | Dwellings completed in the year (INE) (2025) | Completed 2023–2025 against licensed 2021–2023 (lag of 2 years) | Units for sale in our catalogue |
|---|---|---|---|---|---|
| Lisboa | full | 1170 | 219 | 34% | 460 |
| Sintra | no data | 1073 | 505 | 77% | 56 |
| Vila Nova de Gaia | annual only | 2987 | 1901 | 69% | 380 |
| Porto | partial | 1904 | 1306 | 77% | 505 |
| Cascais | no data | 575 | 587 | 87% | 126 |
| Loures | no data | 1275 | 348 | 74% | 90 |
| Braga | no data | 931 | 1011 | 78% | 44 |
| Amadora | no data | 282 | 82 | 60% | 0 |
| Almada | no data | 170 | 206 | 88% | 11 |
| Seixal | no data | 840 | 661 | 101% | 19 |
| Oeiras | no data | 809 | 977 | 82% | 52 |
| Odivelas | no data | 223 | 344 | 88% | 0 |
| Matosinhos | partial | 581 | 678 | 69% | 152 |
| Gondomar | no data | 555 | 274 | 80% | 225 |
| Guimarães | no data | 739 | 667 | 73% | 0 |
| Coimbra | no data | 1161 | 525 | 103% | 0 |
| Vila Franca de Xira | no data | 342 | 149 | 52% | 0 |
| Leiria | no data | 1129 | 614 | 91% | 35 |
| Vila Nova de Famalicão | no data | 588 | 475 | 55% | 0 |
| Santa Maria da Feira | no data | 296 | 314 | 103% | 0 |
| Maia | no data | 1115 | 447 | 76% | 56 |
| Setúbal | no data | 250 | 260 | 65% | 0 |
| Barcelos | no data | 1078 | 381 | 89% | 0 |
| Funchal | no data | 349 | 311 | 78% | 0 |
| Viseu | no data | 284 | 249 | 58% | 0 |
| Valongo | annual only | 79 | 162 | 83% | 0 |
| Mafra | no data | 657 | 334 | 72% | 0 |
| Torres Vedras | no data | 505 | 255 | 78% | 0 |
| Loulé | no data | 154 | 361 | 72% | 6 |
| Viana do Castelo | no data | 337 | 116 | 62% | 0 |
| Barreiro | no data | 108 | 340 | 82% | 0 |
| Aveiro | no data | 452 | 427 | 84% | 0 |
| Paredes | count only | 495 | 240 | 100% | 8 |
| Vila do Conde | no data | 732 | 308 | 85% | 3 |
| Faro | no data | 77 | 40 | 73% | 41 |
| Moita | no data | 100 | 60 | 96% | 0 |
| Portimão | no data | 594 | 83 | 47% | 0 |
| Palmela | no data | 213 | 283 | 90% | 0 |
| Póvoa de Varzim | annual only | 238 | 1 | 14% | 0 |
| Penafiel | no data | 317 | 286 | 112% | 9 |
| Ponta Delgada | no data | 282 | 130 | 100% | 0 |
| Oliveira de Azeméis | no data | 91 | 93 | 77% | 0 |
| Santo Tirso | no data | 245 | 134 | 105% | 0 |
| Santarém | no data | 260 | 50 | 90% | 0 |
| Montijo | no data | 156 | 241 | 80% | 23 |
| Figueira da Foz | no data | 297 | 138 | 96% | 1 |
| Albufeira | no data | 53 | 148 | 74% | 29 |
| Alcobaça | no data | 345 | 154 | 96% | 0 |
| Sesimbra | no data | 169 | 69 | 46% | 0 |
| Caldas da Rainha | no data | 378 | 261 | 85% | 0 |
| Évora | no data | 52 | 41 | 61% | 0 |
| Castelo Branco | no data | 140 | 156 | 89% | 0 |
| Ovar | annual only | 253 | 98 | 74% | 0 |
| Paços de Ferreira | no data | 564 | 213 | 97% | 0 |
| Felgueiras | no data | 286 | 173 | 90% | 0 |
| Pombal | no data | 233 | 152 | 80% | 1 |
| Vila Real | no data | 190 | 42 | 28% | 0 |
| Amarante | no data | 264 | 135 | 78% | 0 |
| Covilhã | no data | 251 | 220 | 100% | 0 |
| Marco de Canaveses | no data | 335 | 130 | 83% | 0 |
| Alenquer | no data | 69 | 65 | 75% | 0 |
| Águeda | no data | 132 | 42 | 62% | 0 |
| Lousada | no data | 292 | 178 | 81% | 13 |
| Fafe | no data | 179 | 149 | 89% | 0 |
| Vila Verde | no data | 423 | 177 | 78% | 0 |
| Ourém | no data | 218 | 94 | 86% | 14 |
| Olhão | no data | 167 | 85 | 102% | 0 |
| Silves | no data | 57 | 86 | 88% | 2 |
| Marinha Grande | no data | 47 | 74 | 99% | 0 |
| Santa Cruz | no data | 64 | 130 | 76% | 0 |
| Odemira | no data | 77 | 43 | 114% | 0 |
| Ílhavo | no data | 210 | 204 | 89% | 0 |
| Ponte de Lima | no data | 223 | 97 | 50% | 0 |
| Trofa | no data | 148 | 59 | 97% | 14 |
| Lagos | no data | 210 | 254 | 87% | 6 |
| Guarda | no data | 70 | 27 | 67% | 0 |
| Beja | no data | 17 | 31 | 87% | 0 |
| Esposende | no data | 123 | 90 | 74% | 0 |
| Bragança | no data | 131 | 137 | 77% | 0 |
| Chaves | no data | 105 | 67 | 79% | 0 |
| Tomar | no data | 46 | 43 | 72% | 0 |
| Torres Novas | no data | 58 | 99 | 70% | 0 |
| Abrantes | no data | 26 | 15 | 64% | 0 |
| Cantanhede | no data | 190 | 106 | 86% | 0 |
| Angra do Heroísmo | no data | 38 | 41 | 88% | 0 |
| Benavente | no data | 40 | 51 | 90% | 0 |
| Tavira | no data | 83 | 85 | 109% | 17 |
| Câmara de Lobos | no data | 270 | 277 | 113% | 0 |
| Espinho | no data | 100 | 62 | 57% | 0 |
| Ribeira Grande | no data | 134 | 37 | 42% | 0 |
| Peniche | no data | 231 | 101 | 80% | 0 |
| Santiago do Cacém | no data | 47 | 26 | 65% | 25 |
| Lourinhã | no data | 172 | 100 | 90% | 0 |
| Anadia | no data | 63 | 49 | 73% | 0 |
| Lagoa (Algarve) | no data | 132 | 58 | 55% | 0 |
| Fundão | no data | 151 | 36 | 129% | 0 |
| Estarreja | no data | 51 | 43 | 106% | 0 |
| Tondela | no data | 55 | 79 | 88% | 0 |
| Albergaria-a-Velha | no data | 90 | 55 | 67% | 0 |
| Oliveira do Bairro | no data | 40 | 32 | 66% | 0 |
| Vagos | no data | 171 | 69 | 59% | 0 |
| Vizela | no data | 271 | 84 | 99% | 0 |
| Cartaxo | no data | 38 | 45 | 119% | 0 |
| Rio Maior | no data | 65 | 33 | 51% | 0 |
| Montemor-o-Velho | no data | 40 | 14 | 85% | 0 |
| Porto de Mós | no data | 83 | 22 | 60% | 0 |
| Lamego | no data | 40 | 56 | 128% | 0 |
| Entroncamento | no data | 124 | 15 | 81% | 2 |
| Almeirim | no data | 54 | 52 | 102% | 0 |
| Portalegre | no data | 34 | 118 | 233% | 0 |
| São João da Madeira | no data | 15 | 131 | 136% | 0 |
| Salvaterra de Magos | no data | 71 | 80 | 83% | 0 |
| Azambuja | no data | 20 | 22 | 82% | 0 |
| Póvoa de Lanhoso | no data | 46 | 0 | 3% | 0 |
| Vila Real de Santo António | no data | 165 | 113 | 125% | 0 |
| Vale de Cambra | no data | 59 | 48 | 118% | 0 |
| Elvas | no data | 25 | 17 | 101% | 0 |
| Mirandela | no data | 96 | 62 | 81% | 0 |
| Seia | no data | 27 | 9 | 52% | 0 |
| Arouca | no data | 80 | 26 | 56% | 0 |
| Machico | no data | 52 | 15 | 86% | 0 |
| Arcos de Valdevez | no data | 160 | 37 | 58% | 0 |
| Alcochete | no data | 67 | 212 | 93% | 11 |
| Oliveira do Hospital | no data | 9 | 22 | 61% | 0 |
| Mealhada | no data | 50 | 21 | 80% | 0 |
| Praia da Vitória | no data | 51 | 12 | 85% | 0 |
| Amares | no data | 146 | 43 | 69% | 0 |
| Mangualde | no data | 47 | 42 | 62% | 0 |
| Monção | no data | 115 | 79 | 96% | 0 |
| Lousã | partial | 52 | 26 | 105% | 0 |
| Coruche | no data | 52 | 53 | 155% | 0 |
| Condeixa-a-Nova | no data | 98 | 49 | 114% | 0 |
| Soure | no data | 18 | 6 | 63% | 0 |
| Cinfães | no data | 72 | 13 | 90% | 0 |
| Caminha | no data | 125 | 56 | 68% | 0 |
| Nazaré | no data | 112 | 117 | 84% | 47 |
| Batalha | no data | 83 | 69 | 83% | 0 |
| Baião | no data | 56 | 13 | 47% | 0 |
| Sines | no data | 104 | 44 | 92% | 21 |
| Montemor-o-Novo | no data | 37 | 10 | 100% | 0 |
| Celorico de Basto | no data | 81 | 98 | 82% | 0 |
| Arruda dos Vinhos | no data | 57 | 67 | 91% | 0 |
| Castelo de Paiva | no data | 26 | 19 | 67% | 0 |
| São Pedro do Sul | no data | 16 | 36 | 80% | 0 |
| Ponte de Sor | no data | 38 | 21 | 78% | 0 |
| Valença | no data | 103 | 39 | 63% | 0 |
| Cabeceiras de Basto | no data | 103 | 42 | 86% | 0 |
| Grândola | no data | 148 | 90 | 81% | 0 |
| Horta | no data | 10 | 17 | 154% | 0 |
| Sertã | no data | 41 | 12 | 43% | 0 |
| Lagoa (Açores) | no data | 62 | 86 | 95% | 0 |
| Serpa | no data | 10 | 6 | 80% | 0 |
| Peso da Régua | no data | 8 | 5 | —1 | 0 |
| Bombarral | no data | 49 | 39 | 91% | 0 |
| Cadaval | no data | 63 | 41 | 108% | 0 |
| Valpaços | no data | 31 | 38 | 62% | 0 |
| Nelas | no data | 39 | 12 | 86% | 0 |
| Óbidos | no data | 82 | 45 | 74% | 0 |
| Macedo de Cavaleiros | no data | 34 | 21 | 74% | 0 |
| Moura | no data | 10 | 5 | 44% | 0 |
| Castro Daire | no data | 37 | 19 | 104% | 0 |
| Alcanena | no data | 14 | 5 | 82% | 0 |
| Ribeira Brava | no data | 22 | 14 | —1 | 0 |
| Penacova | no data | 17 | 14 | 60% | 0 |
| Vendas Novas | no data | 17 | 15 | 70% | 0 |
| Estremoz | no data | 8 | 8 | —1 | 0 |
| Mira | no data | 63 | 56 | 88% | 0 |
| Miranda do Corvo | no data | 16 | 10 | 60% | 0 |
| São Brás de Alportel | no data | 30 | 28 | 49% | 0 |
| Ansião | no data | 26 | 15 | 60% | 0 |
| Gouveia | no data | 45 | 5 | 36% | 0 |
| Alcácer do Sal | no data | 38 | 43 | 75% | 33 |
| Sobral de Monte Agraço | no data | 24 | 19 | 100% | 0 |
| Sever do Vouga | no data | 21 | 4 | 106% | 0 |
| Vila Pouca de Aguiar | no data | 32 | 24 | 102% | 0 |
| Tábua | no data | 14 | 16 | 79% | 0 |
| Vieira do Minho | no data | 72 | 29 | 54% | 0 |
| Calheta (Madeira) | no data | 74 | 49 | 83% | 0 |
| Arganil | no data | 15 | 14 | 66% | 0 |
| Sátão | no data | 34 | 27 | 50% | 0 |
| Santa Comba Dão | no data | 23 | 13 | 130% | 0 |
| Ponte da Barca | no data | 65 | 33 | 75% | 0 |
| Reguengos de Monsaraz | no data | 70 | 14 | 85% | 0 |
| Oliveira de Frades | no data | 85 | 32 | 96% | 0 |
| Murtosa | no data | 31 | 22 | 96% | 0 |
| Vila Franca do Campo | no data | 29 | 22 | 93% | 0 |
| Alijó | no data | 5 | 7 | —1 | 0 |
| Vila Nova de Cerveira | no data | 117 | 108 | 120% | 0 |
| Moimenta da Beira | no data | 22 | 9 | 74% | 0 |
| Vouzela | no data | 34 | 10 | 72% | 0 |
| Ferreira do Alentejo | no data | 3 | 6 | —1 | 0 |
| Carregal do Sal | no data | 20 | 8 | 34% | 0 |
| Resende | no data | 14 | 16 | 63% | 0 |
| Sabugal | no data | 7 | 2 | —1 | 0 |
| Aljustrel | no data | 5 | 11 | 89% | 0 |
| Mortágua | no data | 40 | 17 | 114% | 0 |
| Ponta do Sol | no data | 51 | 25 | 62% | 0 |
| Paredes de Coura | no data | 43 | 13 | 49% | 0 |
| Chamusca | no data | 11 | 8 | —1 | 0 |
| Montalegre | no data | 44 | 12 | 55% | 0 |
| Idanha-a-Nova | no data | 30 | 25 | 85% | 0 |
| Campo Maior | no data | 4 | 6 | —1 | 0 |
| Ferreira do Zêzere | no data | 30 | 7 | 77% | 0 |
| Mogadouro | no data | 13 | 16 | 75% | 0 |
| Pinhel | no data | 9 | 11 | 91% | 0 |
| Trancoso | no data | 5 | 6 | —1 | 0 |
| Vila Nova da Barquinha | no data | 37 | 40 | 101% | 0 |
| Alpiarça | no data | 9 | 4 | —1 | 0 |
| Castro Marim | no data | 19 | 14 | 68% | 0 |
| Vila Nova de Poiares | no data | 8 | 2 | —1 | 0 |
| Aljezur | no data | 22 | 3 | 14% | 0 |
| Tarouca | no data | 34 | 41 | 92% | 0 |
| Vila Viçosa | no data | 7 | 11 | —1 | 0 |
| Vinhais | no data | 7 | 11 | 72% | 0 |
| Penalva do Castelo | no data | 12 | 21 | 92% | 0 |
| Melgaço | no data | 49 | 4 | 53% | 0 |
| Castro Verde | no data | 15 | 13 | 81% | 0 |
| Vila do Bispo | no data | 40 | 33 | 33% | 0 |
| Almodôvar | no data | 12 | 13 | 85% | 0 |
| Proença-a-Nova | no data | 8 | 3 | —1 | 0 |
| Porto Santo | no data | 48 | 9 | 75% | 0 |
| Arraiolos | no data | 12 | 0 | 33% | 0 |
| Madalena | no data | 35 | 33 | 88% | 0 |
| Santana | no data | 6 | 6 | —1 | 0 |
| Celorico da Beira | no data | 6 | 5 | —1 | 0 |
| Borba | no data | 3 | 3 | —1 | 0 |
| Torre de Moncorvo | no data | 4 | 5 | —1 | 0 |
| São João da Pesqueira | no data | 20 | 15 | 80% | 0 |
| Redondo | no data | 12 | 7 | —1 | 0 |
| Alvaiázere | no data | 11 | 6 | —1 | 0 |
| Terras de Bouro | no data | 26 | 8 | 74% | 0 |
| Mação | no data | 7 | 7 | —1 | 0 |
| Mondim de Basto | no data | 21 | 11 | 48% | 0 |
| Belmonte | no data | 4 | 5 | —1 | 0 |
| Miranda do Douro | no data | 25 | 7 | —1 | 0 |
| Santa Marta de Penaguião | no data | 6 | 3 | —1 | 0 |
| Nisa | no data | 2 | 2 | —1 | 0 |
| Mértola | no data | 10 | 13 | —1 | 0 |
| Ribeira de Pena | no data | 9 | 9 | 106% | 0 |
| Vila Nova de Foz Côa | no data | 0 | 0 | —1 | 0 |
| Vila Flor | no data | 3 | 1 | —1 | 0 |
| Penela | no data | 19 | 11 | 79% | 0 |
| Portel | no data | 7 | 8 | —1 | 0 |
| Golegã | no data | 8 | 7 | 79% | 0 |
| Povoação | no data | 7 | 9 | 62% | 0 |
| Monchique | no data | 6 | 3 | —1 | 0 |
| Viana do Alentejo | no data | 4 | 2 | —1 | 0 |
| Sabrosa | no data | 13 | 8 | —1 | 0 |
| Almeida | no data | 10 | 5 | —1 | 0 |
| Armamar | no data | 6 | 3 | —1 | 0 |
| Vila do Porto | no data | 18 | 9 | 61% | 0 |
| Vidigueira | no data | 2 | 1 | —1 | 0 |
| Figueiró dos Vinhos | no data | 9 | 1 | —1 | 0 |
| Carrazeda de Ansiães | no data | 19 | 4 | —1 | 0 |
| Ourique | no data | 3 | 1 | —1 | 0 |
| Velas | no data | 22 | 16 | 108% | 0 |
| Murça | no data | 3 | 3 | —1 | 0 |
| São Vicente | no data | 36 | 34 | 79% | 0 |
| Alandroal | no data | 3 | 3 | —1 | 0 |
| Sernancelhe | no data | 10 | 22 | 102% | 0 |
| Aguiar da Beira | no data | 9 | 4 | —1 | 0 |
| Figueira de Castelo Rodrigo | no data | 4 | 7 | —1 | 0 |
| Boticas | no data | 9 | 26 | 92% | 0 |
| Cuba | no data | 12 | 4 | —1 | 0 |
| Lajes do Pico | no data | 9 | 4 | 53% | 0 |
| Tabuaço | no data | 2 | 2 | —1 | 0 |
| Oleiros | no data | 5 | 4 | —1 | 0 |
| Sousel | no data | 2 | 4 | —1 | 0 |
| Vila Nova de Paiva | no data | 10 | 5 | —1 | 0 |
| Nordeste | no data | 12 | 5 | —1 | 0 |
| Mêda | no data | 9 | 4 | —1 | 0 |
| Penamacor | no data | 2 | 1 | —1 | 0 |
| Alfândega da Fé | no data | 7 | 5 | —1 | 0 |
| Fornos de Algodres | no data | 1 | 0 | —1 | 0 |
| Mora | no data | 1 | 3 | —1 | 0 |
| Santa Cruz da Graciosa | no data | 6 | 3 | —1 | 0 |
| Constância | no data | 18 | 10 | 61% | 0 |
| Góis | no data | 2 | 0 | —1 | 0 |
| Pedrógão Grande | no data | 3 | 2 | —1 | 0 |
| Vimioso | no data | 3 | 1 | —1 | 0 |
| Sardoal | no data | 5 | 1 | —1 | 0 |
| Avis | no data | 3 | 5 | —1 | 0 |
| São Roque do Pico | no data | 27 | 13 | 40% | 0 |
| Calheta (Açores) | no data | 2 | 7 | —1 | 0 |
| Vila Velha de Ródão | no data | 3 | 2 | 50% | 0 |
| Mesão Frio | no data | 3 | 2 | —1 | 0 |
| Crato | no data | 1 | 1 | —1 | 0 |
| Pampilhosa da Serra | no data | 1 | 0 | —1 | 0 |
| Gavião | no data | 17 | 2 | —1 | 0 |
| Vila de Rei | no data | 21 | 11 | 83% | 0 |
| Alter do Chão | no data | 4 | 3 | —1 | 0 |
| Castelo de Vide | no data | 0 | 7 | —1 | 0 |
| Freixo de Espada à Cinta | no data | 0 | 0 | —1 | 0 |
| Manteigas | no data | 5 | 3 | —1 | 0 |
| Fronteira | no data | 1 | 1 | —1 | 0 |
| Marvão | no data | 2 | 1 | —1 | 0 |
| Monforte | no data | 1 | 1 | —1 | 0 |
| Arronches | no data | 0 | 0 | —1 | 0 |
| Porto Moniz | no data | 8 | 1 | —1 | 0 |
| Castanheira de Pera | no data | 3 | 2 | —1 | 0 |
| Mourão | no data | 7 | 1 | —1 | 0 |
| Penedono | no data | 2 | 2 | —1 | 0 |
| Alcoutim | no data | 2 | 3 | —1 | 0 |
| Alvito | no data | 4 | 2 | —1 | 0 |
| Santa Cruz das Flores | no data | 1 | 1 | —1 | 0 |
| Lajes das Flores | no data | 6 | 1 | —1 | 0 |
| Barrancos | no data | 0 | 0 | —1 | 0 |
| Corvo | no data | 0 | 0 | —1 | 0 |
Sources: municipal councils (cases), ADENE (pre-certificates), INE (dwellings licensed and completed, population), the flatin.pt catalogue.
Data licence: CC BY 4.0.
You may copy and reuse these figures as long as you credit the source with a link to flatin.pt. Better still, link to this page: that way the reader can check the number. Terms of use