2023 Alberta general election
![]() |
|||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||
All 87 seats in the Legislative Assembly of Alberta 44 seats needed for a majority |
|||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Opinion polls | |||||||||||||||||||||||||||||||||||||
Turnout | 62.4% (![]() |
||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||
300px 2023 Alberta General Election Map
|
|||||||||||||||||||||||||||||||||||||
|
The 2023 Alberta general election was held on May 29, 2023.[1] Voters elected the members of the Legislative Assembly of Alberta. Election dates are fixed under Alberta's Election Act but that does not affect the powers of the lieutenant governor of Alberta to specify a different day in accordance with provisions in the aforementioned act, the Constitution of Canada and the usual conventions of the Westminster parliamentary system.
The United Conservative Party under Danielle Smith, the incumbent Premier of Alberta, was re-elected to government with a reduced majority.[2] Across the province, 1,763,441 valid votes were cast in this election.[3]
Contents
Background
The 2019 Alberta general election resulted in a majority government for the United Conservative Party led by Jason Kenney. The election of the new United Conservative government was widely predicted by pollsters and academics during the campaign. The United Conservatives captured 54.88 per cent of the popular vote and won 63 of the 87 seats in the Alberta Legislature.[4] The incumbent New Democratic Party, led by Premier Rachel Notley, experienced a drop in its popular vote share from 40.62 per cent in the 2015 Alberta general election to 32.67 per cent, and formed the Official Opposition with 24 seats.[4] The Alberta Party, led by former Edmonton mayor Stephen Mandel, received 9.08 per cent of the popular vote but failed to win any seats in the legislature. Various other parties and independent candidates combined for 3.37 per cent of the popular vote, without gaining any seats in the legislature. Journalist Graham Thomson described the 2019 election campaign as "more vicious, more personal, and more divisive" than any other campaign in Alberta's history.[5]
The United Conservatives were formed through the merger of the two major conservative parties in Alberta, the Progressive Conservative Association of Alberta and the Wildrose Party, in 2017. Jason Kenney, a former member of Parliament and minister in Stephen Harper's Conservative Party of Canada federal government, won the 2017 Progressive Conservative Association of Alberta leadership election on a platform of uniting the right-wing parties in Alberta.[6] The merger took place after 95 per cent of Wildrose Party members voted in favour of joining the new United Conservative Party and forming the Official Opposition.[7] In the same year, Jason Kenney won the 2017 United Conservative Party leadership election and became the leader of the Opposition.[8]
Initially, the Kenney government enjoyed substantial support among Albertans, with an approval rating of 60 per cent in June of 2019.[9] Kenney's approval rating started to decline with the onset of the COVID-19 pandemic in Alberta,[9] dropping below 50 per cent in February 2020 and falling further to below 33 per cent by June 2021.[10] Growing dissatisfaction within the United Conservative Party led to calls for a leadership review, with discontent primarily centered around the Kenney government's handling of the COVID-19 pandemic. As a result, Central Peace-Notley MLA Todd Loewen resigned, and the United Conservative Caucus voted to expel both Loewen and Cypress-Medicine Hat MLA Drew Barnes on May 13, 2021.[11] Kenney stepped down as the leader of the United Conservative Party on May 18, 2022, after receiving only 51.4 per cent support during the party's leadership review.[12]
The 2022 United Conservative Party leadership election was held on October 6. Former Wildrose Party leader Danielle Smith returned to politics and defeated five other candidates to become the party leader.[13][14] After being sworn in as the premier of Alberta on October 11, 2022,[15] the Smith ministry was presented on October 21, 2022.[16] On May 1, 2023, after a request from Smith, the lieutenant governor dissolved the legislature and called an election for May 29.[17]
Procedure
Procedures for provincial elections in Alberta are governed by the Election Act, and financial regulatory aspects are governed under the Election Finances and Contributions Disclosure Act. Eligibility to vote is limited to Canadian citizens aged 18 years of age or older, and who is a ordinary resident of an Alberta electoral district.[18]
Under the Election Finances and Contributions Disclosure Act, total expenses by political parties are limited to a total of $3,208,127 during the election period from when the writ is dropped to the election day, which is $1.16 per registered elector. Individual candidates expenses are limited to $53,100 during the election period. Third-Party Advertisers are limited to $159,200 during the election period.[19]
In 2021, the Alberta Legislature passed the Election Statutes Amendment Act, 2021 (No. 2), which amended both the electoral acts to fix the election date to be the last Monday in May unless the lieutenant governor dissolves the Legislature sooner. The bill raised total election expense limits for each political party from $2 million to a formula of $1.16 per elector, which was expected to be near $3.2 million. The bill also prohibited an entity from registering as a third-party advertiser if someone who is a affiliated with a political party holds a "significant position" on in the entity.[20]
Electoral system
Alberta's 87 MLAs are elected through single-member plurality contests, also known as first past the post.
Timeline
2019
- April 16: The United Conservative Party (UCP) wins a majority government in the 30th Alberta general election, defeating the previous Alberta New Democratic Party (NDP) government which had governed since 2015. No other parties won seats in the election.
- April 30: Jason Kenney is sworn in as the 18th premier of Alberta. The first UCP cabinet is likewise sworn in.[21] Derek Fildebrandt resigns as leader of the Freedom Conservative Party of Alberta.[22]
- May 21: Olds-Didsbury-Three Hills MLA Nathan Cooper is elected Speaker of the Legislative Assembly.[23]
- June 30: Stephen Mandel resigns as leader of the Alberta Party.[24][25]
- September 4: Cheryle Chagnon-Greyeyes resigns as leader of the Green Party of Alberta. Will Carnegie is appointed interim leader.[26][27]
2020
- February 10: Former PC MLA Jacquie Fenske is announced as acting leader of the Alberta Party.[28][29]
- March 28: Jordan Wilkie is elected leader of the Green Party of Alberta.[30]
- June 29: Members of Wexit Alberta and the Freedom Conservative Party of Alberta voted to approve a merger into the Wildrose Independence Party of Alberta (WIP).[31]
- July 17: The WIP announced that Paul Hinman would serve as interim leader until the party's founding convention and leadership contest.[32]
- November 22: Alberta Liberal Party Leader David Khan resigns.[33]
2021
- January 4: Six UCP MLAs are demoted by Jason Kenney for travelling internationally during the COVID-19 pandemic in Alberta.[34]
- March 6: John Roggeveen is appointed interim leader of the Alberta Liberal Party.[35]
- April 7: 17 UCP MLAs sign an open letter criticizing the Alberta government for reimposing more stringent public health restrictions aimed at combatting COVID-19.[36][37]
- July 13: Paul Hinman is elected leader of the WIP.[38]
- August 31: Barry Morishita is acclaimed as leader of the Alberta Party.[39]
- November 15: 22 UCP constituency associations announce they have passed special motions calling for a review of Jason Kenney's leadership by March 1, 2022.[40]
2022
- March 24: UCP MLAs Jason Stephan and Peter Guthrie call on Jason Kenney to resign.[41]
- May 18: Jason Kenney won 51.4% of votes in favour of him staying as leader in a UCP leadership review vote. However, he announced he would resign shortly after the result was revealed.[42]
- May 19: The UCP caucus meets and decides to keep Jason Kenney as party leader and premier until a successor is chosen.[43]
- October 6: The results of the 2022 UCP leadership election were announced, with former Wildrose Party leader Danielle Smith elected leader and therefore the next premier. In her victory speech, she invited former UCP MLA and fellow leadership candidate Todd Loewen back into caucus.[44]
- October 11: Danielle Smith is sworn in as the 19th premier of Alberta.[45]
- October 21: Wildrose Independence Party leader Paul Hinman is removed as leader by a court decision. Jeevan Mangat is named interim party leader. Hinman is appealing the decision.[46][47]
- December 8: John Roggeveen is appointed permanent leader of the Alberta Liberal Party.[48][49]
2023
- May 1: Writs of election issued.[1]
- May 6: A state of emergency is declared in Alberta due to ongoing wildfires throughout the province.[50]
- May 18: The Alberta Ethics Commissioner released a report finding UCP leader Danielle Smith violated the Conflict of Interest Act over a conversation with Justice Minister Tyler Shandro regarding a COVID-19 prosecution.[51]
- May 18: Smith-Notley Debate.[52][53]
- May 23–27: Advance voting.[1]
- May 29: Election day.[1]
Changes in MLAs
Seat | Before | Change | |||||
---|---|---|---|---|---|---|---|
Date | Member | Party | Reason | Date | Member | Party | |
Lesser Slave Lake | January 14, 2021 | Pat Rehn | █ United Conservative | Removed from caucus due to lack of constituency work[54] | █ Independent | ||
July 14, 2021 | █ Independent | Returned to caucus[55][56] | █ United Conservative | ||||
Central Peace-Notley | May 13, 2021 | Todd Loewen | █ United Conservative | Expelled by caucus over criticism of then premier Jason Kenney's COVID-19 policies [57][58] | █ Independent | ||
October 7, 2022 | █ Independent | Returned to caucus[59] | █ United Conservative | ||||
Cypress-Medicine Hat | May 13, 2021 | Drew Barnes | █ United Conservative | Expelled by caucus over criticism of then premier Jason Kenney's COVID-19 policies[57][58] | █ Independent | ||
Fort McMurray-Lac La Biche | August 15, 2021 | Laila Goodridge | █ United Conservative | Resigned to stand for election to Fort McMurray-Cold Lake in the 2021 Canadian federal election[60] | March 15, 2022 | Brian Jean[61] | █ United Conservative |
Edmonton-South | December 21, 2021 | Thomas Dang | █ New Democratic | Resigned from caucus after RCMP investigation was conducted | █ Independent | ||
Calgary-Elbow | August 31, 2022 | Doug Schweitzer | █ United Conservative | Resigned from Legislature; retired from politics for private sector[62] | █ Vacant | ||
Brooks-Medicine Hat | October 7, 2022 | Michaela Frey | █ United Conservative | Resigned from Legislature to allow Danielle Smith to stand in a by-election[63] | November 8, 2022 | Danielle Smith[64] | █ United Conservative |
Calgary-Lougheed | November 30, 2022 | Jason Kenney | █ United Conservative | Resigned from Legislature; left politics[65] | █ Vacant |
Incumbent MLAs not seeking re-election
In the months leading up to the 2023 Alberta general election, several incumbent members of the Legislative Assembly announced they would not seek re-election. This included three members of the Smith ministry including leadership contest runner-up Travis Toews (Minister of Finance and president of Treasury Board),[66] Sonya Savage (Minister of Environment and Protected Areas),[67] and Rajan Sawhney (Minister of Trade, Immigration and Multiculturalism). Shortly after Sawhney's decision not to run again, she was nominated by Smith as the United Conservative candidate for Calgary-North West.[68] Other United Conservative members of the Legislative Assembly who decided not to run again include former Ministers in the Kenney ministry: Leela Aheer,[69] Ron Orr,[70] Tracy Allard,[71] and Brad Rutherford;[72] as well as caucus members Mark Smith,[73] Roger Reid,[74] and Richard Gotfried.[75] Dave Hanson, member for Bonnyville-Cold Lake-St. Paul, lost his nomination contest against former Bonnyville-Cold Lake representative Scott Cyr;[76] and Tany Yao, member for Fort McMurray-Wood Buffalo, lost his nomination contest to Zulkifl Mujahid, who was subsequently removed by the provincial board and replaced by Yao due to ongoing legal matters.[77]
New Democratic members of the Legislative Assembly deciding not to run in 2023 include members of the Notley ministry, such as Deron Bilous,[78] along with Richard Feehan,[75] as well as caucus member Jon Carson. Chris Nielsen, member for Edmonton-Decore, lost his nomination contest to Sharif Haji.[79] Two independent members of the Legislative Assembly decided not to run in 2023 include former New Democrat Thomas Dang,[80] along with former United Conservative Drew Barnes.[81]
Outgoing incumbent | Electoral district | Subsequent party nominee | Elected MLA | ||||
---|---|---|---|---|---|---|---|
Dave Hanson | United Conservative | Bonnyville-Cold Lake-St. Paul | Scott Cyr[76] | Scott Cyr | |||
Chris Nielsen | New Democratic | Edmonton-Decore | Sharif Haji[79] | Sharif Haji | |||
Tany Yao | United Conservative | Fort McMurray-Wood Buffalo | Tany Yao[77][lower-alpha 6] | Tany Yao |
Campaign
Lua error in package.lua at line 80: module 'strict' not found.
Issues
Healthcare
Following her selection as leader of the United Conservative Party, Danielle Smith made a number of changes to Alberta's healthcare system. Smith fired the Alberta Health Services Board of Governors, replacing the board with a single administrator.[85] In addressing ambulance capacity, the Smith government changed non-medical patient transports, using taxis and other services to open capacity for ambulance crews.[86] Ambulance measures came after it came to light that 9,629 ambulance shifts in Calgary were unfilled in 2022.[86] The United Conservative Party promised to hire more obstetricians and educational support in a focus on women and children, and offered a bonus for healthcare professionals moving to Alberta.[87] During her leadership campaign, Smith advocated for a government funded $300 Health Spending Account for all Albertans to fund services that are not covered by the province, such as dental care;[88][89] however, the promise was not included in the Smith government's 2023-24 budget.[90] Smith's previous advocacy for creating co-payments and shifting the burden of healthcare payments from the government to individuals, employers and insurance companies[91] was criticized by the New Democratic Party.[88]
The New Democratic Party made a number healthcare related campaign promises, including hiring 1,500 healthcare professionals to increase the capacity of family doctors,[92] offering $10,000 signing bonus for healthcare workers and increasing the number of healthcare spaces in post-secondary schools.[87] The New Democratic Party included a pledge to review private health service contracts made by the Jason Kenney's government for private surgical centres and diagnostic laboratories.[93]
Economy
During their campaign, the United Conservative Party pledged to reduce personal income taxes by introducing a new tax bracket for individuals earning below $60,000. This move creating an 8 per cent tax rate would result in a $1 billion reduction in government revenue.[94] As an affordability measure, the United Conservatives proposed extending the fuel tax holiday, previously budgeted until June 2023, to December 2023, at an estimated cost of $570 million.[94] Danielle Smith advocated for a non-refundable tax credit for post-secondary graduates who chose to remain in Alberta. The credit would range from $3,000 to $10,000 and was projected to cost $50 million over a four-year period.[95] The United Conservatives pledged to extend the net-zero transition of the electricity grid, moving the federally mandated timeline of 2035 to 2050.[96] In the lead-up to the election, Danielle Smith announced support for the construction of a $1.2 billion arena in Calgary. The provincial government would contribute $330 million towards the project if re-elected.[97]
The New Democratic Party campaigned on a platform that emphasized no increase in personal income taxes for a four-year period and a freeze on personal insurance rates.[94] Additionally, they made a commitment to implement the recommendations of Todd Hirsch, the former ATB Financial Chief Economist. These recommendations would establish fixed formulas for non-renewable natural resource revenue, debt, and GDP to guide future spending.[94] Rachel Notley, the leader of the New Democratic Party, expressed her support for transitioning the electrical grid to net-zero emissions by 2035.[96] Prior to the election, Notley pledged her support for a $200 million post-secondary campus located in downtown Calgary. The intention behind this pledge was to foster innovation and promote economic diversification in the Calgary core.[98]
Education
During the campaign, both the United Conservative Party and New Democratic Party made a conscious decision to steer clear of controversial education-related issues, such as proposed changes to the provincial curriculum and expansion of charter school funding. University of Calgary political scientist Lisa Young noted the parties avoided these topics in an effort to avoid alienating undecided voters.[99]
Prior to the election, the United Conservative government of Jason Kenney had an education policy favouring charter schools,[100] and undergoing a curriculum review, which was criticized by the Alberta Teachers' Association.[101] The New Democratic Party committed to increasing funding for public education by $700 million over a four years. The funding would hire 4,000 teachers and 3,000 support workers in an effort to reduce class sizes.[102]
Public safety
In an effort to enhance confidence in public safety, Danielle Smith promised to implement an ankle bracelet monitoring program to supervise violent offenders who were released on bail. This program was estimated to cost $2 million annually.[103] Additionally, the United Conservative Party pledged to hire 100 additional police officers in Calgary and Edmonton.[103] They also proposed deploying Alberta Sheriffs to the border to combat drug and gun trafficking and to increase funding for specialized law enforcement teams.[103] Prior to the start of the election, Danielle Smith said that she would not campaign on the previous United Conservative promise to replace the Royal Canadian Mounted Police with the Alberta Provincial Police. She indicated that the issue would be revisited if the United Conservatives were re-elected.[104]
The New Democratic Party pledged to strengthen law enforcement by hiring an additional 150 police officers and 150 support staff, including social workers and addiction counselors.[105] They proposed funding this initiative by reversing the changes implemented by the United Conservative Party in 2019 which increased the provincial share of police fine revenue from 26.7 per cent to 40 per cent.[105] Furthermore, the New Democrats committed to canceling the United Conservative Party's efforts to replace the Royal Canadian Mounted Police with a provincial police force.[105]
Debates
On May 18, a televised debate took place between Smith and Notley.[52][53]
Endorsements
Type | UCP | NDP |
---|---|---|
Media | ||
Politicians and public figures | ||
Unions and business associations | ||
Others |
|
Opinion polling
<templatestyles src="Import-blanktable/styles.css"/> A local regression graph displaying the polls between the 2019 and 2023 Albertan elections
The following is a list of published opinion polls of voter intentions.
Opinion polls during campaign period | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Pollster | Client | Dates conducted |
Source | UCP | NDP | Alberta | Liberal | IPA | Green | WIP | SMA | Others | Margin of error | Sample size |
Polling method |
Lead |
General Election | — | May 29, 2023 | [p 1] | 52.6% | 44.0% | 0.7% | 0.2% | 0.3% | 0.8% | 0.1% | 0.3% | — | — | — | — | 8.6% |
Forum Research | N/A | May 28, 2023 | [p 2] | 50.4% | 44.3% | — | — | — | 1.6% | — | — | 3.7% | 3.1% | 1,000 | IVR | 6.1% |
Mainstreet Research | N/A | May 26–28, 2023 | [p 3][p 4] | 49.8% | 47.8% | 0.5% | — | — | 1% | 0.3% | — | 0.5% | 2.5% | 1,504 | IVR | 2% |
Abacus Data | N/A | May 26–28, 2023 | [p 5] | 49% | 48% | 1% | — | — | — | — | — | 2% | 2.9% | 1,200 | Online | 1% |
Research Co. | N/A | May 26–27, 2023 | [p 6] | 50% | 46% | — | — | — | 1% | — | 1% | 2% | 4.0% | 600 | Online | 4% |
Ipsos | Global News | May 24–27, 2023 | [p 7] | 51% | 46% | — | — | — | — | — | — | 3% | 3.1% | 1,300 | Online/Phone | 5% |
Mainstreet Research | N/A | May 24–27, 2023 | [p 8] | 48% | 47% | 2% | — | — | 1% | 1% | — | 1% | 2.2% | 1,922 | IVR | 1% |
Counsel Public Affairs | N/A | May 25–26, 2023 | [p 9][p 10] | 41% | 46% | 5% | 5% | — | — | — | — | 4% | 3% | 1,232 | Online | 5% |
Mainstreet Research | N/A | May 23–26, 2023 | [p 11] | 49% | 46% | 2% | — | — | 1% | 1% | — | 1% | 2.3% | 1,841 | IVR | 3% |
Sovereign North Strategies | N/A | May 22–26, 2023 | [p 12] | 46% | 48% | 2% | — | — | 2% | — | — | 2% | 1.8% | 3,053 | IVR/SMS | 2% |
EKOS | N/A | May 19–26, 2023 | [p 13][p 14] | 50.4% | 47.3% | 0.8% | 0.4% | — | — | — | — | 1.1% | 2.35% | 1,741 | Online/IVR | 3.1% |
Leger | Postmedia | May 23–25, 2023 | [p 15][p 16] | 49% | 46% | 1% | — | — | 1% | — | 1% | 2% | 3.1% | 1,011 | Online | 3% |
Oraclepoll Research | N/A | May 22–25, 2023 | [p 17] | 49% | 46% | 2% | — | — | 3% | — | — | — | 3.5% | 800 | Telephone | 3% |
Mainstreet Research | N/A | May 22–25, 2023 | [p 18] | 48% | 46% | 2% | — | — | 2% | 1% | — | 1% | 2.3% | 1,734 | IVR | 2% |
Mainstreet Research | N/A | May 21–24, 2023 | [p 19] | 49% | 45% | 2% | — | — | 2% | 1% | — | 1% | 2.3% | 1,700 | IVR | 4% |
Janet Brown Opinion Research | CBC | May 12–24, 2023 | [p 20][p 21] | 52% | 44% | 1% | 1% | 1% | 1% | <1% | — | <1% | 2.8% | 1,200 | Telephone/Online | 8% |
Mainstreet Research | N/A | May 20–23, 2023 | [p 22] | 50% | 44% | 2% | — | — | 1% | 1% | — | 1% | 2.4% | 1,662 | IVR | 6% |
Mainstreet Research | N/A | May 19–22, 2023 | [p 23] | 50% | 44% | 2% | — | — | 2% | 1% | — | 2% | 2.4% | 1,655 | IVR | 6% |
Abacus Data | N/A | May 19–22, 2023 | [p 24] | 51% | 47% | 1% | — | — | — | — | — | 1% | 2.6% | 1,507 | Online | 4% |
Mainstreet Research | N/A | May 18–21, 2023 | [p 25] | 49% | 44% | 3% | — | — | 1% | 1% | — | 1% | 2.4% | 1,656 | IVR | 5% |
Mainstreet Research | N/A | May 17–20, 2023 | [p 26] | 47% | 46% | 3% | — | — | 2% | 1% | — | 2% | 2.4% | 1,645 | IVR | 1% |
Mainstreet Research | N/A | May 16–19, 2023 | [p 27] | 48% | 45% | 3% | — | — | 2% | 1% | — | 1% | 2.4% | 1,657 | IVR | 3% |
Televised leaders' debate. | ||||||||||||||||
Mainstreet Research | N/A | May 15–18, 2023 | [p 28] | 47% | 47% | 3% | — | — | 2% | 1% | — | 1% | 2.5% | 1,519 | IVR | Tie |
Research Co. | N/A | May 16–17, 2023 | [p 29] | 47% | 49% | — | — | — | 1% | — | 1% | 2% | 4.0% | 529 | Online | 2% |
Abacus Data | N/A | May 15–17, 2023 | [p 30] | 46% | 49% | 3% | — | — | — | — | — | 2% | 3.4% | 498 | Online | 3% |
Mainstreet Research | N/A | May 14–17, 2023 | [p 31] | 48% | 46% | 2% | — | — | 2% | 1% | — | 1% | 2.6% | 1,404 | IVR | 2% |
Sovereign North Strategies | N/A | May 13–16, 2023 | [p 32] | 47% | 49% | 2% | — | — | 1% | — | — | 1% | 1.7% | 3,431 | IVR/SMS | 2% |
Mainstreet Research | N/A | May 13–16, 2023 | [p 33] | 49% | 45% | 2% | — | — | 1% | 1% | — | 1% | 2.7% | 1,296 | IVR | 4% |
Angus Reid | N/A | May 12–16, 2023 | [p 34][p 35] | 51% | 43% | 3% | 1% | — | — | — | — | 1% | 3% | 1,202 | Online | 8% |
Mainstreet Research | N/A | May 12–15, 2023 | [p 36] | 49% | 45% | 3% | — | — | 1% | 1% | — | 1% | 2.8% | 1,218 | IVR | 4% |
Counsel Public Affairs | N/A | May 12–14, 2023 | [p 37][p 38] | 38% | 48% | 5% | 4% | — | — | — | — | 5% | 3% | 1,219 | Online | 10% |
Mainstreet Research | N/A | May 11–14, 2023 | [p 39] | 49% | 45% | 3% | — | — | 1% | 1% | — | 1% | 2.9% | 1,140 | IVR | 4% |
Ipsos | Global News | May 10–13, 2023 | [p 40] | 48% | 45% | 3% | — | — | — | — | — | 4% | 3.9% | 800 | Online | 3% |
Mainstreet Research | N/A | May 10–13, 2023 | [p 41] | 49% | 44% | 2% | — | — | 2% | 1% | — | 1% | 2.9% | 1,103 | IVR | 5% |
Sovereign North Strategies | Western Standard | May 8–13, 2023 | [p 42][p 43] | 45% | 50% | 2% | — | — | 2% | — | — | 2% | 1.8% | 2,909 | IVR/SMS | 5% |
Mainstreet Research | N/A | May 9–12, 2023 | [p 44] | 50% | 44% | 2% | — | — | 1% | 1% | — | 2% | 2.7% | 1,280 | IVR | 6% |
Abacus Data | N/A | May 9–12, 2023 | [p 45] | 41% | 51% | 5% | — | — | — | — | — | 3% | 3.4% | 885 | Online | 10% |
Janet Brown Opinion Research | N/A | May 1–11, 2023 | [p 46] | 51% | 40% | — | — | — | — | — | — | — | 3.3% | 900 | Telephone | 11% |
Sovereign North Strategies | N/A | May 1–7, 2023 | [p 47] | 48% | 47% | 3% | — | — | 1% | — | — | 2% | 1.9% | 2,491 | IVR/SMS | 1% |
Mainstreet Research | N/A | May 1–2, 2023 | [p 48] | 50% | 43% | 4% | — | — | 1% | — | — | 2% | 2.5% | 1,524 | IVR | 7% |
Leger | Postmedia | April 28–May 1, 2023 | [p 49] | 43% | 45% | 4% | 3% | — | — | 1% | — | 3% | 3.1% | 1,000 | Online | 2% |
Opinion polling before campaign period began | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Pollster | Client | Dates conducted |
Source | UCP | NDP | Alberta | Liberal | IPA | Green | WIP | Others | Margin of error | Sample size |
Polling method |
Lead |
Ipsos | Global News | April 26–30, 2023 | [p 50] | 48% | 44% | 4% | — | — | — | — | 4% | 3.2% | 1,200 | Online/Phone | 4% |
ThinkHQ | N/A | April 25–29, 2023 | [p 51] | 46% | 46% | 5% | 1% | — | — | — | 2% | 2.5% | 1,529 | Online | Tie |
Abacus Data | N/A | April 21–25, 2023 | [p 52] | 46% | 46% | 5% | — | — | — | — | 4% | 3.1% | 1,000 | Online | Tie |
Oraclepoll Research | N/A | April 17–20, 2023 | [p 53] | 44% | 46% | 3% | — | — | 5% | 1% | 1% | 3.5% | 800 | Telephone | 2% |
Innovative Research | N/A | Apr 13–19, 2023 | [p 54] | 41% | 40% | 4% | 7% | — | 4% | 3% | <1% | N/A | 1,324 | Online | 1% |
Leger | N/A | Mar 24–27, 2023 | [p 55] | 44% | 47% | 2% | 3% | — | — | 1% | 2% | 3.1% | 1,001 | Online | 3% |
Mainstreet Research | N/A | Mar 21–22, 2023 | [p 56] | 45% | 45.9% | 3.2% | — | — | — | 2.2% | 3.6% | 2.9% | 1,108 | IVR | 0.9% |
Innovative Research | N/A | Mar 2–20, 2023 | [p 57] | 39% | 40% | 5% | 7% | — | 6% | 4% | 0% | N/A | 489 | Online | 1% |
ThinkHQ | N/A | Mar 14–16, 2023 | [p 58] | 45% | 46% | 6% | 2% | — | — | — | 1% | 2.9% | 1,122 | Online | 1% |
Angus Reid | N/A | Mar 6–13, 2023 | [p 59] | 49% | 42% | 4% | 2% | — | — | 2% | 1% | 3% | 827 | Online | 7% |
Abacus Data | N/A | Mar 2–4, 2023 | [p 60] | 45% | 45% | 6% | — | — | — | — | 4% | 3.8% | 700 | Online | Tie |
Leger | Postmedia | Feb 10–12, 2023 | [p 61] | 43% | 47% | 2% | 4% | — | — | 2% | 2% | 3.1% | 1,002 | Online | 4% |
Pivotal Research | N/A | Jan 31–Feb 7, 2023 | [p 62][p 63] | 42% | 46% | 6% | 6% | — | — | 1% | — | 4.8% | 662 | Online | 4% |
Abacus Data | N/A | Feb 1–6, 2023 | [p 64] | 47% | 45% | 5% | — | — | — | — | 3% | 3.1% | 1,000 | Online | 2% |
ThinkHQ | N/A | Jan 19–20, 2023 | [p 65] | 48% | 45% | 4% | — | — | — | — | 1% | 2.9% | 1,144 | Online | 3% |
Mainstreet Research | N/A | Jan 19–20, 2023 | [p 66] | 45.6% | 41.3% | 5.9% | — | — | — | 3.6% | 3.6% | 3.9% | 646 | Smart IVR | 4.3% |
Abacus Data | N/A | Dec 6–10, 2022 | [p 67] | 43% | 51% | 3% | — | — | — | — | 3% | 3.1% | 1,000 | Online | 8% |
Mainstreet Research | N/A | Dec 2–3, 2022 | [p 68] | 47% | 45% | 3.8% | — | — | — | 0.8% | 3.3% | 4% | 615 | IVR | 2% |
Angus Reid | N/A | Nov 28–Dec 3, 2022 | [p 69] | 48% | 44% | 5% | 1% | — | — | 1% | 1% | 4% | 591 | Online | 4% |
Leger | Postmedia | Nov 24–28, 2022 | [p 70] | 44% | 47% | 2% | 4% | — | — | 2% | 2% | 3.1% | 1,001 | Online | 3% |
Janet Brown Opinion Research | CBC | Oct 12–30, 2022 | [p 71] | 38% | 47% | 3% | 2% | 1% | <1% | 1% | 8% | 2.8% | 1,200 | Telephone | 9% |
Navigator Ltd. | N/A | Oct 7–11, 2022 | [p 72] | 38% | 53% | 4% | — | — | — | — | 5% | 3.5% | 1,002 | Online | 15% |
Leger | Postmedia | Oct 7–10, 2022 | [p 73] | 42% | 44% | 3% | 4% | — | — | 4% | 4% | 3.1% | 1,000 | Online | 2% |
Danielle Smith elected leader of the UCP and is appointed premier on October 11. | |||||||||||||||
Angus Reid | N/A | Sep 19–21, 2022 | [p 74][p 75] | 47% | 41% | 4% | 2% | — | — | 5% | 1% | 3% | 598 | Online | 6% |
Leger | Postmedia | Sep 1–5, 2022 | [p 76] | 44% | 41% | 4% | 2% | — | — | 4% | 3% | 3.1% | 1,006 | Online | 3% |
Leger | Postmedia | July 15–17, 2022 | [p 77] | 41% | 45% | 5% | 2% | — | — | 4% | 3% | 3.1% | 1,025 | Online | 4% |
Angus Reid | N/A | June 7–13, 2022 | [p 78] | 42% | 40% | 6% | 2% | — | — | 9% | 2% | 4% | 592 | Online | 2% |
Counsel Public Affairs | N/A | June 8–11, 2022 | [p 79] | 37% | 42% | 5% | — | — | — | 8% | 9% | 3.5% | 788 | Online | 5% |
Leger | N/A | May 20–23, 2022 | [p 80] | 42% | 40% | 3% | 3% | — | — | 5% | 4% | 3.1% | 1,000 | Online | 2% |
Jason Kenney announced his intention to resign as premier of Alberta and leader of the UCP. | |||||||||||||||
ThinkHQ | N/A | Mar 29–April 1, 2022 | [p 81] | 34% | 46% | 5% | 2% | — | — | 13% | 2% | 2.9% | 1,135 | Online | 12% |
Mainstreet Research | N/A | Mar 23–24, 2022 | [p 82] | 37% | 40% | 6% | 2% | — | 1% | 9% | 4% | 3% | 1,290 | IVR | 3% |
Leger | N/A | Mar 18–20, 2022 | [p 83] | 35% | 44% | 3% | 4% | — | — | 8% | 6% | 3.1% | 1,002 | Online | 9% |
Angus Reid | N/A | Mar 10–15, 2022 | [p 84][p 85] | 38% | 40% | 6% | 2% | — | — | 11% | 3% | 4% | 584 | Online | 2% |
Research Co. | N/A | Mar 11–13, 2022 | [p 86] | 30% | 45% | 7% | 5% | 1% | 3% | 8% | 1% | 4% | 600 | Online | 15% |
Janet Brown Opinion Research | N/A | Feb 25–Mar 10, 2022 | [p 87] | 40% | 36% | — | — | — | — | — | — | 3.3% | 900 | Telephone | 4% |
Yorkville Strategies | N/A | Mar 3–9, 2022 | [p 88] | 44% | 39% | 4% | 3% | — | — | 8% | 2% | 4% | 600 | Telephone | 5% |
Angus Reid | N/A | Jan 7–12, 2022 | [p 89] | 31% | 42% | 8% | 1% | — | — | 16% | 2% | 4% | 548 | Online | 11% |
Leger | Postmedia | Dec 2–5, 2021 | [p 90] | 32% | 43% | — | — | — | — | 10% | — | 2.8% | 1,249 | Online | 11% |
Nanos | Yellowstone to Yukon | Oct 13–Nov 1, 2021 | [p 91] | 38.8% | 47.2% | 6.5% | 2.1% | — | 0.1% | 3.3% | 1.8% | 3.5% | 801 | Online | 8.4% |
Mainstreet Research | Western Standard | Oct 12–13, 2021 | [p 92] | 29% | 45% | 6% | 2% | — | 1% | 13% | — | 3.2% | 935 | IVR | 16% |
Commonground | N/A | Sep 21–Oct 6, 2021 | [p 93] | 26.9% | 49.5% | 6.7% | 5.2% | — | — | 5.3% | 6.4% | N/A | 1,204 | Online | 22.6% |
Innovative Research | N/A | Sep 24–Oct 5, 2021 | [p 94] | 29% | 45% | 5% | 9% | — | 2% | 8% | 1% | N/A | 672 | Online | 16% |
Angus Reid | N/A | Sep 29–Oct 3, 2021 | [p 95] | 31% | 43% | 7% | 2% | — | 1% | 15% | 2% | 2.0% | 552 | Online | 12% |
Innovative Research | N/A | Sep 10–12, 2021 | [p 96] | 31% | 44% | 5% | 8% | — | 4% | 7% | 1% | N/A | 209 | Online | 13% |
Leger | Postmedia | July 22–26, 2021 | [p 97] | 34% | 45% | 6% | 4% | — | — | 8% | 2% | 3% | 1,377 | Online | 11% |
Angus Reid | N/A | June 2–7, 2021 | [p 98] | 30% | 41% | 7% | 1% | — | — | 20% | 2% | 4% | 502 | Online | 11% |
Mainstreet Research | Western Standard | May 19–20, 2021 | [p 99] | 31% | 38% | 6% | 3% | — | 3% | 17% | — | 3% | 1,010 | IVR | 7% |
Janet Brown Opinion Research | CBC | Mar 15–April 10, 2021 | [p 100] | 37% | 45% | 6% | — | — | — | 6% | 7% | 2.1% | 1,200 | Online | 8% |
Leger | Calgary Herald | Mar 5–8, 2021 | [p 101] | 30% | 51% | 5% | 7% | — | — | — | 6% | 3.1% | 1,001 | Online | 21% |
Commonground | N/A | Mar 1–8, 2021 | [p 102] | 32% | 42% | 5% | 6% | — | — | 4% | 9% | N/A | 802 | Online | 9% |
Angus Reid | N/A | Feb 26–Mar 3, 2021 | [p 103][p 104] | 38% | 41% | 10% | 2% | — | 1% | — | 11% | 4% | 603 | Online | 3% |
Mainstreet Research | Western Standard | Jan 6–7, 2021 | [p 105] | 31% | 48% | 4% | 3% | — | 2% | 10% | 2% | 3.1% | 1,003 | Smart IVR | 17% |
Research Co. | N/A | Dec 2–4, 2020 | [p 106] | 40% | 43% | 9% | 2% | — | 2% | 2% | — | 4% | 600 | Online | 3% |
Angus Reid | N/A | Nov 24–30, 2020 | [p 107][p 108] | 43% | 39% | 10% | 2% | — | 1% | — | 5% | — | 553 | Online | 4% |
Environics Research | CUPE | Nov 10–23, 2020 | [p 109] | 40% | 47% | 8% | — | — | — | — | 5% | — | 1,205 | — | 7% |
Angus Reid | N/A | Aug 26–Sep 1, 2020 | [p 110][p 111] | 38% | 38% | 9% | 2% | 7% | 1% | — | 5% | 4% | 512 | Online | Tie |
Commonground | N/A | Aug 17–30, 2020 | [p 112] | 37% | 30% | — | 11% | — | — | — | 21% | N/A | 824 | Online | 7% |
Innovative Research Group | N/A | Jul 14–20, 2020 | [p 113] | 42% | 32% | 9% | 12% | — | 3% | — | 3% | — | 300 | Online | 10% |
Innovative Research Group | N/A | Jun 19–23, 2020 | [p 114] | 44% | 38% | 5% | 6% | — | 3% | — | 3% | — | 267 | Online | 6% |
Innovative Research Group | N/A | May 29–June 1, 2020 | [p 115] | 42% | 28% | 11% | 14% | — | 3% | — | 2% | — | 276 | Online | 14% |
Janet Brown Opinion Research | CBC | May 25–June 1, 2020 | [p 116] | 46% | 36% | 10% | 6% | — | — | — | 3% | 3.3% | 900 | Online | 10% |
Angus Reid | N/A | May 19–24, 2020 | [p 117][p 118] | 42% | 36% | 5% | 2% | 8% | 2% | — | 4% | 1.4% | 580 | Online | 6% |
Northwest Research Group | Western Standard | May 14–19, 2020 | [p 119] | 40% | 34% | 8% | 7% | — | 1% | 10% | — | 3% | 1,094 | IVR | 6% |
Innovative Research Group | N/A | May 1–5, 2020 | [p 120] | 45% | 30% | 6% | 8% | — | 7% | — | 2% | — | 314 | Online | 15% |
Angus Reid | N/A | Feb 24–28, 2020 | [p 121][p 122] | 40% | 36% | 8% | 2% | 9% | 1% | — | 4% | — | 555 | Online | 4% |
Mainstreet Research | 338Canada | Feb 22, 2020 | [p 123] | 47% | 38% | 6% | 4% | — | — | — | 5% | 4% | 751 | IVR | 9% |
Stratcom | N/A | Nov 21, 2019 | [p 124] | 42% | 46% | — | — | — | — | — | 12% | 2.2% | 1,798 | IVR | 4% |
Lethbridge College | N/A | Oct 5-10, 2019 | [p 125] | 58.1% | 23.2% | 5.8% | 7.8% | — | — | — | 5.2% | 3.17% | 953 | Telephone | 34.9% |
2019 general election | April 16, 2019 | 54.9% | 32.7% | 9.1% | 1.0% | 0.7% | 0.4% | — | 1.2% | — | — | — | 22.2% | ||
Pollster | Client | Dates conducted |
Source | Others | Margin of error | Sample size |
Polling method |
Lead | |||||||
UCP | NDP | Alberta | Liberal | IPA | Green | WIP |
Regional polls
Opinion polls in Calgary | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Pollster | Client | Dates conducted |
Source | UCP | NDP | Alberta | Liberal | Green | WIP | Others | Margin of error | Sample size |
Polling method |
Lead |
ThinkHQ | N/A | May 19–23, 2023 | [p 126] | 43% | 49% | 6% | 2% | – | – | 1% | 3% | 973 | Online | 6% |
Mainstreet Research | N/A | April 17–18, 2023 | [p 127] | 45.6% | 44.1% | – | – | – | – | – | 2.4% | <1,651 | Smart IVR | 1.5% |
Janet Brown Opinion Research | CBC | Mar 23–April 6, 2023 | [p 128] | 42% | 47% | 3% | 1% | 1% | 1% | – | 3.1% | 1,000 | Telephone / Online | 5% |
2019 general election | April 16, 2019 | 53.2% | 34.0% | 9.5% | 2.0% | 0.6% | — | — | — | — | — | 18.6% | ||
Pollster | Client | Dates conducted |
Source | UCP | NDP | Alberta | Liberal | Green | WIP | Others | Margin of error | Sample size |
Polling method |
Lead |
Candidates
Candidates who are running are as follows:[120]
Party leaders are in bold. Candidate names appear as they appeared on the ballot.
† = Not seeking re-election
‡ = Running for re-election in different riding § = Represents that the incumbent lost that party's nomination
Northern Alberta
Electoral district | Candidates | Incumbent | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
UCP | NDP | Alberta Party | Alberta Independence | Other | ||||||||
Athabasca-Barrhead-Westlock | Glenn van Dijken | Landen Tischer | Glenn van Dijken | |||||||||
Bonnyville-Cold Lake-St. Paul | Scott Cyr | Caitlyn Blake | Dave Hanson§ | |||||||||
Central Peace-Notley | Todd Loewen | Megan Ciurysek | Wanda Lynn Lekisch | Rodney Bowen | Nancy O'Neill (SMA) | Todd Loewen | ||||||
Fort McMurray-Lac La Biche | Brian Jean | Calan William Simeon Hobbs | Kdmkevin Johnston (Ind.) | Brian Jean | ||||||||
Fort McMurray-Wood Buffalo | Tany Yao | Tanika Chaisson | Bradley Friesen | Funky Banjoko (Ind.) Zulkifl Mujahid (Ind.) |
Tany Yao | |||||||
Grande Prairie | Nolan Dyck | Kevin McLean | Preston Mildenberger | David Braun | Shane Diederich (Green) | Tracy Allard† | ||||||
Grande Prairie-Wapiti | Ron Wiebe | Dustin Archibald | Brooklyn Biegel | Travis Toews† | ||||||||
Lesser Slave Lake | Scott Sinclair | Danielle Larivee | Bert "Bertrand" Seatter (SMA) | Pat Rehn† | ||||||||
Peace River | Dan Williams | Liana Paiva | Sharon Noullett | Conrad Nunweiler (Ind.) | Dan Williams |
Edmonton
Central
Electoral district | Candidates | Incumbent | ||||||||
---|---|---|---|---|---|---|---|---|---|---|
UCP | NDP | Green | Other | |||||||
Edmonton-City Centre | Richard Wong | David Shepherd | David Clark | David Shepherd | ||||||
Edmonton-Glenora | Melissa Crane | Sarah Hoffman | Julian Schulz | David John Bohonos (SMA) | Sarah Hoffman | |||||
Edmonton-Gold Bar | Miles Berry | Marlin Schmidt | Ernestina Malheiro | Graham Lettner (Ind.) | Marlin Schmidt | |||||
Edmonton-Highlands-Norwood | Nicholas Kalynchuk | Janis Irwin | Kristine Kowalchuk | Naomi Rankin (Comm.) | Janis Irwin | |||||
Edmonton-Riverview | Terry Vankka | Lori Sigurdson | Robin George | Eric Champagne (Lib.) | Lori Sigurdson | |||||
Edmonton-Strathcona | Emad El-Zein | Rachel Notley | Robert Gooding-Townsend | Andrew Jacobson (Buffalo) Robert Nielsen (WLC) |
Rachel Notley |
North
Electoral district | Candidates | Incumbent | ||||||||
---|---|---|---|---|---|---|---|---|---|---|
UCP | NDP | Green | Other | |||||||
Edmonton-Beverly-Clareview | Luke Suvanto | Peggy Wright | Michael Hunter | Andrzej "Andy" Gudanowski (Ind.) | Deron Bilous† | |||||
Edmonton-Castle Downs | Jon Dziadyk | Nicole Goehring | Patrick Stewart (AP) | Nicole Goehring | ||||||
Edmonton-Decore | Sayid Ahmed | Sharif Haji | Brent Tyson (AP) Don Slater (Lib.) |
Chris Nielsen§ | ||||||
Edmonton-Manning | Albert Mazzocca | Heather Sweet | Derek Thompson | Heather Sweet | ||||||
Edmonton-McClung | Daniel Heikkinen | Lorne Dach | Terry Syvenky | Andrew J. Lineker (Ind.) | Lorne Dach | |||||
Edmonton-North West | Ali Haymour | David Eggen | Tyler Beaulac | David Eggen | ||||||
Edmonton-West Henday | Slava Cravcenco | Brooks Arcand-Paul | Kristina Howard | Dan Bildhauer (Lib.) | Jon Carson† |
South
Electoral district | Candidates | Incumbent | ||||||||
---|---|---|---|---|---|---|---|---|---|---|
UCP | NDP | Green | Other | |||||||
Edmonton-Ellerslie | R. Singh Bath | Rod Loyola | Angela Stretch (WLC) | Rod Loyola | ||||||
Edmonton-Meadows | Amrit Singh Matharu | Jasvir Deol | Corrine Benson (Comm.) | Jasvir Deol | ||||||
Edmonton-Mill Woods | Raman Athwal | Christina Gray | Christina Gray | |||||||
Edmonton-Rutherford | Laine Larson | Jodi Calahoo Stonehouse | Jordan Wilkie | Richard Feehan† | ||||||
Edmonton-South | Joseph Angeles | Rhiannon Hoyle | Chryssy Beckmann | Thomas Dang† | ||||||
Edmonton-South West | Kaycee Madu | Nathan Ip | Jeff Cullihall | Kaycee Madu | ||||||
Edmonton-Whitemud | Raj Sherman | Rakhi Pancholi | Cheri Hawley | Donna Wilson (Lib.) | Rakhi Pancholi |
Suburbs
Electoral district | Candidates | Incumbent | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
UCP | NDP | Green | SMA | Other | ||||||||
Fort Saskatchewan-Vegreville | Jackie Armstrong-Homeniuk | Taneen Rudyk | Margaret MacKay | Kelly Zeleny (APA) Kathy Flett (Ind.) |
Jackie Armstrong-Homeniuk | |||||||
Leduc-Beaumont | Brandon Lunty | Cam Heenan | Bill Kaufmann | Sharon MacLise (IPA) Kirk Cayer (Ind.) |
Brad Rutherford† | |||||||
Morinville-St. Albert | Dale Nally | Karen Shaw | Kurt Klingbeil | Wayne Rufiange (AP) | Dale Nally | |||||||
St. Albert | Angela Wood | Marie Renaud | Cameron Jefferies | Marie Renaud | ||||||||
Sherwood Park | Jordan Walker | Kyle Kasawski | Sue Timanson (AP) Jacob Stacey (Lib.) |
Jordan Walker | ||||||||
Spruce Grove-Stony Plain | Searle Turton | Chantal Saramaga-McKenzie | Daniel Birrell | Darlene Clarke | Searle Turton | |||||||
Strathcona-Sherwood Park | Nate Glubish | Bill Tonita | Jody Balanko (Ind.) | Nate Glubish |
Central Alberta
West
Electoral district | Candidates | Incumbent | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
UCP | NDP | Green | WLC | SMA | Other | |||||||||
Drayton Valley-Devon | Andrew Boitchenko | Harry Singh | Jon Hokanson | Gail Tookey | Dale Withers (APA) | Mark Smith† | ||||||||
Innisfail-Sylvan Lake | Devin Dreeshen | Jason Heistad | Brandon Pringle | David Reid (IPA) Jeevan Mangat (WIP) Randy Thorsteinson (Reform) |
Devin Dreeshen | |||||||||
Lac Ste. Anne-Parkland | Shane Getson | Oneil Carlier | Vanessa Diehl | Marilyn Burns (APA) Janet Jabush (AP) |
Shane Getson | |||||||||
Red Deer-North | Adriana LaGrange | Jaelene Tweedle | Heather Morigeau | Kallie Dyck | Vicky Bayford (IPA) | Adriana LaGrange | ||||||||
Red Deer-South | Jason Stephan | Michelle Baer | Ashley MacDonald | Jesse Stretch | Pamela Liebenberg | Jason Stephan | ||||||||
Rimbey-Rocky Mountain House-Sundre | Jason Nixon | Vance Buchwald | Tami Tatlock | Carol Nordlund Kinsey (APA) Fred Schwieger (Ind.) Tim Hoven (Ind.) |
Jason Nixon | |||||||||
West Yellowhead | Martin Long | Fred Kreiner | Martin Long |
East
Electoral district | Candidates | Incumbent | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
UCP | NDP | Green | WLC | SMA | Other | |||||||||
Camrose | Jackie Lovely | Richard Bruneau | Pamela Henson | Bob Blayone (Ind.) | Jackie Lovely | |||||||||
Drumheller-Stettler | Nate Horner | Juliet Franklin | Hannah Stretch Viens | Carla Evers | Shannon Packham (IPA) | Nate Horner | ||||||||
Lacombe-Ponoka | Jennifer Johnson | Dave Dale | Taylor Lowery | Daniel Jeffries | Nathan Leslie | Myles Chykerda (AP) | Ron Orr† | |||||||
Maskwacis-Wetaskiwin | Rick Wilson | Katherine Swampy | Justin Fuss | Suzanne Jubb | Marie Rittenhouse (Ind.) | Rick Wilson | ||||||||
Vermilion-Lloydminster-Wainwright | Garth Rowswell | Dawn Flaata | Tigra-Lee Campbell | Danny Hozack | Darrell Dunn (AP) Matthew Powell (Ind.) |
Garth Rowswell |
Calgary
Central
Electoral district | Candidates | Incumbent | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
UCP | NDP | Green | SMA | Other | ||||||||
Calgary-Buffalo | Astrid Kuhn | Joe Ceci | Jonathan Parks | Lola Henry | Joe Ceci | |||||||
Calgary-Currie | Nicholas Milliken | Janet Eremenko | Lane Robson | Dawid Pawlowski | Leila Keith (Lib.) Jason Avramenko (AP) |
Nicholas Milliken | ||||||
Calgary-Elbow | Chris Davis | Samir Kayande | Artur Pawlowski | Kerry Cundal (AP) | Vacant | |||||||
Calgary-Klein | Jeremy Nixon | Lizette Tejada | Kenneth Drysdale | Rob Oswin | Jeremy Nixon | |||||||
Calgary-Mountain View | Pamela Rath | Kathleen Ganley | Christopher Wedick | Lucas Hernandez (Pro-Life) Frances Woytkiw (Lib.) |
Kathleen Ganley | |||||||
Calgary-Varsity | Jason Copping | Luanne Metz | Kent Liang | Oaklan Davidsen (WLC) | Jason Copping |
East
Electoral district | Candidates | Incumbent | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
UCP | NDP | Green | SMA | Other | ||||||||
Calgary-Cross | Mickey Amery | Gurinder Singh Gill | Aman Sandhu | Kathryn Lapp | Mickey Amery | |||||||
Calgary-East | Peter Singh | Rosman Valencia | Jayden Baldonado | Garry Dirk | Jonathan Trautman (Comm.) | Peter Singh | ||||||
Calgary-Falconridge | Devinder Toor | Parmeet Singh Boparai | Ahmed Hassan | Evan Wilson | Kyle Kennedy (Ind.) | Devinder Toor | ||||||
Calgary-Bhullar-McCall | Amanpreet Singh Gill | Irfan Sabir | Irfan Sabir | |||||||||
Calgary-North East | Inder Grewal | Gurinder Brar | Rajan Sawhney‡ | |||||||||
Calgary-Peigan | Tanya Fir | Denis Ram | Shaun Pulsifer | Tanya Fir |
Northwest
Electoral district | Candidates | Incumbent | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
UCP | NDP | Alberta Party | SMA | Other | ||||||||
Calgary-Beddington | Josephine Pon | Amanda Chapman | Wayne Jackson | Zarnab Shahid Zafar (Lib.) | Josephine Pon | |||||||
Calgary-Bow | Demetrios Nicolaides | Druh Farrell | Paul Godard | Manuel Santos | Demetrios Nicolaides | |||||||
Calgary-Edgemont | Prasad Panda | Julia Hayter | Allen Schultz | Miles Williams | Nan Barron (WLC) | Prasad Panda | ||||||
Calgary-Foothills | Jason Luan | Court Ellingson | Kami Dass | Keenan DeMontigny (Ind.) | Jason Luan | |||||||
Calgary-North | Muhammad Yaseen | Rajesh Angral | Muhammad Yaseen | |||||||||
Calgary-North West | Rajan Sawhney | Michael Lisboa-Smith | Jenny Yeremiy | Alain Habel | Serena Thomsen (Ind.) | Sonya Savage† | ||||||
Calgary-West | Mike Ellis | Joan Chand'oiseau | Jason McKee (Green) | Mike Ellis |
South
Electoral district | Candidates | Incumbent | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
UCP | NDP | Green | SMA | Other | ||||||||
Calgary-Acadia | Tyler Shandro | Diana Batten | Paul Bechthold | Linda McClelland | Larry R. Heather (Ind.) Donna Kathleen Scott (WLC) |
Tyler Shandro | ||||||
Calgary-Fish Creek | Myles McDougall | Rebecca Bounsall | Dave Hughes | Charlie Heater (Lib.) | Richard Gotfried† | |||||||
Calgary-Glenmore | Whitney Issik | Nagwan Al-Guneid | Steven Maffioli | Whitney Issik | ||||||||
Calgary-Hays | Richard William "Ric" McIver | Andrew Stewart | Evelyn Tanaka | Garry Leonhardt | Ric McIver | |||||||
Calgary-Lougheed | Eric Bouchard | Venkat Ravulaparthi | Nathaniel Pawlowski | John Roggeveen (Lib.) | Vacant | |||||||
Calgary-Shaw | Rebecca Schulz | David Cloutier | Pietro Cervo | Rebecca Schulz | ||||||||
Calgary-South East | Matt Jones | Justin Huseby | Catriona Wright | Heinrich Friesen | Matt Jones |
Suburbs
Electoral district | Candidates | Incumbent | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
UCP | NDP | Green | SMA | Other | ||||||||
Airdrie-Cochrane | Peter Guthrie | Shaun Fluker | Michelle Overwater Giles | Michael Andrusco | Ron Voss (WLC) | Peter Guthrie | ||||||
Airdrie-East | Angela Pitt | Dan Nelles | Michael Jacobsen | Angela Pitt | ||||||||
Banff-Kananaskis | Miranda Rosin | Sarah Elmeligi | Regan Boychuk | Kyle Jubb | Miranda Rosin | |||||||
Chestermere-Strathmore | Chantelle de Jonge | Raj Jessel | Jed Laboucane | Kerry Lambert (IPA) Terry Nicholls (Ind.) |
Leela Aheer† | |||||||
Highwood | R.J. Sigurdson | Jessica Hallam | Mike Lorusso (WIP) | R. J. Sigurdson | ||||||||
Olds-Didsbury-Three Hills | Nathan Cooper | Cheryl Hunter Loewen | Judy Bridges | Katherine Kowalchuk (IPA) Cam Tatlock (WLC) |
Nathan Cooper |
Southern Alberta
Electoral district | Candidates | Incumbent | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
UCP | NDP | Alberta Party | Alberta Independence | Liberal | Other | |||||||||
Brooks-Medicine Hat | Danielle Smith | Gwendoline Dirk | Barry Morishita | Danielle Smith | ||||||||||
Cardston-Siksika | Joseph Schow | Colleen Quintal | Terry Wolsey | Par Wantenaar (SMA) Angela Tabak (Ind.) |
Joseph Schow | |||||||||
Cypress-Medicine Hat | Justin Wright | Cathy Hogg | Cody Ray Both | Matt Orr (WLC) | Drew Barnes† | |||||||||
Lethbridge-East | Nathan Neudorf | Rob Miyashiro | Helen McMenamin | Nathan Neudorf | ||||||||||
Lethbridge-West | Cheryl Seaborn | Shannon Phillips | Braham Luddu | Pat Chizek | Shannon Phillips | |||||||||
Livingstone-Macleod | Chelsae Petrovic | Kevin Van Tighem | Kevin Todd | Corrie Reed Toone | Dylin Hauser | Erik Abildgaard (Ind.) | Roger Reid† | |||||||
Taber-Warner | Grant Hunter | Jazminn Hintz | Frank Kast | Paul Hinman (WLC) Joel Hunt (Green) Brent Ginther (SMA) |
Grant Hunter |
Results
<templatestyles src="Module:Hatnote/styles.css"></templatestyles>
The United Conservative Party was re-elected to majority government, receiving both majority of votes cast and majority of the seats in the Alberta Legislative Assembly. The Alberta NDP received the highest share of the vote in its history and elected its second-best-ever number of MLAs. The race was noteworthy both as one of the fiercest two-way battles in the last hundred years in Canadian history and by its results — electing only two parties in the Legislature, unusually producing a second back-to-back two-party legislature.
The UCP swept nearly all ridings outside of Calgary and Edmonton: the NDP won only four seats outside of either city, with two being suburban seats located in Metro Edmonton (St. Albert and Sherwood Park), one seat in Lethbridge (Lethbridge-West) and a single rural seat surrounding Banff National Park (Banff-Kananaskis). Conversely, the NDP made a clean one-party sweep of Edmonton's 20 seats. The parties ran nearly evenly in Calgary: the NDP won 14 seats to the UCP's 12, with several seats decided by very narrow margins.
The Liberal Party got its lowest vote record in its history with just 0.24%.
Legislature summary
<templatestyles src="Module:Hatnote/styles.css"></templatestyles>
Party | Votes | Seats | ||||
---|---|---|---|---|---|---|
United Conservative | 926,918 |
52.6%
|
![]() |
49 / 87 (56%)
|
![]() |
|
New Democratic | 776,188 |
44.0%
|
![]() |
38 / 87 (44%)
|
![]() |
|
Others and independents | 60,300 |
3.4%
|
0 / 87 (0%)
|
Party[122] | Leader | Candidates | Seats | Popular vote | ||||||
---|---|---|---|---|---|---|---|---|---|---|
2019 | Dissol. | 2023 | +/- | Votes | % | +/- | ||||
United Conservative | Danielle Smith | 87[lower-alpha 7] | 63 | 60 | 49 | -14 | 926,918 | 52.56% | -2.32 | |
New Democratic | Rachel Notley | 87 | 24 | 23 | 38 | +14 | 776,188 | 44.02% | +11.35 | |
Green | Jordan Wilkie | 41 | – | – | – | – | 14,085 | 0.80% | +0.49 | |
Independent | 22 | – | 2 | – | – | 12,728 | 0.72% | +0.31 | ||
Alberta Party | Barry Morishita | 19 | – | – | – | – | 12,715 | 0.72% | -8.36 | |
Alberta Independence | Vacant | 14 | – | – | – | – | 5,181 | 0.29% | -0.42 | |
Solidarity Movement | Artur Pawlowski | 38 | New | – | – | – | 4,812 | 0.27% | New | |
Liberal | John Roggeveen | 13 | – | – | – | – | 4,282 | 0.24% | -0.74 | |
WLC | Paul Hinman | 16 | New | – | – | – | 4,256 | 0.24% | New | |
Wildrose Independence | Jeevan Mangat (i) | 2 | New | – | – | – | 825 | 0.05% | New | |
Advantage Party | Marilyn Burns | 4 | – | – | – | – | 711 | 0.04% | -0.26 | |
Communist | Naomi Rankin | 3 | – | – | – | – | 377 | 0.02% | – | |
Reform | Randy Thorsteinson | 1 | – | – | – | – | 132 | 0.01% | +0.01 | |
Buffalo | John Molberg | 1 | New | – | – | – | 106 | 0.01% | New | |
Pro-Life | Murray Ruhl | 1 | – | – | – | – | 90 | 0.01% | +0.01 | |
Vacant | 2 | |||||||||
Blank and invalid votes | 8,883 | – | – | |||||||
Total | 349 | 87 | 87 | 87 | 87 | 1,763,406 | 100.00% | – | ||
Registered voters/turnout | 2,840,924 | 62.38% | – |
Seats that changed hands
MLAs who lost their seats
Open seats changing hands
Riding | Party | Candidate | Incumbent retiring from the House | Won by | Party |
---|---|---|---|---|---|
Calgary-Elbow[134] | █ United Conservative | Chris Davis | Doug Schweitzer (resigned on August 31, 2022) | Samir Kayande | █ New Democratic |
Calgary-North East[135] | █ United Conservative | Inder Grewal | Rajan Sawhney (stood in Calgary-North West) | Gurinder Brar | █ New Democratic |
Notes
- ↑ Includes Jennifer Johnson, who appeared on the ballot as a UCP candidate but was disavowed by the party during the campaign. She will not be seated as a member of the UCP caucus.
- ↑ Dang was elected in the 2019 election as an NDP candidate but later became an Independent MLA.
- ↑ Barnes was elected in the 2019 election as a UCP candidate but later became an Independent MLA.
- ↑ Johnson will not caucus with the UCP due to a controversy regarding her comments on trans youth.
- ↑ Though Sawhney initially declared that she would not seek re-election in her own riding of Calgary-North East, she was later appointed the UCP candidate in Calgary-North West.
- ↑ Yao originally lost the UCP nomination to Zulkifl Mujahid in December 2022; after Mujahid was disqualified in April 2023, Yao was appointed the UCP candidate in his place.
- ↑ Includes Jennifer Johnson in Lacombe-Ponoka, who lost party support after the close of nominations. If elected, she is not expected to be seated in the UCP caucus.
References
- ↑ 1.0 1.1 1.2 1.3 1.4 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ https://results.elections.ab.ca/8400
- ↑ 4.0 4.1 DeCillia 2023, p. 59.
- ↑ Thomson 2023, p. 19.
- ↑ Stewart & Sayers 2019, pp. 414–415.
- ↑ Stewart & Sayers 2019, p. 415.
- ↑ Stewart & Sayers 2019, pp. 415–416.
- ↑ 9.0 9.1 DeCillia 2023, p. 68.
- ↑ Stewart & Sayers 2023, p. 95.
- ↑ Young 2023, p. 448.
- ↑ Bratt, Sutherland & Young 2023, p. 1.
- ↑ Stewart & Sayers 2023, p. 83.
- ↑ Stewart & Sayers 2023, p. 100.
- ↑ Bratt & Sutherland 2023, p. 469.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 52.0 52.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 53.0 53.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 57.0 57.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 58.0 58.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 66.0 66.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 67.0 67.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 68.0 68.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 69.0 69.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 70.0 70.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 71.0 71.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 72.0 72.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 73.0 73.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 74.0 74.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 75.0 75.1 75.2 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 76.0 76.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 77.0 77.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 78.0 78.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 79.0 79.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 80.0 80.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 81.0 81.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 86.0 86.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 87.0 87.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 88.0 88.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 94.0 94.1 94.2 94.3 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 96.0 96.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 103.0 103.1 103.2 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 105.0 105.1 105.2 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ https://results.elections.ab.ca/8400
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- Works cited
- Lua error in package.lua at line 80: module 'strict' not found.
- Lua error in package.lua at line 80: module 'strict' not found.
- Lua error in package.lua at line 80: module 'strict' not found.
- Lua error in package.lua at line 80: module 'strict' not found.
- Lua error in package.lua at line 80: module 'strict' not found.
- Lua error in package.lua at line 80: module 'strict' not found.
- Lua error in package.lua at line 80: module 'strict' not found.
- Lua error in package.lua at line 80: module 'strict' not found.
- Lua error in package.lua at line 80: module 'strict' not found.
See also
Footnotes
Opinion poll sources
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found. Note: UCP number combines responses for "UCP under Jason Kenney" and "UCP under a different leader".
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
External links
- Articles with short description
- Use Canadian English from May 2023
- Articles with invalid date parameter in template
- All Wikipedia articles written in Canadian English
- Use mdy dates from October 2022
- Pages with broken file links
- Articles with hatnote templates targeting a nonexistent page
- Elections in Alberta
- 2023 elections in Canada
- 2023 in Alberta
- May 2023 events in Canada