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 %
22,17827.2%27.2%54,13166.3%66.3%———4,1365.1%5.1%4480.5%0.5%81,62778.0%
29,76744.7%44.7%32,24148.4%48.4%———2,5083.8%3.8%1,2601.9%1.9%66,60568.6%
29,45543.4%43.4%35,36452.1%52.1%———1,5742.3%2.3%9911.5%1.5%67,90771.4%
25,43137.3%37.3%30,05444.1%44.1%———11,03316.2%16.2%1,0441.5%1.5%68,21671.5%
4,92311.0%11.0%21,20247.2%47.2%———17,67739.3%39.3%5281.2%1.2%44,93264.6%
4,0519.8%9.8%34,79384.0%84.0%———1,8884.6%4.6%2350.6%0.6%41,42874.2%
27,83154.9%54.9%20,86441.1%41.1%——————8181.6%1.6%50,71172.2%
33,09450.5%50.5%29,92445.7%45.7%———1,6342.5%2.5%8751.3%1.3%65,52771.6%
31,83260.1%60.1%16,28630.7%30.7%———4,1077.8%7.8%4480.8%0.8%52,99064.9%
22,97729.9%29.9%49,21663.9%63.9%———3,6844.8%4.8%———76,96176.8%
32,59959.8%59.8%17,62532.3%32.3%———3,7736.9%6.9%———54,52072.3%
34,75052.0%52.0%27,01340.4%40.4%———4,0216.0%6.0%———66,81069.3%
28,68162.3%62.3%11,94125.9%25.9%———5,17211.2%11.2%1590.3%0.3%46,05170.0%
26,40739.8%39.8%37,39956.3%56.3%———1,6532.5%2.5%6741.0%1.0%66,40768.6%
31,55151.9%51.9%23,83539.2%39.2%———4,6807.7%7.7%———60,83969.0%
25,07541.6%41.6%29,15648.3%48.3%———4,8228.0%8.0%4650.8%0.8%60,32370.1%
19,90048.0%48.0%17,92043.2%43.2%———2,8116.8%6.8%3951.0%1.0%41,45458.5%
20,26349.5%49.5%18,02344.0%44.0%———2,4676.0%6.0%———40,97563.7%
4,42011.2%11.2%32,29282.0%82.0%———2,2505.7%5.7%———39,38870.7%
25,76654.6%54.6%17,97838.1%38.1%———1,7893.8%3.8%———47,16669.2%

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

DistrictElectedRunner-up
Garnett GenuisConservative54,131 votes · 66.3%
Runner-upTanya HolmLiberal22,178 votes · 27.2%
Tanya HolmLiberal22,178 votes · 27.2%39.2percentage points
Adam ChambersConservative32,241 votes · 48.4%
Runner-upRyan RoccaLiberal29,767 votes · 44.7%
Ryan RoccaLiberal29,767 votes · 44.7%3.7percentage points
Terry DowdallConservative35,364 votes · 52.1%
Runner-upBren MunroLiberal29,455 votes · 43.4%
Bren MunroLiberal29,455 votes · 43.4%8.7percentage points
Helena KonanzConservative30,054 votes · 44.1%
Runner-upGloria MorganLiberal25,431 votes · 37.3%
Gloria MorganLiberal25,431 votes · 37.3%6.8percentage points
Ellis RossConservative21,202 votes · 47.2%
Runner-upTaylor BachrachNDP17,677 votes · 39.3%
Taylor BachrachNDP17,677 votes · 39.3%7.9percentage points
Steven BonkConservative34,793 votes · 84.0%
Runner-upAziz MianLiberal4,051 votes · 9.8%
Aziz MianLiberal4,051 votes · 9.8%74.2percentage points
Jessica Fancy-LandryLiberal27,831 votes · 54.9%
Runner-upRick PerkinsConservative20,864 votes · 41.1%
Rick PerkinsConservative20,864 votes · 41.1%13.7percentage points
Ernie KlassenLiberal33,094 votes · 50.5%
Runner-upKerry-Lynne FindlayConservative29,924 votes · 45.7%
Kerry-Lynne FindlayConservative29,924 votes · 45.7%4.8percentage points
Chi NguyenLiberal31,832 votes · 60.1%
Runner-upDiana FilipovaConservative16,286 votes · 30.7%
Diana FilipovaConservative16,286 votes · 30.7%29.3percentage points
Michael CooperConservative49,216 votes · 63.9%
Runner-upLucia StachurskiLiberal22,977 votes · 29.9%
Lucia StachurskiLiberal22,977 votes · 29.9%34.1percentage points
Ginette LavackLiberal32,599 votes · 59.8%
Runner-upShola AgboolaConservative17,625 votes · 32.3%
Shola AgboolaConservative17,625 votes · 32.3%27.5percentage points
Chris BittleLiberal34,750 votes · 52.0%
Runner-upBas SluijmersConservative27,013 votes · 40.4%
Bas SluijmersConservative27,013 votes · 40.4%11.6percentage points
Joanne ThompsonLiberal28,681 votes · 62.3%
Runner-upDavid BrazilConservative11,941 votes · 25.9%
David BrazilConservative11,941 votes · 25.9%36.4percentage points
Eric DuncanConservative37,399 votes · 56.3%
Runner-upSarah GoodLiberal26,407 votes · 39.8%
Sarah GoodLiberal26,407 votes · 39.8%16.6percentage points
Viviane LapointeLiberal31,551 votes · 51.9%
Runner-upIan SymingtonConservative23,835 votes · 39.2%
Ian SymingtonConservative23,835 votes · 39.2%12.7percentage points
Jim BelangerConservative29,156 votes · 48.3%
Runner-upMarc G. SerréLiberal25,075 votes · 41.6%
Marc G. SerréLiberal25,075 votes · 41.6%6.8percentage points
Randeep SaraiLiberal19,900 votes · 48.0%
Runner-upRajvir DhillonConservative17,920 votes · 43.2%
Rajvir DhillonConservative17,920 votes · 43.2%4.8percentage points
Sukh DhaliwalLiberal20,263 votes · 49.5%
Runner-upHarjit Singh GillConservative18,023 votes · 44.0%
Harjit Singh GillConservative18,023 votes · 44.0%5.5percentage points
Jeremy PatzerConservative32,292 votes · 82.0%
Runner-upWilliam CatonLiberal4,420 votes · 11.2%
William CatonLiberal4,420 votes · 11.2%70.8percentage points
Mike KellowayLiberal25,766 votes · 54.6%
Runner-upAnna ManleyConservative17,978 votes · 38.1%
Anna ManleyConservative17,978 votes · 38.1%16.5percentage points

By-Elections

View by-election results · 1 contests · 1 dates