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 %
12,46651.9%51.9%10,41943.4%43.4%———5852.4%2.4%5382.2%2.2%24,00877.3%
28,01043.1%43.1%32,56550.1%50.1%———3,1184.8%4.8%———64,94968.8%
10,51222.4%22.4%19,46341.6%41.6%———16,13834.5%34.5%3210.7%0.7%46,83065.6%
36,18149.3%49.3%21,08228.7%28.7%———13,66618.6%18.6%1,9592.7%2.7%73,33574.2%
29,38936.7%36.7%46,12357.5%57.5%———3,8264.8%4.8%———80,18173.0%
36,18653.6%53.6%29,71344.0%44.0%———1,6112.4%2.4%———67,51068.9%
22,27052.6%52.6%17,35941.0%41.0%———1,3543.2%3.2%3940.9%0.9%42,35556.0%
37,51257.4%57.4%25,34838.8%38.8%———1,6652.5%2.5%———65,33869.9%
28,91543.2%43.2%35,24652.7%52.7%———1,6302.4%2.4%5940.9%0.9%66,88476.6%
23,25047.9%47.9%21,43944.2%44.2%———2,8855.9%5.9%4600.9%0.9%48,53363.7%
13,70619.1%19.1%54,87476.3%76.3%———1,9232.7%2.7%5890.8%0.8%71,88874.3%
7,19314.5%14.5%39,64980.2%80.2%———1,3372.7%2.7%2900.6%0.6%49,46662.0%
30,75061.3%61.3%16,20032.3%32.3%———9081.8%1.8%1,5683.1%3.1%50,16975.4%
19,10340.1%40.1%25,41153.4%53.4%———1,5073.2%3.2%9612.0%2.0%47,61175.7%
21,81738.3%38.3%7,04712.4%12.4%26,09145.8%45.8%1,0051.8%1.8%———56,98460.4%
34,75160.5%60.5%10,98219.1%19.1%9,37316.3%16.3%1,6152.8%2.8%———57,39968.1%
6,94611.8%11.8%47,90481.7%81.7%———2,4604.2%4.2%———58,65269.4%
36,40654.7%54.7%20,47030.7%30.7%———2,1293.2%3.2%6,77910.2%10.2%66,59372.8%
26,04036.4%36.4%41,21857.6%57.6%———2,4123.4%3.4%7501.0%1.0%71,60672.1%
29,22338.7%38.7%42,70156.6%56.6%———2,6253.5%3.5%———75,50372.7%

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

DistrictElectedRunner-up
Bobby MorrisseyLiberal12,466 votes · 51.9%
Runner-upLogan McLellanConservative10,419 votes · 43.4%
Logan McLellanConservative10,419 votes · 43.4%8.5percentage points
Andrew LawtonConservative32,565 votes · 50.1%
Runner-upDavid GoodwinLiberal28,010 votes · 43.1%
David GoodwinLiberal28,010 votes · 43.1%7.0percentage points
Colin ReynoldsConservative19,463 votes · 41.6%
Runner-upLeila DanceNDP16,138 votes · 34.5%
Leila DanceNDP16,138 votes · 34.5%7.1percentage points
Stephanie McLeanLiberal36,181 votes · 49.3%
Runner-upGrant CoolConservative21,082 votes · 28.7%
Grant CoolConservative21,082 votes · 28.7%20.6percentage points
Chris LewisConservative46,123 votes · 57.5%
Runner-upChris SuttonLiberal29,389 votes · 36.7%
Chris SuttonLiberal29,389 votes · 36.7%20.9percentage points
Yvan BakerLiberal36,186 votes · 53.6%
Runner-upTed OpitzConservative29,713 votes · 44.0%
Ted OpitzConservative29,713 votes · 44.0%9.6percentage points
John ZerucelliLiberal22,270 votes · 52.6%
Runner-upNatalie WeedConservative17,359 votes · 41.0%
Natalie WeedConservative17,359 votes · 41.0%11.6percentage points
James MaloneyLiberal37,512 votes · 57.4%
Runner-upBernard TrottierConservative25,348 votes · 38.8%
Bernard TrottierConservative25,348 votes · 38.8%18.6percentage points
Dan MuysConservative35,246 votes · 52.7%
Runner-upChuck PhillipsLiberal28,915 votes · 43.2%
Chuck PhillipsLiberal28,915 votes · 43.2%9.5percentage points
Gurbux SainiLiberal23,250 votes · 47.9%
Runner-upSukh PandherConservative21,439 votes · 44.2%
Sukh PandherConservative21,439 votes · 44.2%3.7percentage points
John BarlowConservative54,874 votes · 76.3%
Runner-upJohn BruinsmaLiberal13,706 votes · 19.1%
John BruinsmaLiberal13,706 votes · 19.1%57.3percentage points
Laila GoodridgeConservative39,649 votes · 80.2%
Runner-upKaitlyn StainesLiberal7,193 votes · 14.5%
Kaitlyn StainesLiberal7,193 votes · 14.5%65.6percentage points
David MylesLiberal30,750 votes · 61.3%
Runner-upBrian MacdonaldConservative16,200 votes · 32.3%
Brian MacdonaldConservative16,200 votes · 32.3%29.0percentage points
Rob MooreConservative25,411 votes · 53.4%
Runner-upBill KudlaLiberal19,103 votes · 40.1%
Bill KudlaLiberal19,103 votes · 40.1%13.3percentage points
Alexis DeschênesBQ26,091 votes · 45.8%
Runner-upDiane LebouthillierLiberal21,817 votes · 38.3%
Diane LebouthillierLiberal21,817 votes · 38.3%7.5percentage points
Steven MacKinnonLiberal34,751 votes · 60.5%
Runner-upKethlande PierreConservative10,982 votes · 19.1%
Kethlande PierreConservative10,982 votes · 19.1%41.4percentage points
Chris WarkentinConservative47,904 votes · 81.7%
Runner-upMaureen McleodLiberal6,946 votes · 11.8%
Maureen McleodLiberal6,946 votes · 11.8%69.8percentage points
Dominique O'RourkeLiberal36,406 votes · 54.7%
Runner-upGurvir KhairaConservative20,470 votes · 30.7%
Gurvir KhairaConservative20,470 votes · 30.7%23.9percentage points
Leslyn LewisConservative41,218 votes · 57.6%
Runner-upColin WalshLiberal26,040 votes · 36.4%
Colin WalshLiberal26,040 votes · 36.4%21.2percentage points
Jamie SchmaleConservative42,701 votes · 56.6%
Runner-upNell ThomasLiberal29,223 votes · 38.7%
Nell ThomasLiberal29,223 votes · 38.7%17.9percentage points

By-Elections

View by-election results · 1 contests · 1 dates