The 2025 Amadora local election was held on 12 October 2025 in the municipality of Amadora, Portugal, to elect the members for Amadora City Council, Amadora Municipal Assembly and the city's six parish assemblies.
The Socialist Party chose incumbent mayor Vítor Ferreira as their candidate, while the Social Democratic Party renewed their coalition with the CDS – People's Party and other smaller parties, repeating their 2021 candidate, Suzana Garcia. The Unitary Democratic Coalition ran MEP João Pimenta Lopes, while Chega announced MP Rui Paulo Sousa as their mayoral candidate. The Left Bloc has as candidate former MEP Anabela Rodrigues and the Liberal Initiative (IL) had Eduardo Conceição as their mayoral candidate.
Vítor Ferreira (PS) won a full term as mayor, although by a narrow margin, and losing more than 10% of share, plus the majority in the municipal council, held by the party since 2001. The PSD/CDS led-coalition achieved its best result in more than 40 years in a local election in Amadora, with 30% of the votes and tying with the PS in number of councillors, each with four. Chega surged to almost 18% of the votes, while CDU scored its worst result ever, just 7% of the votes and 1 councillor. Turnout stood at 49.4%, the highest share since 1997.
Background Incumbent Mayor Vítor Ferreira, from the Socialist Party (PS), became mayor in July 2024, after the then mayor, Carla Tavares, who had been elected MEP in the 2024 European elections, resigned from office. Carla Tavares was in office for 11 years, having been first elected in 2013, and reelected in both 2017 and 2021.
In the 2021 election, the PS held on to their majority with nearly 44% of the votes and elected 7 councillors. The PSD/CDS coalition, led by Suzana Garcia gathered 24.6% of the votes and 3 councillors, the best showing for the coalition in 20 years. On the other hand, the Unitary Democratic Coalition (CDU), led by António Borges, achieved their worst result ever in Amadora, just 9.9% and 1 councillor. Just for comparison, 8 years prior, in the 2013 elections, CDU polled 2nd with 19% of the votes. Chega (CH) and the Left Bloc (BE) tied at around 5% and failed to win any councillor.
Electoral system Each party or coalition must present a list of candidates. The winner of the most voted list for the municipal council is automatically elected mayor, similar to first-past-the-post (FPTP). The lists are closed and the seats in each municipality are apportioned according to the D'Hondt method. Unlike in national legislative elections, independent lists are allowed to run.
Parties and candidates Party/Coalition Politicalposition Candidate 2021 resultRef. Votes (%) Seats PSSocialist Party Centre-left Vítor Ferreira 43.9% AR PPD/PSD Social Democratic Party Center-rightSuzana Garcia 24.6% CDS–PP CDS – People's PartyCenter-rightto right-wing MPT Earth Party Center-right PPM People's Monarchist Party Right-wing 0.6% RIR React, Include, Recycle Centre CDUUnitary Democratic Coalition Left-wingto far-left João Pimenta Lopes9.9% CHEhough! Far-right Rui Paulo Sousa 5.4% BELeft BlocLeft-wingto far-leftAnabela Rodrigues5.3% ILLiberal Initiative Centre-right to right-wingEduardo Conceição2.8%LFREELeft-wingHugo Lourenço
Opinion polling Polling firm/Link Fieldwork date Sample sizePSARCDUCHBEILLLead PSD CDS PPM RIR 2025 local election 12 Oct 2025 33.3 30.1 7.1 17.7 1.8 2.9 3.6 3.53.22025 Legislative election18 May 202528.8 24.0 0.1 0.1 4.1 21.2 2.7 6.1 6.3 6.64.82024 EP election9 Jun 202436.7 22.3 0.1 5.5 10.8 5.3 8.9 4.9 5.514.42024 Legislative election10 Mar 202433.9 21.4 0.2 4.3 17.1 5.4 5.5 4.9 7.312.52022 Legislative election30 Jan 202247.5 19.4 1.3 0.3 5.8 7.7 5.0 5.7 2.0 5.328.1 2021 local election 26 Sep 2021 43.9 24.6 0.6 9.9 5.4 5.3 2.8 7.519.3
Results Municipal Council
| colspan="11" align=center| |- ! rowspan="2" colspan=2 style="background-color:#E9E9E9" align=left|Parties ! rowspan="2" style="background-color:#E9E9E9" align=right|Votes ! rowspan="2" style="background-color:#E9E9E9" align=right|% ! rowspan="2" style="background-color:#E9E9E9" align=right|±pp swing ! colspan="2" style="background-color:#E9E9E9" align="center"|Councillors |- style="background-color:#E9E9E9" ! style="background-color:#E9E9E9" align="center"|Total ! style="background-color:#E9E9E9" align="center"|±
|23,373||33.34||10.6||4||3 |- |style="width: 9px" bgcolor=#2A52BE align="center" | |align=left|PSD / CDS–PP / PPM / MPT / RIR |21,122||30.15||5.6||4||1 |- |style="width: 9px" bgcolor=#202056 align="center" | |align=left|Chega |12,406||17.71||12.3||2||2
|4,962||7.08||2.8||1||0
|2,523||3.60||||0||
|2,061||2.94||0.1||0||0
|1,288||1.84||3.5||0||0
|334||0.48||||0|| |- |colspan=2 width="330" align=left style="background-color:#E9E9E9"|Total valid |width="50" align="right" style="background-color:#E9E9E9"|68,069 |width="40" align="right" style="background-color:#E9E9E9"|97.15 |width="40" align="right" style="background-color:#E9E9E9"|1.2 |width="40" align="right" style="background-color:#E9E9E9"|11 |width="40" align="right" style="background-color:#E9E9E9"|0 |- |colspan=2|Blank ballots |1,137||1.62||0.8||colspan=3 rowspan=4| |- |colspan=2|Invalid ballots |857||1.22||0.4 |- |colspan=2 align=left style="background-color:#E9E9E9"|Total |width="50" align="right" style="background-color:#E9E9E9"|70,063 |width="40" align="right" style="background-color:#E9E9E9"|100.00 |width="40" align="right" style="background-color:#E9E9E9"| |- |colspan=2|Registered voters/turnout ||142,579||49.14||6.4 |- | colspan=11 align=left | Source:
Municipal Assembly
| colspan="11" align=center| |- ! rowspan="2" colspan=2 style="background-color:#E9E9E9" align=left|Parties ! rowspan="2" style="background-color:#E9E9E9" align=right|Votes ! rowspan="2" style="background-color:#E9E9E9" align=right|% ! rowspan="2" style="background-color:#E9E9E9" align=right|±pp swing ! colspan="2" style="background-color:#E9E9E9" align="center"|Seats |- style="background-color:#E9E9E9" ! style="background-color:#E9E9E9" align="center"|Total ! style="background-color:#E9E9E9" align="center"|±
|22,196||31.68||9.1||12||3 |- |style="width: 9px" bgcolor=#2A52BE align="center" | |align=left|PSD / CDS–PP / PPM / MPT / RIR |19,466||27.79||3.5||10||1 |- |style="width: 9px" bgcolor=#202056 align="center" | |align=left|Chega |13,330||19.03||12.2||7||5
|5,508||7.86||3.3||2||2
|3,364||4.80||||1||
|2,542||3.63||||1||
|1,543||2.20||4.6||0||2 |- |colspan=2 width="330" align=left style="background-color:#E9E9E9"|Total valid |width="50" align="right" style="background-color:#E9E9E9"|67,949 |width="40" align="right" style="background-color:#E9E9E9"|96.99 |width="40" align="right" style="background-color:#E9E9E9"|1.6 |width="40" align="right" style="background-color:#E9E9E9"|33 |width="40" align="right" style="background-color:#E9E9E9"|0 |- |colspan=2|Blank ballots |1,268||1.81||1.2||colspan=3 rowspan=4| |- |colspan=2|Invalid ballots |840||1.20||0.4 |- |colspan=2 align=left style="background-color:#E9E9E9"|Total |width="50" align="right" style="background-color:#E9E9E9"|70,057 |width="40" align="right" style="background-color:#E9E9E9"|100.00 |width="40" align="right" style="background-color:#E9E9E9"| |- |colspan=2|Registered voters/turnout ||142,579||49.14||6.4 |- | colspan=11 align=left | Source:
Parish Assemblies
|- class="unsortable" !rowspan=2|Parish!!%!!S!!%!!S!!%!!S!!%!!S!!%!!S !rowspan=2|TotalS |- class="unsortable" style="text-align:center;" !colspan=2 | PS !colspan=2 | AR !colspan=2 | CH !colspan=2 | CDU !colspan=2 | L |- | style="text-align:left;" | Águas Livres | style="background:#FF66FF; color:white;"| 31.1 | 6 | 27.3 | 6 | 18.5 | 4 | 9.5 | 2 | 4.5 | 1 | 19 |- | style="text-align:left;" | Alfragide | style="background:#FF66FF; color:white;"| 38.5 | 6 | 31.5 | 5 | 14.4 | 2 | 5.1
|colspan="2" bgcolor="#AAAAAA"| | 13 |- | style="text-align:left;" | Encosta do Sol | style="background:#FF66FF; color:white;"| 38.6 | 9 | 22.4 | 5 | 20.1 | 4 | 7.9 | 1 | 3.5
| 19 |- | style="text-align:left;" | Falagueira-Venda Nova | style="background:#FF66FF; color:white;"| 40.2 | 6 | 22.9 | 3 | 17.2 | 3 | 9.6 | 1 |colspan="2" bgcolor="#AAAAAA"| | 13 |- | style="text-align:left;" | Mina de Água | style="background:#FF66FF; color:white;"| 30.3 | 7 | 28.9 | 6 | 21.4 | 4 | 7.2 | 1 | 4.3 | 1 | 19 |- | style="text-align:left;" | Venteira | 29.8 | 6 | style="background:#2A52BE; color:white;"| 30.1 | 7 | 16.9 | 3 | 8.9 | 2 | 5.4 | 1 | 19 |- class="unsortable" style="background:#E9E9E9" | style="text-align:left;" | Total | style="background:#FF66FF; color:white;"| 33.7 | 40 | 27.4 | 32 | 18.6 | 20 | 8.1 | 7 | 3.4 | 3 | 102 |- | colspan=19 style="text-align:left;" | Source:
Notes
References