VoteDataCanada

2025 Canada Federal Election

April 28, 2025

General Election · April 28, 2025

Liberal won 169 of 343 seats. This is 3 seats short of the majority threshold (172).

Contests
343
Candidates
1,959
Eligible voters
28,731,275
Votes cast
19,811,520
Voter turnout
69.0%
Final resultsElections CanadaChecked: October 12, 2026

Party results

Seats won Majority threshold: 172
Liberal: 169 seatsConservative: 144 seatsBQ: 22 seatsNDP: 7 seatsGreen: 1 seats
  • Liberal 169
  • Conservative 144
  • BQ 22
  • NDP 7
  • Green 1
PartyVotesVote %SeatsSeats %
Liberal8,595,48843.8%16949.3%
Conservative8,113,48441.3%14442.0%
Bloc Québécois1,236,3496.3%226.4%
NDP-New Democratic Party1,234,6736.3%72.0%
Green Party238,8921.2%10.3%

Party2021 seats2025 seatsChange2021 Vote %2025 Vote %Vote share Δ
Liberal160169+932.6%43.8%+11.1 pp
Conservative119144+2533.7%41.3%+7.6 pp
Bloc Québécois3222−107.6%6.3%−1.3 pp
NDP-New Democratic Party257−1817.8%6.3%−11.5 pp
Green Party21−12.3%1.2%−1.1 pp

Seat changes by party

04590135180LiberalConservativeBQNDPGreen20212025

338 → 343 seats

2021 election results →

Historical trends

343020112015201920212025

Bloc Québécois Conservative Green Party Liberal NDP-New Democratic Party

Chart data
ElectionBloc QuébécoisConservativeGreen PartyLiberalNDP-New Democratic Party
May 2, 20114166134103
October 19, 20151099118444
October 21, 201932121315724
September 20, 202132119216025
April 28, 20252214411697

District map

Boundary sources appear with the loaded map. · Colours show party affiliation where available. Use the district selector for keyboard navigation.

Results by District

343 districts found

Swipe to compare parties · Tap a district for full results

DistrictLiberalConservativeBQNDPGreen
VotesVote %VotesVote %VotesVote %VotesVote %VotesVote %
20,78441.5%41.5%26,59153.1%53.1%———1,6433.3%3.3%7941.6%1.6%50,09274.2%
19,50433.6%33.6%10,43118.0%18.0%25,44743.9%43.9%1,3732.4%2.4%8001.4%1.4%57,98669.8%
21,99934.3%34.3%10,48016.3%16.3%28,47444.3%44.3%1,6502.6%2.6%9881.5%1.5%64,21569.8%
26,02158.9%58.9%12,47728.2%28.2%2,5235.7%5.7%1,9854.5%4.5%6931.6%1.6%44,18560.4%
26,83365.3%65.3%8,45720.6%20.6%2,9387.2%7.2%2,4506.0%6.0%———41,06658.0%
31,09550.0%50.0%15,32124.6%24.6%13,19021.2%21.2%1,2242.0%2.0%7041.1%1.1%62,24065.6%
28,94037.9%37.9%40,59753.1%53.1%———4,0885.4%5.4%———76,38971.7%
20,10740.4%40.4%24,51649.3%49.3%———4,5159.1%9.1%3100.6%0.6%49,75672.4%
10,25427.2%27.2%19,81452.7%52.7%———7,18719.1%19.1%3761.0%1.0%37,63159.1%
19,62241.4%41.4%23,17848.9%48.9%———4,0358.5%8.5%2630.6%0.6%47,42572.7%
30,93647.4%47.4%29,20844.7%44.7%———4,3276.6%6.6%5410.8%0.8%65,31767.9%
27,55757.3%57.3%18,30738.1%38.1%———1,5653.3%3.3%———48,08861.9%
29,41863.0%63.0%15,48733.1%33.1%———1,8273.9%3.9%———46,73260.0%
33,49561.5%61.5%16,65230.6%30.6%———2,7305.0%5.0%7541.4%1.4%54,47663.3%
27,55254.3%54.3%21,73242.8%42.8%———1,4492.9%2.9%———50,73360.8%
35,29564.0%64.0%17,48531.7%31.7%———1,7723.2%3.2%6331.1%1.1%55,18565.4%
25,28160.4%60.4%14,29134.1%34.1%———1,4663.5%3.5%4991.2%1.2%41,86859.4%
16,57030.4%30.4%32,78860.2%60.2%———3,5356.5%6.5%7091.3%1.3%54,47970.8%
26,15539.3%39.3%11,40417.1%17.1%26,72640.1%40.1%1,5572.3%2.3%———66,63170.3%
31,24951.3%51.3%7,98313.1%13.1%16,22426.6%26.6%3,5165.8%5.8%1,3832.3%2.3%60,93167.7%

Parties with seats, or the top three by votes. Valid votes include all candidates. Turnout is votes cast / registered voters.

DistrictElectedRunner-up
John WilliamsonConservative26,591 votes · 53.1%
Runner-upKaren LudwigLiberal20,784 votes · 41.5%
Karen LudwigLiberal20,784 votes · 41.5%11.6percentage points
Simon-Pierre Savard-TremblayBQ25,447 votes · 43.9%
Runner-upMélanie BédardLiberal19,504 votes · 33.6%
Mélanie BédardLiberal19,504 votes · 33.6%10.3percentage points
Christine NormandinBQ28,474 votes · 44.3%
Runner-upPatrick AgbokouLiberal21,999 votes · 34.3%
Patrick AgbokouLiberal21,999 votes · 34.3%10.1percentage points
Emmanuella LambropoulosLiberal26,021 votes · 58.9%
Runner-upRichard SerourConservative12,477 votes · 28.2%
Richard SerourConservative12,477 votes · 28.2%30.7percentage points
Patricia LattanzioLiberal26,833 votes · 65.3%
Runner-upPanagiota KoroneosConservative8,457 votes · 20.6%
Panagiota KoroneosConservative8,457 votes · 20.6%44.8percentage points
François-Philippe ChampagneLiberal31,095 votes · 50.0%
Runner-upPierre-Augustin AllardConservative15,321 votes · 24.6%
Pierre-Augustin AllardConservative15,321 votes · 24.6%25.3percentage points
Marilyn GladuConservative40,597 votes · 53.1%
Runner-upGeorge VandenbergLiberal28,940 votes · 37.9%
George VandenbergLiberal28,940 votes · 37.9%15.3percentage points
Kevin WaughConservative24,516 votes · 49.3%
Runner-upRokhan SarwarLiberal20,107 votes · 40.4%
Rokhan SarwarLiberal20,107 votes · 40.4%8.9percentage points
Brad RedekoppConservative19,814 votes · 52.7%
Runner-upChad EggermanLiberal10,254 votes · 27.2%
Chad EggermanLiberal10,254 votes · 27.2%25.4percentage points
Corey TochorConservative23,178 votes · 48.9%
Runner-upGreg PoelzerLiberal19,622 votes · 41.4%
Greg PoelzerLiberal19,622 votes · 41.4%7.5percentage points
Terry SheehanLiberal30,936 votes · 47.4%
Runner-upHugh StevensonConservative29,208 votes · 44.7%
Hugh StevensonConservative29,208 votes · 44.7%2.7percentage points
Salma ZahidLiberal27,557 votes · 57.3%
Runner-upBelent MathewConservative18,307 votes · 38.1%
Belent MathewConservative18,307 votes · 38.1%19.2percentage points
Shaun ChenLiberal29,418 votes · 63.0%
Runner-upGurmit SandhuConservative15,487 votes · 33.1%
Gurmit SandhuConservative15,487 votes · 33.1%29.8percentage points
Bill BlairLiberal33,495 votes · 61.5%
Runner-upAsm TarunConservative16,652 votes · 30.6%
Asm TarunConservative16,652 votes · 30.6%30.9percentage points
Jean YipLiberal27,552 votes · 54.3%
Runner-upAris MovsessianConservative21,732 votes · 42.8%
Aris MovsessianConservative21,732 votes · 42.8%11.5percentage points
Gary AnandasangareeLiberal35,295 votes · 64.0%
Runner-upSuchita JalanConservative17,485 votes · 31.7%
Suchita JalanConservative17,485 votes · 31.7%32.3percentage points
Michael CoteauLiberal25,281 votes · 60.4%
Runner-upReddy MuttukuruConservative14,291 votes · 34.1%
Reddy MuttukuruConservative14,291 votes · 34.1%26.3percentage points
James BezanConservative32,788 votes · 60.2%
Runner-upRhonda NicholLiberal16,570 votes · 30.4%
Rhonda NicholLiberal16,570 votes · 30.4%29.8percentage points
Andréanne LaroucheBQ26,726 votes · 40.1%
Runner-upFelix DionneLiberal26,155 votes · 39.3%
Felix DionneLiberal26,155 votes · 39.3%0.9percentage points
Élisabeth BrièreLiberal31,249 votes · 51.3%
Runner-upPierre-Étienne RouillardBQ16,224 votes · 26.6%
Pierre-Étienne RouillardBQ16,224 votes · 26.6%24.7percentage points

By-Elections

View by-election results · 1 contests · 1 dates