UK parliamentary by-election
A by-election was held in the United Kingdom parliamentary constituency of Selby and Ainsty in North Yorkshire on 20 July 2023, following the announcement on 10 June that the incumbent Conservative Party member of Parliament (MP), Nigel Adams, was standing down from Parliament with immediate effect. Adams had previously announced his intention to stand down as an MP at the 2024 general election, with the party having selected a candidate to succeed him the previous day. Adams formally confirmed his resignation on 12 June.
Keir Mather of the Labour Party won the seat, setting a record for the largest majority ever overturned by the party in a by-election at the time, even as the Labour candidate in the much more marginal Uxbridge and South Ruislip failed to win a by-election held there on the same day. At the time, this was the second-largest swing to Labour in a by-election since 1945 (behind only Dudley West in 1994), but it was then exceeded in the Tamworth by-election held that October and now stands as the third-largest; the Mid Bedfordshire by-election held the same day would also see Labour overturn a larger majority than in Selby.
Background.
Selby and Ainsty is a rural constituency in North Yorkshire, covering the former District of Selby (defunct since 2023). The only towns are the namesake market town of Selby and the smaller towns of Tadcaster and Sherburn in Elmet. The rural areas of the seat include parts of the ancient wapentake of the Ainsty of York and villages such as Camblesforth and Eggborough. Since boundary changes in advance of the 2010 election, Selby and Ainsty had been considered a "traditional Tory safe seat".
Incumbent MP Nigel Adams had been a close ally of former Prime Minister Boris Johnson. He had served as the constituency's MP since its creation in 2010 and had most recently defended it in 2019 with a majority of just over 20,000 votes relative to his nearest competitor. He resigned as an MP one day after Johnson did, an action which itself triggered a by-election in Uxbridge and South Ruislip; Adams had previously rejected the idea he would stand down as an MP early. He had been expected to receive a peerage as part of Boris Johnson's resignation honours, but had been removed from the final list by the House of Lords Appointments Commission (HOLAC).
"The Sunday Times" reported that, on 2 June 2023, Johnson met the incumbent Conservative Prime Minister, Rishi Sunak, and agreed to campaign for him if Sunak approved his honours list. A source close to Sunak denied any deal was agreed, but that Sunak said he would not interfere in the process. The list of proposed peerages went to the commission, which rejected several names, presumed to include Dorries and Adams, as they were serving MPs who were not planning to stand down imminently. This led to a row about whether arrangements could be made for Adams and the others. Johnson wanted Sunak to overrule the HOLAC or promise to give Adams, Dorries and Alok Sharma peerages later, but Sunak refused.
The Uxbridge and South Ruislip and Somerton and Frome by-elections were held on the same day.
Candidate selection.
Lawyer Claire Holmes was selected as the Conservative candidate on 18 June. Michael Naughton, a Conservative Party candidate in the 2014 and 2019 European Parliament elections, had previously been selected as the Conservatives' PPC for the seat on 9 June, defeating Zak Khan and Andrew Lee for the nomination; journalist Sebastian Payne had also applied but did not make the shortlist. It subsequently emerged that Naughton had actually been selected for the new Selby constituency, the de facto successor seat to Selby and Ainsty for the next general election following boundary changes, and the selection of Naughton as the candidate for the by-election had therefore been run on incorrect boundaries, excluding party members that resided inside Selby and Ainsty, but outside of the future Selby constituency. The following day, Naughton stood down as the party's PPC for the redefined Selby seat, due to unrelated family matters.
On 15 June the Labour Party announced 25-year-old Keir Mather, who most recently worked at the Confederation of British Industry, as their candidate.
On 22 June the Liberal Democrats announced their candidate as Matt Walker, who works as a National Health Service manager and serves as a councillor on North Yorkshire Council.
On 14 June the Conservatives lost their majority on North Yorkshire Council following the resignation of one of their councillors. Mike Jordan, who represents the Camblesforth &amp; Carlton ward in the Selby area, cited concerns about the party nationally for his reason for leaving the party. Jordan rejoined his old party, the Yorkshire Party, and was announced as the party's candidate in the by-election. However, Jordan is listed on the Statement of Persons Nominated with no party affiliation.
Arnold Warneken, a local councillor for Ouseburn ward, was selected for the Green Party on 11 June 2023. He had contested the seat for the party in the 2019 election.
David Kent stood for Reform UK while Guy Phoenix stood for the Heritage Party.
Campaign.
On 13 June, Labour Party National Campaign Coordinator Shabana Mahmood ruled out a Lib–Lab pact. Liberal Democrat leader Ed Davey had done the same on 10 June.
On 8 July, Prime Minister Rishi Sunak campaigned with the Conservative candidate Claire Holmes in Selby and Ainsty.
Polling.
An opinion poll conducted by J.L. Partners and commissioned by pressure group "38 Degrees", published on 6 July, found that Labour held a twelve-point lead over the Conservatives in the seat. Labour ultimately won the seat with a lead of 11.6 points over the Conservative candidate, a similar margin to that predicted by the poll.
Results.
Thirteen candidates sought election. The full list was announced on 23 June 2023.
! scope="col" colspan="2" style="width: 130px"|Party
! scope="col" style="width: 17em"|Candidate
! scope="col" style="width: 5em"|Votes
! scope="col" style="width: 3.5em"|%
! scope="col" style="width: 3.5em"| ;templatestyles src="Template:Tooltip/styles.css" / ;±%
! colspan="3" style="text-align: right; margin-right: 0.5em" | Rejected ballots
! colspan="3" style="text-align:right;" scope=row | Registered electors
! colspan="3" style="text-align: right; margin-right: 0.5em" | Majority
! colspan="3" style="text-align: right; margin-right: 0.5em" scope=row | Turnout
! style="text-align:right;" | Swing
Previous result.
! scope="col" colspan="2" style="width: 130px"|Party
! scope="col" style="width: 17em"|Candidate
! scope="col" style="width: 5em"|Votes
! scope="col" style="width: 3.5em"|%
! scope="col" style="width: 3.5em"| ;templatestyles src="Template:Tooltip/styles.css" / ;±%
! colspan="3" style="text-align: right; margin-right: 0.5em" | Majority
! colspan="3" style="text-align: right; margin-right: 0.5em" scope=row | Turnout
! style="text-align:right;" | Swing
References.
 ;templatestyles src="Reflist/styles.css" / ;