This article presents the results breakdown of the local elections held in Catalonia on 28 May 2023. The following tables show detailed results in the autonomous community's most populous municipalities, sorted alphabetically.

Opinion polls

City control The following table lists party control in the most populous municipalities, including provincial capitals (shown in bold). Gains for a party are displayed with the cell's background shaded in that party's colour.

Municipality Population Previous control New control Badalona 223,506 Socialists' Party of Catalonia (PSC–PSOE) People's Party (PP) Barcelona 1,636,193 Barcelona in Common (BComú) Socialists' Party of Catalonia (PSC–PSOE) Cornellà de Llobregat 89,039 Socialists' Party of Catalonia (PSC–PSOE) Socialists' Party of Catalonia (PSC–PSOE) Girona 102,666 Together for Catalonia (Junts) Let's Win Girona (GGI) L'Hospitalet de Llobregat 265,444 Socialists' Party of Catalonia (PSC–PSOE) Socialists' Party of Catalonia (PSC–PSOE) Lleida 140,797 Republican Left of Catalonia (ERC) Socialists' Party of Catalonia (PSC–PSOE) Manresa 77,459 Republican Left of Catalonia (ERC) Republican Left of Catalonia (ERC) Mataró 128,956 Socialists' Party of Catalonia (PSC–PSOE) Socialists' Party of Catalonia (PSC–PSOE) Reus 106,741 Together for Catalonia (Junts) Socialists' Party of Catalonia (PSC–PSOE) Rubí 79,007 Socialists' Party of Catalonia (PSC–PSOE) Socialists' Party of Catalonia (PSC–PSOE) Sabadell 215,760 Socialists' Party of Catalonia (PSC–PSOE) Socialists' Party of Catalonia (PSC–PSOE) Sant Boi de Llobregat 83,371 Socialists' Party of Catalonia (PSC–PSOE) Socialists' Party of Catalonia (PSC–PSOE) Sant Cugat del Vallès 95,725 Republican Left of Catalonia (ERC) Together for Catalonia (Junts) Santa Coloma de Gramenet 117,981 Socialists' Party of Catalonia (PSC–PSOE) Socialists' Party of Catalonia (PSC–PSOE) Tarragona 134,883 Republican Left of Catalonia (ERC) Socialists' Party of Catalonia (PSC–PSOE) Terrassa 224,114 All for Terrassa (TxT) All for Terrassa (TxT)

Municipalities Badalona Population: 223,506 + ← Summary of the 28 May 2023 City Council of Badalona election results → Parties and alliances Popular vote Seats Votes % ±pp Total +/− People's Party (PP) 50,163 55.69 +18.10 18 +7 Socialists' Party of Catalonia–United–Progress Candidacy (PSC–CP) 13,164 14.62 −5.32 4 −2 Republican Left of Catalonia–Municipal Agreement (ERC–AM)1 6,848 7.60 n/a 2 −1 Badalona in Common We Can–Confluence (BComúP–C) 6,301 7.00 −1.52 2 ±0 Let's Win Badalona in Common–Municipalists of Catalonia (GBeC–MCat)1 5,499 6.11 n/a 1 −3 Together–Municipal Commitment (CM)2 4,291 4.76 −0.39 0 −1 Vox (Vox) 1,210 1.34 +0.95 0 ±0 Brave (Valents) 579 0.64 New 0 ±0 Sum Badalona–Now Local Agreement (BDN+–Ara PL) 427 0.47 New 0 ±0 Citizens–Party of the Citizenry (CS) 266 0.30 −1.47 0 ±0 National Front of Catalonia (FNC) 181 0.20 New 0 ±0 Blank ballots 1,140 1.27 +0.74 Total 90,069 27 ±0 Valid votes 90,069 99.15 −0.58 Invalid votes 772 0.85 +0.58 Votes cast / turnout 90,841 58.07 −5.77 Abstentions 65,582 41.93 +5.77 Registered voters 156,423 Sources

Barcelona

Population: 1,636,193

Cornellà de Llobregat Population: 89,039 + ← Summary of the 28 May 2023 City Council of Cornellà de Llobregat election results → Parties and alliances Popular vote Seats Votes % ±pp Total +/− Socialists' Party of Catalonia–Progress Candidacy (PSC–CP) 14,037 43.37 −4.08 13 −1 Republican Left of Catalonia+EUiA–Municipal Agreement (ERC+EUiA–AM) 4,175 12.90 −1.18 4 ±0 Cornellà in Common We Can–Confluence (CECP–C) 3,253 10.05 +2.78 3 +1 People's Party (PP) 3,109 9.60 +4.85 3 +3 Vox (Vox) 2,714 8.38 +6.28 2 +2 We Can (Podemos) 1,121 3.46 −4.26 0 −2 CUP–Cornellà Left Alternative–Municipalist Alternative (CUP–AMunt) 1,055 3.26 −0.25 0 ±0 Together for Catalonia–Municipal Commitment (CM)1 1,017 3.14 +0.59 0 ±0 Citizens–Party of the Citizenry (CS) 783 2.42 −7.53 0 −3 Brave (Valents) 496 1.53 New 0 ±0 Now Cornellà–Now Local Agreement (Ara PL) 155 0.48 New 0 ±0 Blank ballots 454 1.40 +0.92 Total 32,369 25 ±0 Valid votes 32,369 98.86 −0.88 Invalid votes 373 1.14 +0.88 Votes cast / turnout 32,742 51.74 −9.29 Abstentions 30,544 48.26 +9.29 Registered voters 63,286 Sources

Girona Population: 102,666 + ← Summary of the 28 May 2023 City Council of Girona election results → Parties and alliances Popular vote Seats Votes % ±pp Total +/− Socialists' Party of Catalonia–Progress Candidacy (PSC–CP) 8,644 25.22 +6.50 8 +2 Let's Win Girona–Municipalist Alternative (GGI–AMunt) 7,989 23.31 +4.16 8 +2 Together for Girona–Municipal Commitment (CM)1 6,950 20.28 −10.68 6 −3 Republican Left of Catalonia–Municipal Agreement (ERC–AM) 3,151 9.19 −5.30 3 −1 People's Party (PP) 1,791 5.23 +1.94 1 +1 Vox (Vox) 1,740 5.08 +3.71 1 +1 Now Girona–Now Local Agreement (Ara PL) 1,579 4.61 New 0 ±0 Girona in Common We Can–Confluence (GeCP–C) 892 2.60 −0.82 0 ±0 Brave (Valents) 262 0.76 New 0 ±0 Blank Seats to Leave Empty Seats (EB) 228 0.67 New 0 ±0 Citizens–Party of the Citizenry (CS) 198 0.58 −6.08 0 −2 National Front of Catalonia (FNC) 158 0.46 New 0 ±0 Girona for Girona (GIxGI) 133 0.39 New 0 ±0 Blank ballots 554 1.62 +1.06 Total 34,269 27 ±0 Valid votes 34,269 98.41 −1.24 Invalid votes 553 1.59 +1.24 Votes cast / turnout 34,822 50.82 −14.28 Abstentions 33,693 49.18 +14.28 Registered voters 68,515 Sources

L'Hospitalet de Llobregat Population: 265,444 + ← Summary of the 28 May 2023 City Council of L'Hospitalet de Llobregat election results → Parties and alliances Popular vote Seats Votes % ±pp Total +/− Socialists' Party of Catalonia–Progress Candidacy (PSC–CP) 31,777 38.43 −4.92 13 −1 Republican Left of Catalonia+EUiA–Municipal Agreement (ERC+EUiA–AM) 10,560 12.77 −3.44 4 −1 People's Party (PP) 9,945 12.03 +6.87 4 +3 Vox (Vox) 8,494 10.27 +7.15 3 +3 L'Hospitalet in Common We Can–Confluence (LHECP–C) 8,126 9.83 −1.36 3 ±0 Together for L'Hospitalet–Municipal Commitment (CM)1 3,075 3.72 +0.26 0 ±0 Citizens–Party of the Citizenry (CS) 1,986 2.40 −9.40 0 −4 Popular Unity Candidacy–Municipalist Alternative (CUP–AMunt) 1,875 2.27 +0.21 0 ±0 Neighbours of L'Hospitalet (VLH) 1,761 2.13 New 0 ±0 Brave (Valents) 1,252 1.51 New 0 ±0 L'Hospitalet Left Alternative (AELH) 833 1.01 +0.10 0 ±0 Decide L'Hospitalet (Decideix LH) 485 0.59 New 0 ±0 European Union of Pensioners (UEP) 362 0.44 New 0 ±0 Zero Cuts (Recortes Cero) 352 0.43 New 0 ±0 Boost L'Hospitalet–Now Local Agreement (Ara PL) 252 0.30 New 0 ±0 We Propose for the Minorities (Proponemos XM) 140 0.17 −0.02 0 ±0 Labour Party–Effective Democracy–Valencian Republic (PTDEFRV) 116 0.14 New 0 ±0 Blank ballots 1,290 1.56 +1.12 Total 82,681 27 ±0 Valid votes 82,681 98.79 −0.82 Invalid votes 1,011 1.21 +0.82 Votes cast / turnout 83,692 47.46 −10.02 Abstentions 92,632 52.54 +10.02 Registered voters 176,324 Sources

Lleida Population: 140,797 + ← Summary of the 28 May 2023 City Council of Lleida election results → Parties and alliances Popular vote Seats Votes % ±pp Total +/− Socialists' Party of Catalonia–Progress Candidacy (PSC–CP) 12,979 27.44 +3.81 9 +2 People's Party (PP) 7,348 15.54 +9.48 5 +3 Republican Left of Catalonia–Municipal Agreement (ERC–AM) 7,199 15.22 −8.55 5 −2 Together for Catalonia Lleida–Municipal Commitment (CM)1 6,862 14.51 −4.58 5 −1 Vox (Vox) 3,575 7.56 +5.97 2 +2 Common of Lleida–Confluence (Comudelleida–C) 2,373 5.02 −3.66 1 −1 Let's Active Lleida–Now Local Agreement (Ara PL) 2,258 4.77 New 0 ±0 Popular Unity Candidacy–Municipalist Alternative (CUP–AMunt) 2,170 4.59 +0.27 0 ±0 Citizens–Party of the Citizenry (CS) 638 1.35 −8.44 0 −3 Brave (Valents) 504 1.07 New 0 ±0 Blank Seats to Leave Empty Seats (EB) 345 0.73 New 0 ±0 Blank ballots 1,040 2.20 +1.50 Total 47,291 27 ±0 Valid votes 47,291 98.25 −1.36 Invalid votes 842 1.75 +1.36 Votes cast / turnout 48,133 51.51 −9.15 Abstentions 45,311 48.49 +9.15 Registered voters 93,444 Sources

Manresa Population: 77,452 + ← Summary of the 28 May 2023 City Council of Manresa election results → Parties and alliances Popular vote Seats Votes % ±pp Total +/− Republican Left of Catalonia–Municipal Agreement (ERC–AM) 5,928 23.74 −4.40 7 −1 Together for Manresa–Municipal Commitment (CM)1 5,001 20.03 −8.08 6 −2 Socialists' Party of Catalonia–Progress Candidacy (PSC–CP) 3,582 14.35 −0.29 4 ±0 Let's Make Manresa–Municipalist Alternative (Fem–AMunt) 2,385 9.55 −0.54 3 ±0 Let's Promote Manresa–Now Local Agreement (Ara PL) 2,183 8.74 New 2 +2 National Front of Catalonia (FNC) 1,618 6.48 New 2 +2 Vox (Vox) 1,537 6.16 +4.84 1 +1 People's Party (PP) 1,192 4.77 +2.18 0 ±0 In Common We Can Manresa–Confluence (MECP–C)2 918 3.68 −1.17 0 ±0 Citizens–Party of the Citizenry (CS) 153 0.61 −6.43 0 −2 Blank ballots 470 1.85 +1.07 Total 24,967 25 ±0 Valid votes 24,967 98.50 −1.17 Invalid votes 381 1.50 +1.17 Votes cast / turnout 25,348 48.49 −13.12 Abstentions 26,924 51.51 +13.12 Registered voters 52,272 Sources

Mataró Population: 128,956 + ← Summary of the 28 May 2023 City Council of Mataró election results → Parties and alliances Popular vote Seats Votes % ±pp Total +/− Socialists' Party of Catalonia–Progress Candidacy (PSC–CP) 15,031 33.25 −5.49 11 −2 Republican Left of Catalonia–Municipal Agreement (ERC–AM) 6,712 14.85 −11.34 4 −4 Vox (Vox) 5,665 12.53 +8.44 4 +4 Together for Mataró–Municipal Commitment (CM)1 4,178 9.24 +2.71 3 +1 People's Party (PP) 3,890 8.60 +4.81 2 +2 In Common We Can Mataró–Confluence (ECPM–C) 3,334 7.37 +0.63 2 ±0 Popular Unity Candidacy–Municipalist Alternative (CUP–AMunt) 2,441 5.40 +0.68 1 +1 Citizens–Party of the Citizenry (CS) 1,115 2.47 −3.67 0 −2 Mataró Moves Us–Now Local Agreement (MEM–Ara PL) 1,064 2.35 New 0 ±0 Brave (Valents) 660 1.46 New 0 ±0 National Front of Catalonia (FNC) 246 0.54 New 0 ±0 Blank ballots 873 1.93 +1.49 Total 45,209 27 ±0 Valid votes 45,209 98.57 −1.20 Invalid votes 655 1.43 +1.20 Votes cast / turnout 45,864 51.60 −11.96 Abstentions 43,016 48.40 +11.96 Registered voters 88,880 Sources

Reus Population: 106,741 + ← Summary of the 28 May 2023 City Council of Reus election results → Parties and alliances Popular vote Seats Votes % ±pp Total +/− Socialists' Party of Catalonia–Progress Candidacy (PSC–CP) 8,648 23.98 +7.08 8 +2 Republican Left of Catalonia–Municipal Agreement (ERC–AM) 5,637 15.63 −1.52 5 −1 Together for Reus–Municipal Commitment (CM)1 5,320 14.75 −7.49 5 −2 Vox (Vox) 3,778 10.48 +7.76 3 +3 Reus Now–Now Local Agreement (Ara PL) 2,986 8.28 +1.84 2 ±0 People's Party (PP) 2,712 7.52 +2.80 2 +2 Popular Unity Candidacy–Municipalist Alternative (CUP–AMunt) 2,136 5.92 −2.75 2 −1 Reus in Movement–We Are Left Movement of Catalonia (REM–SomMESCat) 1,427 3.96 New 0 ±0 Reus in Common We Can–Confluence (RECP–C) 1,089 3.02 −1.62 0 ±0 Reus Among Neighbours (EVR) 713 1.98 +0.15 0 ±0 Brave (Valents) 612 1.70 New 0 ±0 Citizens–Party of the Citizenry (CS) 406 1.13 −9.54 0 −3 Blank ballots 592 1.64 +0.95 Total 36,056 27 ±0 Valid votes 36,056 98.52 −1.08 Invalid votes 542 1.48 +1.08 Votes cast / turnout 36,598 50.07 −10.63 Abstentions 36,493 49.93 +10.63 Registered voters 73,091 Sources

Rubí Population: 79,007