2021 Portuguese local elections

Local elections in Portugal were held on 26 September 2021. The election consisted of three separate elections in the 308 Portuguese municipalities: the election for the Municipal Chamber (the executive branch of the municipality), whose winner is automatically elected mayor, similar to first-past-the-post (FPTP); another election for the Municipal Assembly (the deliberative branch of the municipality); and an election for the Parish Assembly (the deliberative branch of the lower-level parish), whose winner is elected parish president. This last one was held separately in the more than 3,000 parishes around the country. In the 2021 election, 12.3 percent of incumbent mayors, 38 to be precise, were barred from running for another term: 23 from the PS, 11 from the PSD, 3 from CDU and one from the CDS–PP.

The elections happened during the ongoing COVID-19 pandemic in Portugal. Because of that, there was a proposal by the Social Democratic Party to postpone the elections for two months and hold the election between 22 November and 14 December 2021. This proposal was rejected by Parliament and the election was to be held in the normal period set by the election law, between 22 September and 14 October. On 1 July 2021, the government announced the election date for 26 September 2021.

The Socialist Party (PS) retained their status as the largest party in local councils, but lost a lot of votes across the country and especially in some big urban centers. The PS lost Coimbra, Funchal and Barcelos to the PSD, and suffered a massive upset in Lisbon, where the PS incumbent mayor Fernando Medina was defeated by the PSD/CDS coalition candidate Carlos Moedas. The PS losses across the country and the upset defeat in Lisbon were labeled as a "yellow card" to António Costa's government.

Despite not winning the most cities in the country as a whole, the Social Democrats (PSD) were considered the big winners of the elections by winning several cities from the Socialists, narrowing the gap nationwide between them and the PS, and for winning back several urban centers, mainly the upset victory in Lisbon. The party also performed very well in the South, gaining ground in the Alentejo region by winning four cities in Évora district and winning Portalegre from an Independent. In the Azores and Madeira regions, the party also made gains but lost some cities like Batalha and Guarda to independent movements. With these results, Rui Rio's position in the PSD leadership was strengthened.

The Unitary Democratic Coalition (CDU) saw another decline and achieved their worst result to date, just 19 mayors and 8 percent of the votes. The coalition was able to hold on to Évora and Setúbal, albeit by slim margins, but lost big suburban cities like Loures and Moita. In the Alentejo region the coalition lost cities to both PS and PSD, of note the losses of both Montemor-o-Novo and Mora, two Communist bastions since 1976, to the PS. Jerónimo de Sousa, CDU leader, recognized that the results "fell short of the goals" of the coalition.

Independent movements made gains in the elections by winning Guarda from the PSD, and Elvas and Mealhada from the PS. In Porto, mayor Rui Moreira was reelected for a third term but lost his majority. In Figueira da Foz, former prime minister and PSD leader Pedro Santana Lopes made a dramatic comeback, running as an independent, by gaining the city from the PS. The Left Bloc suffered losses by winning just 5 councillors across the country, a drop compared with the 12 councillors they won in 2017, but the party was able to win a councillor in Porto city for the first time. CHEGA was able to win several councillors across the country, a total of 19, and polled 4 percent of the votes. André Ventura said that the results "weren't a total victory", as the party failed its goal of being the 3rd largest political force. The Liberals (IL) did not win any councillors and polled just 1.3 percent of the votes. Together for the People (JPP) were able to hold on to Santa Cruz in the Madeira islands, while We, the Citizens! (NC) lost their sole city to the PSD.

Turnout in these elections decreased compared to four years ago, with just 53.6 percent of voters casting a ballot.

Date
According to the local election law, an election must be called between 22 September and 14 October of the year that the local mandates end. The election is called by a Government of Portugal decree, unlike general elections which are called by the President of the Republic. The Election date must be announced at least 80 days before election day. Election day is the same in all municipalities, and should fall on a Sunday or national holiday. The 2021 local elections should have, therefore, take place no later than 10 October 2021. In March 2021, Prime Minister António Costa said that the elections should be held in September, hinting that the most likely date for the election would be September 26, which was confirmed in July 2021.

Electoral system
All 308 municipalities are allocated a certain number of councilors to elect corresponding to the number of registered voters in a given municipality. Each party or coalition must present a list of candidates. 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.

Council seats and Parish assembly seats are distributed as follows:

a For parishes with more than 30,000 voters, the number of seats mentioned above is increased by one per every 10,000 voters in excess of that number, and then by one more if the result is even.

Parties
The political forces that expressed intention to present candidacies in at least one of the 308 municipalities are the following:


 * Socialist Party (PS)
 * Social Democratic Party (PSD) (only in some municipalities)
 * Unitary Democratic Coalition (CDU)
 * Nonpartisan Politicians (IND)
 * Left Bloc (BE)
 * CDS – People's Party (CDS–PP) (only in some municipalities)
 * People–Animals–Nature (PAN)
 * LIVRE (L)
 * Together for the People (JPP)
 * We, the Citizens! (NC)
 * Portuguese Workers' Communist Party (PCTP/MRPP)
 * Portuguese Labour Party (PTP)
 * Rise Up (E)
 * Democratic Republican Party (PDR)
 * Earth Party (MPT) (only in some municipalities)
 * People's Monarchist Party (PPM) (only in some municipalities)
 * Socialist Alternative Movement (MAS)
 * Liberal Initiative (IL)
 * Alliance (A) (only in some municipalities)
 * CHEGA (CH)
 * React, Include, Recycle (RIR)
 * Volt Portugal (VP)

Voter turnout
The table below shows voter turnout throughout election day. Unlike past elections, voting was extended for one more hour, until 20:00, because of the COVID-19 pandemic.

National summary of votes and seats
! 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 ! rowspan="2" style="background-color:#E9E9E9" align=right|Candidacies ! colspan="2" style="background-color:#E9E9E9" align="center"|Councillors ! colspan="2" style="background-color:#E9E9E9" align="center"|Mayors ! style="background-color:#E9E9E9" align="center"|Total ! style="background-color:#E9E9E9" align="center"|± ! style="background-color:#E9E9E9" align="center"|Total ! style="background-color:#E9E9E9" align="center"|±
 * - style="background-color:#E9E9E9"
 * 1,711,725||34.22||3.6||293||888||64||148||11
 * 660,436||13.21||2.9||152||437||56||72||7
 * style="width: 10px" bgcolor=#FF9900 align="center" |
 * align=left|Social Democratic / People's
 * 540,783||10.81||2.0||91||239||70||31||15
 * 410,666||8.21||1.3||301||148||23||19||5
 * style="width: 8px" bgcolor=gray align="center" |
 * align=left|Independents
 * 276,961||5.54||1.3||79||134||4||19||2
 * style="width: 9px" bgcolor=#202056 align="center" |
 * align=left|CHEGA
 * 208,232||4.16||N/A||219||19||N/A||0||N/A
 * 137,560||2.75||0.5||113||4||8||0||0
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / Alliance / MPT / PPM
 * 90,912||1.81||N/A||3||8||N/A||1||N/A
 * style="width: 9px" bgcolor=#FF66FF align="center" |
 * align=left|Socialist / LIVRE
 * 80,869||1.62||N/A||1||7||N/A||0||N/A
 * 74,869||1.50||1.1||82||31||10||6||0
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / PPM
 * 70,904||1.42||0.0||14||32||17||3||1
 * style="width: 9px" bgcolor=#00ADEF align="center" |
 * align=left|Liberal Initiative
 * 64,849||1.30||N/A||44||0||N/A||0||N/A
 * 56,933||1.14||0.0||40||0||0||0||0
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / Alliance / MPT / PDR / PPM / RIR
 * 46,785||0.94||N/A||2||7||N/A||0||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / PPM / Alliance
 * 44,851||0.90||N/A||3||9||N/A||1||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / NC / PPM / Alliance / RIR / Volt
 * 29,349||0.59||N/A||1||6||N/A||1||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / MPT / PPM
 * 28,722||0.57||1.1||8||16||7||2||1
 * style="width: 9px" bgcolor=#FF66FF align="center" |
 * align=left|PS / BE / PAN / MPT / PDR
 * 22,694||0.45||0.0||1||5||1||0||1
 * style="width: 9px" bgcolor= align="center" |
 * align=left|LIVRE / Socialist
 * 22,074||0.44||0.1||1||7||2||1||0
 * style="width: 9px" bgcolor=#FF66FF align="center" |
 * align=left|Socialist / People–Animals–Nature / LIVRE
 * 17,265||0.35||N/A||1||3||N/A||0||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|Social Democratic / Earth
 * 16,371||0.33||0.1||3||5||0||1||1
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / Alliance / MPT / PDR
 * 15,230||0.30||N/A||1||3||N/A||0||N/A
 * style="width: 9px" bgcolor=gold align="center" |
 * align=left|We, the Citizens!
 * 15,226||0.30||0.1||20||5||0||0||1
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|Social Democratic / People's / Alliance
 * 14,541||0.29||N/A||4||4||N/A||0||N/A
 * style="width: 9px" bgcolor=green align="center" |
 * align=left|Together for the People
 * 14,073||0.28||0.0||5||5||1||1||0
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / IL / MPT / PPM
 * 14,030||0.28||N/A||2||7||N/A||1||N/A
 * style="width: 9px" bgcolor=#FF66FF align="center" |
 * align=left|Socialist / React, Include, Recycle
 * 13,506||0.27||N/A||1||3||N/A||0||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|Social Democratic / People's Monarchist
 * 9,735||0.19||0.8||2||5||3||0||0
 * style="width: 9px" bgcolor=#FF66FF align="center" |
 * align=left|Socialist / People–Animals–Nature
 * 8,901||0.18||N/A||1||3||N/A||0||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|People's / Social Democratic / Liberal Initiative
 * 7,851||0.16||N/A||1||3||N/A||0||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / PPM / IL
 * 5,726||0.11||N/A||1||3||N/A||0||N/A
 * style="width: 9px" bgcolor=#8B0000 align="center" |
 * align=left|Left Bloc / LIVRE / Volt Portugal
 * 5,539||0.11||N/A||1||1||N/A||0||N/A
 * style="width: 9px" bgcolor=gold align="center" |
 * align=left|We, the Citizens! / People's Monarchist
 * 4,410||0.09||N/A||4||0||N/A||0||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / MPT / PPM
 * 3,785||0.08||0.1||1||2||0||0||0
 * style="width: 9px" bgcolor=#6AD1E3 align="center" |
 * align=left|Alliance
 * 3,765||0.08||N/A||2||0||N/A||0||N/A
 * style="width: 9px" bgcolor=gold align="center" |
 * align=left|We, the Citizens! / React, Include, Recycle
 * 3,354||0,07||N/A||2||1||N/A||0||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / MPT / PPM / Alliance
 * 3,338||0.07||N/A||1||2||N/A||0||N/A
 * style="width: 9px" bgcolor=#0093DD align="center" |
 * align=left|People's / Earth
 * 3,192||0.06||0.1||2||0||0||0||0
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|Social Democratic / People's / Earth
 * 3,150||0.06||0.1||1||4||3||1||1
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|Social Democratic / People's / Liberal Initiative
 * 3,119||0.06||N/A||1||3||N/A||0||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / PPM / IL / Alliance
 * 3,000||0.06||N/A||1||1||N/A||0||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|People's / We, the Citizens! / Alliance
 * 2,811||0.06||N/A||1||1||N/A||0||N/A
 * 2,611||0.05||0.0||8||0||0||0||0
 * style="width: 9px" bgcolor=gold align="center" |
 * align=left|We, the Citizens! / Alliance
 * 2,203||0,04||N/A||3||0||N/A||0||N/A
 * style="width: 9px" bgcolor=Purple align="center" |
 * align=left|Volt Portugal
 * 1,654||0.03||N/A||3||0||N/A||0||N/A
 * style="width: 9px" bgcolor=#013220 align="center" |
 * align=left|Earth / People's Monarchist / Alliance
 * 1,647||0.03||N/A||1||0||N/A||0||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / MPT / PPM / Alliance / PDR
 * 1,625||0.03||N/A||1||0||N/A||0||N/A
 * 1,606||0.03||0.1||1||0||0||0||0
 * style="width: 10px" bgcolor=#CC0033 align="center" |
 * align=left|Labour
 * 1,574||0.03||0.1||8||0||0||0||0
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|People's / Social Democratic
 * 1,542||0.03||0.0||1||1||1||0||0
 * 1,341||0.03||0.2||2||0||0||0||0
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|CDS–PP / NC / MPT / Alliance / PPM
 * 1,162||0.02||N/A||1||0||N/A||0||N/A
 * 988||0.02||0.0||7||0||0||0||0
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|CDS–PP / PDR / Alliance / MPT
 * 908||0.02||N/A||1||0||N/A||0||N/A
 * style="width: 9px" bgcolor=crimson align="center" |
 * align=left|Socialist Alternative Movement
 * 738||0.01||0.0||2||0||0||0||0
 * style="width: 9px" bgcolor=#013220 align="center" |
 * align=left|Earth / Democratic Republican
 * 681||0.01||N/A||2||0||N/A||0||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|CDS–PP / MPT / PPM / NC
 * 627||0.01||N/A||1||0||N/A||0||N/A
 * style="width: 9px" bgcolor=LightSeaGreen align="center" |
 * align=left|React, Include, Recycle
 * 624||0.01||N/A||7||0||N/A||0||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|People's / Earth / People's Monarchist
 * 572||0.01||1.1||1||0||4||0||0
 * 551||0.01||0.1||3||0||0||0||0
 * style="width: 9px" bgcolor=#0093DD align="center" |
 * align=left|People's / Alliance / Democratic Republican
 * 541||0.01||N/A||1||0||N/A||0||N/A
 * style="width: 9px" bgcolor=#6AD1E3 align="center" |
 * align=left|Alliance / Democratic Republican
 * 423||0.01||N/A||1||0||N/A||0||N/A
 * style="width: 9px" bgcolor=#005FAD align="center" |
 * align=left|People's Monarchist / React, Include, Recycle
 * 377||0.01||N/A||1||0||N/A||0||N/A
 * style="width: 9px" bgcolor=black align="center" |
 * align=left|Democratic Republican
 * 319||0.01||0.1||1||0||0||0||0
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|People's / People's Monarchist / Alliance
 * 273||0.01||N/A||1||0||N/A||0||N/A
 * style="width: 9px" bgcolor=LightSeaGreen align="center" |
 * align=left|React, Include, Recycle / Democratic Republican
 * 237||0.00||N/A||1||0||N/A||0||N/A
 * style="width: 9px" bgcolor=black align="center" |
 * align=left|Democratic Republican / Earth / Alliance
 * 234||0.00||N/A||2||0||N/A||0||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|CDS–PP / PSD / PPM
 * 201||0.00||0.0||2||2||2||0||0
 * style="width: 9px" bgcolor=black align="center" |
 * align=left|Democratic Republican / Earth
 * 144||0.00||N/A||1||0||N/A||0||N/A
 * style="width: 9px" bgcolor=#013220 align="center" |
 * align=left|Earth / Alliance / React, Include, Recycle
 * 138||0.00||N/A||1||0||N/A||0||N/A
 * colspan=2 align=left style="background-color:#E9E9E9"|Total valid
 * width="65" align="right" style="background-color:#E9E9E9"|4,797,633
 * width="40" align="right" style="background-color:#E9E9E9"|95.91
 * width="40" align="right" style="background-color:#E9E9E9"|0.5
 * width="40" align="right" style="background-color:#E9E9E9"|1,572
 * width="45" align="right" style="background-color:#E9E9E9"|2,064
 * width="45" align="right" style="background-color:#E9E9E9"|10
 * width="45" align="right" style="background-color:#E9E9E9"|308
 * width="45" align="right" style="background-color:#E9E9E9"|0
 * colspan=2|Blank ballots
 * 125,173||2.50||0.1||colspan=5 rowspan=4|
 * colspan=2|Invalid ballots
 * 79,241||1.58||0.3
 * colspan=2 align=left style="background-color:#E9E9E9"|Total
 * width="65" align="right" style="background-color:#E9E9E9"|5,002,047
 * width="40" align="right" style="background-color:#E9E9E9"|100.00
 * width="40" align="right" style="background-color:#E9E9E9"|
 * colspan=2|Registered voters/turnout
 * 9,323,688||53.65||1.3
 * colspan=11 align=left | Source: Official election 2021 results
 * }
 * 738||0.01||0.0||2||0||0||0||0
 * style="width: 9px" bgcolor=#013220 align="center" |
 * align=left|Earth / Democratic Republican
 * 681||0.01||N/A||2||0||N/A||0||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|CDS–PP / MPT / PPM / NC
 * 627||0.01||N/A||1||0||N/A||0||N/A
 * style="width: 9px" bgcolor=LightSeaGreen align="center" |
 * align=left|React, Include, Recycle
 * 624||0.01||N/A||7||0||N/A||0||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|People's / Earth / People's Monarchist
 * 572||0.01||1.1||1||0||4||0||0
 * 551||0.01||0.1||3||0||0||0||0
 * style="width: 9px" bgcolor=#0093DD align="center" |
 * align=left|People's / Alliance / Democratic Republican
 * 541||0.01||N/A||1||0||N/A||0||N/A
 * style="width: 9px" bgcolor=#6AD1E3 align="center" |
 * align=left|Alliance / Democratic Republican
 * 423||0.01||N/A||1||0||N/A||0||N/A
 * style="width: 9px" bgcolor=#005FAD align="center" |
 * align=left|People's Monarchist / React, Include, Recycle
 * 377||0.01||N/A||1||0||N/A||0||N/A
 * style="width: 9px" bgcolor=black align="center" |
 * align=left|Democratic Republican
 * 319||0.01||0.1||1||0||0||0||0
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|People's / People's Monarchist / Alliance
 * 273||0.01||N/A||1||0||N/A||0||N/A
 * style="width: 9px" bgcolor=LightSeaGreen align="center" |
 * align=left|React, Include, Recycle / Democratic Republican
 * 237||0.00||N/A||1||0||N/A||0||N/A
 * style="width: 9px" bgcolor=black align="center" |
 * align=left|Democratic Republican / Earth / Alliance
 * 234||0.00||N/A||2||0||N/A||0||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|CDS–PP / PSD / PPM
 * 201||0.00||0.0||2||2||2||0||0
 * style="width: 9px" bgcolor=black align="center" |
 * align=left|Democratic Republican / Earth
 * 144||0.00||N/A||1||0||N/A||0||N/A
 * style="width: 9px" bgcolor=#013220 align="center" |
 * align=left|Earth / Alliance / React, Include, Recycle
 * 138||0.00||N/A||1||0||N/A||0||N/A
 * colspan=2 align=left style="background-color:#E9E9E9"|Total valid
 * width="65" align="right" style="background-color:#E9E9E9"|4,797,633
 * width="40" align="right" style="background-color:#E9E9E9"|95.91
 * width="40" align="right" style="background-color:#E9E9E9"|0.5
 * width="40" align="right" style="background-color:#E9E9E9"|1,572
 * width="45" align="right" style="background-color:#E9E9E9"|2,064
 * width="45" align="right" style="background-color:#E9E9E9"|10
 * width="45" align="right" style="background-color:#E9E9E9"|308
 * width="45" align="right" style="background-color:#E9E9E9"|0
 * colspan=2|Blank ballots
 * 125,173||2.50||0.1||colspan=5 rowspan=4|
 * colspan=2|Invalid ballots
 * 79,241||1.58||0.3
 * colspan=2 align=left style="background-color:#E9E9E9"|Total
 * width="65" align="right" style="background-color:#E9E9E9"|5,002,047
 * width="40" align="right" style="background-color:#E9E9E9"|100.00
 * width="40" align="right" style="background-color:#E9E9E9"|
 * colspan=2|Registered voters/turnout
 * 9,323,688||53.65||1.3
 * colspan=11 align=left | Source: Official election 2021 results
 * }
 * width="40" align="right" style="background-color:#E9E9E9"|1,572
 * width="45" align="right" style="background-color:#E9E9E9"|2,064
 * width="45" align="right" style="background-color:#E9E9E9"|10
 * width="45" align="right" style="background-color:#E9E9E9"|308
 * width="45" align="right" style="background-color:#E9E9E9"|0
 * colspan=2|Blank ballots
 * 125,173||2.50||0.1||colspan=5 rowspan=4|
 * colspan=2|Invalid ballots
 * 79,241||1.58||0.3
 * colspan=2 align=left style="background-color:#E9E9E9"|Total
 * width="65" align="right" style="background-color:#E9E9E9"|5,002,047
 * width="40" align="right" style="background-color:#E9E9E9"|100.00
 * width="40" align="right" style="background-color:#E9E9E9"|
 * colspan=2|Registered voters/turnout
 * 9,323,688||53.65||1.3
 * colspan=11 align=left | Source: Official election 2021 results
 * }
 * colspan=2|Registered voters/turnout
 * 9,323,688||53.65||1.3
 * colspan=11 align=left | Source: Official election 2021 results
 * }
 * }

City control
The following table lists party control in all district capitals, as well as in municipalities above 100,000 inhabitants. Population estimates from 2021 Census.

National summary of votes and seats
! 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 ! rowspan="2" style="background-color:#E9E9E9" align=right|Candidacies ! colspan="2" style="background-color:#E9E9E9" align="center"|Mandates ! style="background-color:#E9E9E9" align="center"|Total ! style="background-color:#E9E9E9" align="center"|±
 * - style="background-color:#E9E9E9"
 * 1,645,211||32.89||3.5||292||2,590||141
 * 635,635||12.71||3.1||152||1,273||218
 * style="width: 10px" bgcolor=#FF9900 align="center" |
 * align=left|Social Democratic / People's
 * 537,002||10.74||1.9||92||751||212
 * 434,172||8.68||1.4||303||505||114
 * style="width: 8px" bgcolor=gray align="center" |
 * align=left|Independents
 * 267,300||5.35||1.1||76||412||16
 * style="width: 9px" bgcolor=#202056 align="center" |
 * align=left|CHEGA
 * 221,645||4.43||N/A||167||173||N/A
 * 174,072||3.48||0.7||123||94||31
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / Alliance / MPT / PPM
 * 84,707||1.69||N/A||3||22||N/A
 * 77,069||1.54||1.2||72||118||66
 * style="width: 9px" bgcolor=#00ADEF align="center" |
 * align=left|Liberal Initiative
 * 76,349||1.53||N/A||43||26||N/A
 * style="width: 9px" bgcolor=#FF66FF align="center" |
 * align=left|Socialist / LIVRE
 * 74,768||1.50||N/A||1||17||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / PPM
 * 74,234||1.48||0.1||14||96||54
 * 74,229||1.48||0.1||41||23||3
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / Alliance / MPT / PDR / PPM / RIR
 * 43,862||0.88||N/A||2||16||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / PPM / Alliance
 * 41,358||0.83||N/A||3||25||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / MPT / PPM
 * 28,203||0.58||1.1||8||44||29
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / NC / PPM / Alliance / RIR / Volt
 * 26,916||0.54||N/A||1||15||N/A
 * style="width: 9px" bgcolor=#FF66FF align="center" |
 * align=left|PS / BE / PAN / MPT / PDR
 * 21,624||0.43||0.0||1||14||1
 * style="width: 9px" bgcolor=#00CD8C align="center" |
 * align=left|LIVRE / Socialist
 * 20,730||0.41||0.1||1||20||6
 * style="width: 9px" bgcolor=#FF66FF align="center" |
 * align=left|Socialist / People–Animals–Nature / LIVRE
 * 18,465||0.37||N/A||1||8||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|Social Democratic / Earth
 * 16,343||0.33||0.1||3||14||7
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / Alliance / MPT / PDR
 * 15,052||0.30||N/A||1||9||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|Social Democratic / People's / Alliance
 * 14,965||0.30||N/A||4||16||N/A
 * style="width: 9px" bgcolor=#FF66FF align="center" |
 * align=left|Socialist / React, Include, Recycle
 * 13,955||0.28||N/A||1||10||N/A
 * style="width: 9px" bgcolor=green align="center" |
 * align=left|Together for the People
 * 13,903||0.28||0.0||5||13||4
 * style="width: 9px" bgcolor=gold align="center" |
 * align=left|We, the Citizens!
 * 13,865||0.28||0.1||17||20||5
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / IL / MPT / PPM
 * 12,867||0.26||N/A||2||17||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|Social Democratic / People's Monarchist
 * 10,254||0.21||0.7||2||16||10
 * style="width: 9px" bgcolor=#FF66FF align="center" |
 * align=left|Socialist / People–Animals–Nature
 * 9,183||0.18||N/A||1||8||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|People's / Social Democratic / Liberal Initiative
 * 8,434||0.17||N/A||1||8||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / PPM / IL
 * 6,293||0.13||N/A||1||10||N/A
 * style="width: 9px" bgcolor=#8B0000 align="center" |
 * align=left|Left Bloc / LIVRE / Volt
 * 5,769||0.12||N/A||1||3||N/A
 * style="width: 9px" bgcolor=gold align="center" |
 * align=left|We, the Citizens! / People's Monarchist
 * 4,674||0.09||N/A||1||2||N/A
 * style="width: 9px" bgcolor=#6AD1E3 align="center" |
 * align=left|Alliance
 * 3,810||0.08||N/A||3||2||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / MPT / PPM
 * 3,615||0.07||0.1||1||5||0
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / MPT / PPM / Alliance
 * 3,453||0.07||N/A||1||5||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|Social Democratic / People's / Liberal Initiative
 * 3,335||0.07||N/A||1||8||N/A
 * style="width: 9px" bgcolor=#0093DD align="center" |
 * align=left|People's / Earth
 * 3,301||0.07||0.1||2||1||1
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|Social Democratic / People's / Earth
 * 3,244||0.06||0.2||1||11||13
 * style="width: 9px" bgcolor=gold align="center" |
 * align=left|We, the Citizens! / React, Include, Recycle
 * 3,038||0,06||N/A||1||3||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / PPM / IL / Alliance
 * 2,856||0.06||N/A||1||4||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|People's / We, the Citizens! / Alliance
 * 2,667||0.05||N/A||1||3||N/A
 * 2,564||0.05||0.0||7||0||0
 * style="width: 9px" bgcolor=gold align="center" |
 * align=left|We, the Citizens! / Alliance
 * 2,482||0,05||N/A||3||3||N/A
 * style="width: 10px" bgcolor=#CC0033 align="center" |
 * align=left|Labour
 * 1,809||0.04||0.1||8||0||1
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|People's / Social Democratic
 * 1,666||0.03||0.0||1||4||2
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / MPT / PPM / Alliance / PDR
 * 1,659||0.03||N/A||1||2||N/A
 * 1,650||0.03||0.1||1||1||1
 * style="width: 9px" bgcolor=Purple align="center" |
 * align=left|Volt Portugal
 * 1,644||0.03||N/A||2||0||N/A
 * style="width: 9px" bgcolor=#013220 align="center" |
 * align=left|Earth / People's Monarchist / Alliance
 * 1,587||0.03||N/A||1||1||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|CDS–PP / NC / MPT / Alliance / PPM
 * 1,488||0.03||N/A||1||1||N/A
 * style="width: 9px" bgcolor=#013220 align="center" |
 * align=left|Earth / Democratic Republican
 * 996||0.02||N/A||2||0||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|CDS–PP / PDR / Alliance / MPT
 * 962||0.02||N/A||1||0||N/A
 * 918||0.02||0.2||1||0||0
 * style="width: 9px" bgcolor=crimson align="center" |
 * align=left|Socialist Alternative Movement
 * 889||0.02||N/A||2||0||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|People's / Earth / People's Monarchist
 * 861||0.02||N/A||1||1||N/A
 * 755||0.01||0.1||3||0||0
 * 749||0.01||0.0||4||0||0
 * style="width: 9px" bgcolor=LightSeaGreen align="center" |
 * align=left|React, Include, Recycle
 * 748||0.01||N/A||7||0||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|CDS–PP / MPT / PPM / NC
 * 737||0.01||N/A||1||0||N/A
 * style="width: 9px" bgcolor=#0093DD align="center" |
 * align=left|People's / Alliance / Democratic Republican
 * 566||0.01||N/A||1||0||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|People's / People's Monarchist / Alliance
 * 460||0.01||N/A||1||0||N/A
 * style="width: 9px" bgcolor=#6AD1E3 align="center" |
 * align=left|Alliance / Democratic Republican
 * 450||0.01||N/A||1||0||N/A
 * style="width: 9px" bgcolor=#005FAD align="center" |
 * align=left|People's Monarchist / React, Include, Recycle
 * 409||0.01||N/A||1||0||N/A
 * style="width: 9px" bgcolor=LightSeaGreen align="center" |
 * align=left|React, Include, Recycle / Democratic Republican
 * 259||0.01||N/A||1||0||N/A
 * style="width: 9px" bgcolor=black align="center" |
 * align=left|Democratic Republican / Earth / Alliance
 * 252||0.01||N/A||2||0||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|CDS–PP / PSD / PPM
 * 209||0.00||0.0||2||5||5
 * style="width: 9px" bgcolor=black align="center" |
 * align=left|Democratic Republican / Earth
 * 164||0.00||N/A||1||0||N/A
 * style="width: 9px" bgcolor=#013220 align="center" |
 * align=left|Earth / Alliance / React, Include, Recycle
 * 131||0.00||N/A||1||0||N/A
 * colspan=2 align=left style="background-color:#E9E9E9"|Total valid
 * width="65" align="right" style="background-color:#E9E9E9"|4,779,491
 * width="40" align="right" style="background-color:#E9E9E9"|95.56
 * width="40" align="right" style="background-color:#E9E9E9"|0.5
 * width="40" align="right" style="background-color:#E9E9E9"|1,506
 * width="45" align="right" style="background-color:#E9E9E9"|6,448
 * width="45" align="right" style="background-color:#E9E9E9"|13
 * colspan=2|Blank ballots
 * 139,191||2.78||0.1||colspan=3 rowspan=4|
 * colspan=2|Invalid ballots
 * 83,028||1.66||0.3
 * colspan=2 align=left style="background-color:#E9E9E9"|Total
 * width="65" align="right" style="background-color:#E9E9E9"|5,001,710
 * width="40" align="right" style="background-color:#E9E9E9"|100.00
 * width="40" align="right" style="background-color:#E9E9E9"|
 * colspan=2|Registered voters/turnout
 * 9,323,688||53.65||1.3
 * colspan=11 align=left | Source: Official election 2021 results, RTP Election 2021 results
 * }
 * 918||0.02||0.2||1||0||0
 * style="width: 9px" bgcolor=crimson align="center" |
 * align=left|Socialist Alternative Movement
 * 889||0.02||N/A||2||0||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|People's / Earth / People's Monarchist
 * 861||0.02||N/A||1||1||N/A
 * 755||0.01||0.1||3||0||0
 * 749||0.01||0.0||4||0||0
 * style="width: 9px" bgcolor=LightSeaGreen align="center" |
 * align=left|React, Include, Recycle
 * 748||0.01||N/A||7||0||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|CDS–PP / MPT / PPM / NC
 * 737||0.01||N/A||1||0||N/A
 * style="width: 9px" bgcolor=#0093DD align="center" |
 * align=left|People's / Alliance / Democratic Republican
 * 566||0.01||N/A||1||0||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|People's / People's Monarchist / Alliance
 * 460||0.01||N/A||1||0||N/A
 * style="width: 9px" bgcolor=#6AD1E3 align="center" |
 * align=left|Alliance / Democratic Republican
 * 450||0.01||N/A||1||0||N/A
 * style="width: 9px" bgcolor=#005FAD align="center" |
 * align=left|People's Monarchist / React, Include, Recycle
 * 409||0.01||N/A||1||0||N/A
 * style="width: 9px" bgcolor=LightSeaGreen align="center" |
 * align=left|React, Include, Recycle / Democratic Republican
 * 259||0.01||N/A||1||0||N/A
 * style="width: 9px" bgcolor=black align="center" |
 * align=left|Democratic Republican / Earth / Alliance
 * 252||0.01||N/A||2||0||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|CDS–PP / PSD / PPM
 * 209||0.00||0.0||2||5||5
 * style="width: 9px" bgcolor=black align="center" |
 * align=left|Democratic Republican / Earth
 * 164||0.00||N/A||1||0||N/A
 * style="width: 9px" bgcolor=#013220 align="center" |
 * align=left|Earth / Alliance / React, Include, Recycle
 * 131||0.00||N/A||1||0||N/A
 * colspan=2 align=left style="background-color:#E9E9E9"|Total valid
 * width="65" align="right" style="background-color:#E9E9E9"|4,779,491
 * width="40" align="right" style="background-color:#E9E9E9"|95.56
 * width="40" align="right" style="background-color:#E9E9E9"|0.5
 * width="40" align="right" style="background-color:#E9E9E9"|1,506
 * width="45" align="right" style="background-color:#E9E9E9"|6,448
 * width="45" align="right" style="background-color:#E9E9E9"|13
 * colspan=2|Blank ballots
 * 139,191||2.78||0.1||colspan=3 rowspan=4|
 * colspan=2|Invalid ballots
 * 83,028||1.66||0.3
 * colspan=2 align=left style="background-color:#E9E9E9"|Total
 * width="65" align="right" style="background-color:#E9E9E9"|5,001,710
 * width="40" align="right" style="background-color:#E9E9E9"|100.00
 * width="40" align="right" style="background-color:#E9E9E9"|
 * colspan=2|Registered voters/turnout
 * 9,323,688||53.65||1.3
 * colspan=11 align=left | Source: Official election 2021 results, RTP Election 2021 results
 * }
 * colspan=2 align=left style="background-color:#E9E9E9"|Total valid
 * width="65" align="right" style="background-color:#E9E9E9"|4,779,491
 * width="40" align="right" style="background-color:#E9E9E9"|95.56
 * width="40" align="right" style="background-color:#E9E9E9"|0.5
 * width="40" align="right" style="background-color:#E9E9E9"|1,506
 * width="45" align="right" style="background-color:#E9E9E9"|6,448
 * width="45" align="right" style="background-color:#E9E9E9"|13
 * colspan=2|Blank ballots
 * 139,191||2.78||0.1||colspan=3 rowspan=4|
 * colspan=2|Invalid ballots
 * 83,028||1.66||0.3
 * colspan=2 align=left style="background-color:#E9E9E9"|Total
 * width="65" align="right" style="background-color:#E9E9E9"|5,001,710
 * width="40" align="right" style="background-color:#E9E9E9"|100.00
 * width="40" align="right" style="background-color:#E9E9E9"|
 * colspan=2|Registered voters/turnout
 * 9,323,688||53.65||1.3
 * colspan=11 align=left | Source: Official election 2021 results, RTP Election 2021 results
 * }
 * colspan=2|Registered voters/turnout
 * 9,323,688||53.65||1.3
 * colspan=11 align=left | Source: Official election 2021 results, RTP Election 2021 results
 * }
 * colspan=11 align=left | Source: Official election 2021 results, RTP Election 2021 results
 * }

National summary of votes and seats
! 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 ! rowspan="2" style="background-color:#E9E9E9" align=right|Candidacies ! colspan="2" style="background-color:#E9E9E9" align="center"|Mandates ! colspan="2" style="background-color:#E9E9E9" align="center"|Presidents ! style="background-color:#E9E9E9" align="center"|Total ! style="background-color:#E9E9E9" align="center"|± ! style="background-color:#E9E9E9" align="center"|Total ! style="background-color:#E9E9E9" align="center"|±
 * - style="background-color:#E9E9E9"
 * 1,664,556||33.30||3.0||2,448||10,316||307||1,248||47
 * 640,576||12.81||2.9||1,323||5,688||946||757||68
 * style="width: 10px" bgcolor=#FF9900 align="center" |
 * align=left|Social Democratic / People's
 * 521,743||10.44||1.9||854||3,210||724||336||65
 * 454,099||9.08||1.1||1,630||1,446||217||112||27
 * style="width: 8px" bgcolor=gray align="center" |
 * align=left|Independents
 * 408,434||8.17||1.6||783||3,232||123||414||12
 * style="width: 9px" bgcolor=#202056 align="center" |
 * align=left|CHEGA
 * 155,861||3.12||N/A||505||205||N/A||0||N/A
 * 138,323||2.77||0.5||372||162||51||0||0
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / Alliance / MPT / PPM
 * 83,221||1.67||N/A||31||135||N/A||10||N/A
 * style="width: 9px" bgcolor=#FF66FF align="center" |
 * align=left|Socialist / LIVRE
 * 80,807||1.62||N/A||24||146||N/A||13||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / PPM
 * 80,028||1.60||0.4||117||412||162||34||6
 * 68,133||1.36||1.1||266||416||218||41||13
 * style="width: 9px" bgcolor=#00ADEF align="center" |
 * align=left|Liberal Initiative
 * 49,832||1.00||N/A||114||45||N/A||0||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / Alliance / MPT / PDR / PPM / RIR
 * 45,473||0.91||N/A||15||75||N/A||3||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / PPM / Alliance
 * 36,814||0.74||N/A||48||195||N/A||21||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / MPT / PPM
 * 28,167||0.56||0.8||48||114||124||10||1
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / NC / PPM / Alliance / RIR / Volt
 * 26,254||0.53||N/A||18||70||N/A||6||N/A
 * 25,754||0.52||0.3||60||16||10||0||0
 * style="width: 9px" bgcolor=#FF66FF align="center" |
 * align=left|PS / BE / PAN / MPT / PDR
 * 21,622||0.43||0.0||10||59||1||1||4
 * style="width: 9px" bgcolor=#00CD8C align="center" |
 * align=left|LIVRE / Socialist
 * 20,043||0.40||0.2||19||122||68||17||10
 * style="width: 9px" bgcolor=#FF66FF align="center" |
 * align=left|Socialist / People–Animals–Nature / LIVRE
 * 19,952||0.40||N/A||4||23||N/A||0||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|Social Democratic / Earth
 * 18,042||0.36||0.1||17||66||14||8||7
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|Social Democratic / People's / Alliance
 * 15,503||0.30||N/A||26||70||N/A||0||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / Alliance / MPT / PDR
 * 14,928||0.30||N/A||6||27||N/A||0||N/A
 * style="width: 9px" bgcolor=#FF66FF align="center" |
 * align=left|Socialist / React, Include, Recycle
 * 14,324||0.29||N/A||25||79||N/A||3||N/A
 * style="width: 9px" bgcolor=green align="center" |
 * align=left|Together for the People
 * 14,007||0.28||0.0||17||43||2||5||0
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / IL / MPT / PPM
 * 12,882||0.28||N/A||10||36||N/A||2||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|Social Democratic / People's Monarchist
 * 11,021||0.22||0.8||18||60||104||3||11
 * style="width: 9px" bgcolor=#FF66FF align="center" |
 * align=left|Socialist / People–Animals–Nature
 * 8,873||0.18||N/A||9||33||N/A||1||N/A
 * style="width: 9px" bgcolor=gold align="center" |
 * align=left|We, the Citizens!
 * 8,070||0.16||0.0||56||47||5||3||0
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / PPM / IL
 * 6,599||0.13||N/A||16||66||N/A||9||N/A
 * style="width: 9px" bgcolor=#8B0000 align="center" |
 * align=left|Left Bloc / LIVRE / Volt
 * 5,601||0.11||N/A||5||5||N/A||0||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|People's / Social Democratic / Liberal Initiative
 * 5,031||0.10||N/A||11||24||N/A||1||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|Social Democratic / People's / Earth
 * 4,050||0.08||0.1||8||29||28||3||2
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / MPT / PPM / Alliance
 * 4,008||0.08||N/A||4||15||N/A||1||N/A
 * style="width: 9px" bgcolor=gold align="center" |
 * align=left|We, the Citizens! / React, Include, Recycle
 * 3,807||0.08||N/A||6||10||N/A||0||N/A
 * style="width: 9px" bgcolor=gold align="center" |
 * align=left|We, the Citizens! / People's Monarchist
 * 3,559||0.07||N/A||11||3||N/A||0||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|Social Democratic / People's / Liberal Initiative
 * 3,522||0.07||N/A||1||6||N/A||0||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / MPT / PPM
 * 3,520||0.07||0.1||3||8||4||0||0
 * style="width: 9px" bgcolor=#0093DD align="center" |
 * align=left|People's / Earth
 * 3,395||0.07||0.1||21||1||1||0||0
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|People's / We, the Citizens! / Alliance
 * 2,862||0.06||N/A||3||4||N/A||0||N/A
 * style="width: 9px" bgcolor=gold align="center" |
 * align=left|We, the Citizens! / Alliance
 * 2,698||0.05||N/A||11||8||N/A||0||N/A
 * style="width: 9px" bgcolor=#6AD1E3 align="center" |
 * align=left|Alliance
 * 2,544||0.05||N/A||8||6||N/A||0||N/A
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / PPM / IL / Alliance
 * 2,514||0.05||N/A||2||6||N/A||0||N/A
 * style="width: 10px" bgcolor=#CC0033 align="center" |
 * align=left|Labour
 * 1,969||0.04||0.1||32||0||0||0||0
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|People's / Social Democratic
 * 1,783||0.04||0.0||6||15||10||2||0
 * style="width: 9px" bgcolor=#FF9900 align="center" |
 * align=left|PSD / CDS–PP / MPT / PPM / Alliance / PDR
 * 1,743||0.03||N/A||4||3||N/A||0||N/A
 * 1,671||0.03||0.1||6||7||0||0||0
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|CDS–PP / NC / MPT / Alliance / PPM
 * 1,558||0.03||N/A||6||4||N/A||0||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|CDS–PP / PDR / Alliance / MPT
 * 1,139||0.02||N/A||4||0||N/A||0||N/A
 * style="width: 9px" bgcolor=LightSeaGreen align="center" |
 * align=left|React, Include, Recycle
 * 761||0.02||N/A||5||1||N/A||0||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|People's / Earth / People's Monarchist
 * 652||0.01||0.8||5||1||76||0||0
 * style="width: 9px" bgcolor=#0093DD align="center" |
 * align=left|People's / Alliance / Democratic Republican
 * 575||0.01||N/A||3||0||N/A||0||N/A
 * style="width: 9px" bgcolor=#013220 align="center" |
 * align=left|Earth / Democratic Republican
 * 556||0.01||N/A||3||5||N/A||1||N/A
 * 503||0.01||0.0||9||5||4||1||1
 * 482||0.01||0.0||3||0||2||0||0
 * style="width: 9px" bgcolor=Purple align="center" |
 * align=left|Volt Portugal
 * 378||0.01||N/A||4||0||N/A||0||N/A
 * style="width: 9px" bgcolor=#005FAD align="center" |
 * align=left|People's Monarchist / React, Include, Recycle
 * 328||0.01||N/A||3||0||N/A||0||N/A
 * 318||0.01||0.1||2||0||0||0||0
 * style="width: 9px" bgcolor=#013220 align="center" |
 * align=left|Earth / People's Monarchist / Alliance
 * 293||0.01||N/A||3||3||N/A||0||N/A
 * style="width: 9px" bgcolor=#6AD1E3 align="center" |
 * align=left|Alliance / Democratic Republican
 * 288||0.01||N/A||2||0||N/A||0||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|CDS–PP / MPT / PPM / NC
 * 246||0.00||N/A||1||3||N/A||0||N/A
 * style="width: 9px" bgcolor=black align="center" |
 * align=left|Democratic Republican / Earth / Alliance
 * 223||0.00||N/A||2||0||N/A||0||N/A
 * style="width: 9px" bgcolor=LightSeaGreen align="center" |
 * align=left|React, Include, Recycle / Democratic Republican
 * 214||0.00||N/A||4||0||N/A||0||N/A
 * 186||0.00||0.0||6||0||0||0||0
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|CDS–PP / PSD / PPM
 * 115||0.00||N/A||2||0||N/A||0||N/A
 * style="width: 9px" bgcolor=#013220 align="center" |
 * align=left|Earth / Alliance / React, Include, Recycle
 * 102||0.00||N/A||5||0||N/A||0||N/A
 * style="width: 9px" bgcolor=black align="center" |
 * align=left|Democratic Republican
 * 48||0.00||0.0||1||0||4||0||0
 * colspan=2 align=left style="background-color:#E9E9E9"|Total valid
 * width="65" align="right" style="background-color:#E9E9E9"|4,757,183
 * width="40" align="right" style="background-color:#E9E9E9"|95.16
 * width="40" align="right" style="background-color:#E9E9E9"|0.3
 * width="40" align="right" style="background-color:#E9E9E9"|9,104
 * width="45" align="right" style="background-color:#E9E9E9"|26,790
 * width="45" align="right" style="background-color:#E9E9E9"|229
 * width="45" align="right" style="background-color:#E9E9E9"|3,066
 * width="45" align="right" style="background-color:#E9E9E9"|19
 * colspan=2|Blank ballots
 * 145,769||2.92||0.0||colspan=5 rowspan=4|
 * colspan=2|Invalid ballots
 * 96,412||1.93||0.3
 * colspan=2 align=left style="background-color:#E9E9E9"|Total
 * width="65" align="right" style="background-color:#E9E9E9"|4,999,364
 * width="40" align="right" style="background-color:#E9E9E9"|100.00
 * width="40" align="right" style="background-color:#E9E9E9"|
 * colspan=2|Registered voters/turnout
 * 9,319,425||53.64||1.3
 * colspan=11 align=left | Source: Official election 2021 results, RTP Election 2021 results
 * }
 * 575||0.01||N/A||3||0||N/A||0||N/A
 * style="width: 9px" bgcolor=#013220 align="center" |
 * align=left|Earth / Democratic Republican
 * 556||0.01||N/A||3||5||N/A||1||N/A
 * 503||0.01||0.0||9||5||4||1||1
 * 482||0.01||0.0||3||0||2||0||0
 * style="width: 9px" bgcolor=Purple align="center" |
 * align=left|Volt Portugal
 * 378||0.01||N/A||4||0||N/A||0||N/A
 * style="width: 9px" bgcolor=#005FAD align="center" |
 * align=left|People's Monarchist / React, Include, Recycle
 * 328||0.01||N/A||3||0||N/A||0||N/A
 * 318||0.01||0.1||2||0||0||0||0
 * style="width: 9px" bgcolor=#013220 align="center" |
 * align=left|Earth / People's Monarchist / Alliance
 * 293||0.01||N/A||3||3||N/A||0||N/A
 * style="width: 9px" bgcolor=#6AD1E3 align="center" |
 * align=left|Alliance / Democratic Republican
 * 288||0.01||N/A||2||0||N/A||0||N/A
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|CDS–PP / MPT / PPM / NC
 * 246||0.00||N/A||1||3||N/A||0||N/A
 * style="width: 9px" bgcolor=black align="center" |
 * align=left|Democratic Republican / Earth / Alliance
 * 223||0.00||N/A||2||0||N/A||0||N/A
 * style="width: 9px" bgcolor=LightSeaGreen align="center" |
 * align=left|React, Include, Recycle / Democratic Republican
 * 214||0.00||N/A||4||0||N/A||0||N/A
 * 186||0.00||0.0||6||0||0||0||0
 * style="width: 8px" bgcolor=#0093DD align="center" |
 * align=left|CDS–PP / PSD / PPM
 * 115||0.00||N/A||2||0||N/A||0||N/A
 * style="width: 9px" bgcolor=#013220 align="center" |
 * align=left|Earth / Alliance / React, Include, Recycle
 * 102||0.00||N/A||5||0||N/A||0||N/A
 * style="width: 9px" bgcolor=black align="center" |
 * align=left|Democratic Republican
 * 48||0.00||0.0||1||0||4||0||0
 * colspan=2 align=left style="background-color:#E9E9E9"|Total valid
 * width="65" align="right" style="background-color:#E9E9E9"|4,757,183
 * width="40" align="right" style="background-color:#E9E9E9"|95.16
 * width="40" align="right" style="background-color:#E9E9E9"|0.3
 * width="40" align="right" style="background-color:#E9E9E9"|9,104
 * width="45" align="right" style="background-color:#E9E9E9"|26,790
 * width="45" align="right" style="background-color:#E9E9E9"|229
 * width="45" align="right" style="background-color:#E9E9E9"|3,066
 * width="45" align="right" style="background-color:#E9E9E9"|19
 * colspan=2|Blank ballots
 * 145,769||2.92||0.0||colspan=5 rowspan=4|
 * colspan=2|Invalid ballots
 * 96,412||1.93||0.3
 * colspan=2 align=left style="background-color:#E9E9E9"|Total
 * width="65" align="right" style="background-color:#E9E9E9"|4,999,364
 * width="40" align="right" style="background-color:#E9E9E9"|100.00
 * width="40" align="right" style="background-color:#E9E9E9"|
 * colspan=2|Registered voters/turnout
 * 9,319,425||53.64||1.3
 * colspan=11 align=left | Source: Official election 2021 results, RTP Election 2021 results
 * }
 * width="65" align="right" style="background-color:#E9E9E9"|4,757,183
 * width="40" align="right" style="background-color:#E9E9E9"|95.16
 * width="40" align="right" style="background-color:#E9E9E9"|0.3
 * width="40" align="right" style="background-color:#E9E9E9"|9,104
 * width="45" align="right" style="background-color:#E9E9E9"|26,790
 * width="45" align="right" style="background-color:#E9E9E9"|229
 * width="45" align="right" style="background-color:#E9E9E9"|3,066
 * width="45" align="right" style="background-color:#E9E9E9"|19
 * colspan=2|Blank ballots
 * 145,769||2.92||0.0||colspan=5 rowspan=4|
 * colspan=2|Invalid ballots
 * 96,412||1.93||0.3
 * colspan=2 align=left style="background-color:#E9E9E9"|Total
 * width="65" align="right" style="background-color:#E9E9E9"|4,999,364
 * width="40" align="right" style="background-color:#E9E9E9"|100.00
 * width="40" align="right" style="background-color:#E9E9E9"|
 * colspan=2|Registered voters/turnout
 * 9,319,425||53.64||1.3
 * colspan=11 align=left | Source: Official election 2021 results, RTP Election 2021 results
 * }
 * colspan=2|Registered voters/turnout
 * 9,319,425||53.64||1.3
 * colspan=11 align=left | Source: Official election 2021 results, RTP Election 2021 results
 * }
 * }