The 2025 Buffalo mayoral election was held on November 4, 2025, to elect the mayor of Buffalo, New York.
Incumbent acting mayor Christopher Scanlon, who took office upon the resignation of Byron Brown, ran for a full term but was defeated in the Democratic primary by state senator Sean Ryan. The Republican Party nominated former county assistant district attorney James Gardner, who lost the election in a landslide.
Democratic primary
In anticipation of mayor Byron Brown's resignation, South Buffalo councilman and fellow Democrat Christopher Scanlon was elected president of the Buffalo Common Council by a council vote on January 2, 2024. Scanlon had organized Brown's write-in campaign for the 2021 Buffalo mayoral election that won him a fifth term. Brown resigned to become chief executive officer of Western Regional Off-Track Betting on October 15, 2024, making Scanlon the acting mayor through right of succession to serve out his remaining term.
State senator Sean Ryan was endorsed by the Erie County Democratic Committee on February 22, 2025. The endorsement process faced criticism, as committee chairman Jeremy Zellner announced Ryan's endorsement several days before a vote was held among membership. Zellner denied rumors that he had pushed for Ryan's endorsement in exchange for being appointed to Ryan's state senate seat if he won mayorship. As both party chairman and self-appointed Erie County board of elections commissioner, Zellner has been accused of having a conflict of interest with regards to elections and nominating petitions. Four candidates alleged impropriety in the endorsement process: Buffalo ReUse founder Michael Gainer, acting mayor Christopher Scanlon, former Buffalo Fire commissioner Garnell Whitfield, and common councilor Rasheed Wyatt.
Michael Gainer was disqualified from the primary after Sean Ryan sued him in New York Supreme Court, successfully alleging that his nominating petition contained fraud. Gainer then petitioned to run as an independent candidate in the general election, and he appeared on the Restore Buffalo line. Christopher Scanlon also completed an independent petition for the general election. Garnell Whitfield's petition for an independent line was disqualified by the Erie County board of elections after a challenge by Scanlon's campaign.
Frontrunners Sean Ryan and Christopher Scanlon both launched attack ads against each other in the leadup to the primary. Ryan's ads accused Scanlon of accepting donations from Republican Carl Paladino, while Scanlon's ads accused Ryan of endorsing 2021 candidate India Walton and her platform to defund the police.
Sean Ryan won the Democratic primary on June 24, 2025. 27% of registered Democrats cast ballots, which was a higher voter turnout than the 2021 primary. 7,500 ballots were cast during the nine-day early voting period, up from 2,684 in 2021. Christopher Scanlon withdrew his independent bid following the primary and announced he would return to the Buffalo Common Council presidency, ensuring a new mayor would be decided in the general election.
Candidates Nominee + Democratic candidates Candidate Experience Announced NY state senator for the 61st district (2021–present)NY assemblymember for the 149th district (2011–2021)Website
Eliminated in primary Christopher Scanlon, acting mayor Anthony Tyson-Thompson, former communications director for state assemblywoman Crystal Peoples-Stokes Garnell Whitfield, former Buffalo Fire commissioner Rasheed Wyatt, common councilor for the University district
Disqualified Michael Gainer, member of the Erie County Democratic Committee and founder of Buffalo ReUse (running as an independent)
Withdrawn Maggie Harter, community activist James McLeod, retired Buffalo City Court judge James Payne, community activist Terrence Robinson, community activist and Green nominee for mayor in 2017
Declined India Walton, community organizer and nominee for mayor in 2021
Endorsements
Debates + 2025 Buffalo Democratic mayoral primary debates Date Host Moderator Link ParticipantsKey: Participant Absent Non-invitee Invitee Withdrawn Ryan Scanlon Tyson-Thompson Whitfield Wyatt 1 June 3, 2025 WIVB-TV Dave GreberMarlee Tuskes Video 2 June 17, 2025 WKBW-TV Michael Wooten Video
Forums + 2025 Buffalo Democratic mayoral primary forums Date Host Moderator Link ParticipantsKey: Participant Absent Non-invitee Invitee Withdrawn Gainer Ryan Scanlon Tyson-Thompson Whitfield Wyatt Other 1 December 5, 2024 ECDC Jennifer Hibit Audio 2 January 25, 2025 ECDC Jennifer Hibit Video 3 February 18, 2025 ECDC Jeremy Zellner Video None 4 March 5, 2025 ESCP Austin MartinSherry Sherrill Video 5 May 12, 2025 LCV Michael WootenJulie Tighe Video None 6 May 30, 2025 WUFO Darius PridgenMarc Pope Video None 7 May 30, 2025 Casting Buffalo Harry Lipsitz Video None 8 May 31, 2025 NYIC Win Min Thant Video None 9 June 4, 2025 Good FoodBuffalo Coalition Brenda McDuffie Video None 10 June 5, 2025 The Buffalo News Deidre WilliamsElizabeth LicataJustin Sondel Video None 11 June 12, 2025 WNYIL Todd Vaarwerk Video None 12 June 13, 2025 BRRAlliance Timothy Priano Video None
Fundraising Campaign finance reports as of June 17, 2025CandidateRaisedTotal fundsSpentEst.Cash on handSean Ryan$583,626$1,041,626$975,007$74,205Christopher Scanlon$664,668$1,209,551$857,397$340,338Anthony Tyson-Thompson$3,380$3,380$0$3,380Garnell Whitfield$45,240$76,042$70,153$5,488Rasheed Wyatt$31,437$44,132$17,898$24,861Source: The Buffalo News
Results
Republican nomination James Gardner was initially reported as being a placeholder candidate who would later give up his ballot line after the party nominated him to a judgeship in Yonkers. He denied those claims and declared his intention to compete in the general election. Erie County clerk Michael Kearns had reportedly offered to replace Gardner on the ballot.
Candidates Nominee + Republican candidates Candidate Experience Announced James GardnerErie County assistant district attorney (2010–2017)Nominee for Erie County district attorney in 2024Website
Declined Christopher Scanlon, acting mayor (Democratic)
Endorsements
Working Families nomination The Working Families Party clarified that their nomination of Sean Ryan was contingent on him winning the Democratic primary. They reserved the right to rescind their nomination should he have been defeated, as the party historically does not endorse spoiler candidates. Ryan also said he would have withdrawn from the mayoral race if he lost the Democratic primary.
Candidates Nominee Sean Ryan, state senator for the 61st district (Democratic)
Endorsements
Conservative nomination James Gardner has worked as a civil attorney for the law firm of Erie County Conservative Party chairman Ralph Lorigo since January 2025.
Candidates Nominee James Gardner, former Erie County assistant district attorney (Republican)
Declined Christopher Scanlon, acting mayor (Democratic)
Endorsements
Independent candidates Michael Gainer and Christopher Scanlon filed independent petitions to run in the general election under new party lines, ensuring they would be able to continue their campaigns even if they failed to secure the Democratic nomination. Garnell Whitfield's independent petition was disqualified by the Erie County board of elections after a challenge by Scanlon's campaign. Scanlon announced that he was withdrawing his independent candidacy and would instead return to serving as Buffalo Common Council president.
Candidates Declared Michael Gainer, Erie County Democratic Committee member (2024–present) and founder of Buffalo ReUse Disqualified Garnell Whitfield, former Buffalo Fire commissioner (Democratic) Withdrawn Ryan Caughill, emergency preparedness consultant (endorsed Whitfield) Christopher Scanlon, acting mayor (Democratic) Declined Sean Ryan, state senator for the 61st district Rasheed Wyatt, common councilor for the University district
General election Campaign Republican nominee James Gardner staged a press conference to launch his general election campaign on July 9, 2025. He likened Ryan to New York City mayoral nominee Zohran Mamdani, claiming that Ryan is a supporter of socialism. Both Ryan and Mamdani were endorsed by the Working Families Party, which Gardner described as "extremist". Ryan dismissed Gardner's claims, with Erie County Democratic Committee chair Jeremy Zellner saying he was "confident" Ryan would be victorious in the November election.
Ryan led the general election candidates in fundraising, with his top donors including developers Michael Chapman and Sam Savarino, former mayor Anthony Masiello, city contractor Alternative Information Systems, and electronic cigarette mogul Alex Alarshi. A $1,500 donation by former mayor Byron Brown was refused by Ryan's campaign, but Ryan did accept a $5,000 donation from Magellan Technologies, an electronic cigarette distributor under federal investigation. Gardner's campaign was primarily self-funded, with his top donors including Buffalo Police officer Adam Wigdorski, the Buffalo Police Benevolent Association, former congressman Chris Jacobs, and former parking commissioner Kevin Helfer. Gainer's campaign was also largely self-funded, with outside donations coming from Jacobs, developer Bill Breeser, and attorney Adam Walters.
The election took place on November 4th, 2025. The Associated Press called the race for Sean Ryan at 10:14 p.m. EST that night. In total, 42,488 votes were cast and counted, including 30,497 votes (71.78%) for Sean Ryan, 9,654 votes (22.72%) for James Gardner, 1,966 votes (4.63%) for Michael Gainer, and 371 write-in votes.
As Ryan won the mayorship, a February 2026 special election was held for his state senate seat. State assemblyman Jonathan Rivera declared his candidacy for Ryan's state senate seat on October 9, 2025. Jeremy Zellner challenged Rivera for the state senate seat, and he criticized Rivera for announcing his candidacy prior to the mayoral election. Erie County Republican Committee chairman Michael Kracker also condemned Rivera's announcement, describing it as disrespectful to city voters. Zellner won the special election.
Forums + 2025 Buffalo mayoral general election forums Date Host Moderator Link ParticipantsKey: Participant Absent Non-invitee Invitee Withdrawn Gainer Gardner Ryan 1 September 25, 2025 Allentown Association Justin Sondel Video 2 October 9, 2025 Alpha Kappa Alpha
Debates + 2025 Buffalo mayoral general election debates Date Host Moderator Link ParticipantsKey: Participant Absent Non-invitee Invitee Withdrawn Gainer Gardner Ryan 1 October 23, 2025 St. Joseph's Collegiate Institute Ted Lina
Fundraising Campaign finance reports as of October 3, 2025CandidateRaisedTotal fundsSpentEst.Cash on handMichael Gainer$2,752$5,752$6,847$0James Gardner$10,888$118,097$114,580$3,516Sean Ryan$183,306$213,306$146,584$66,200Source: Investigative Post
Results
Notes
References
External links Official campaign websites Michael Gainer (I) for Mayor James Gardner (R) for Mayor Maggie Harter (D) for Mayor James McLeod (D) for Mayor Sean Ryan (D) for Mayor Christopher Scanlon (D) for Mayor Anthony Tyson-Thompson (D) for Mayor Garnell Whitfield (D) for Mayor Rasheed Wyatt (D) for Mayor