The 2025 Kostroma Oblast Duma election took place on 12–14 September 2025, on common election day, coinciding with 2025 Kostroma Oblast gubernatorial election. All 35 seats in the Oblast Duma were up for re-election.

United Russia increased its already overwhelming majority in the Legislative Assembly, winning 50.3% of the vote and 21 of 25 single-mandate constituencies. Liberal Democratic Party of Russia came in second, doubling its faction to two deputies. Communist Party of the Russian Federation and A Just Russia – For Truth saw their vote share decreasing by roughly a third, however, CPRF retained its two-member faction, while SR–ZP even gained one more seat in a single-member constituency.

Electoral system Under current election laws, the Oblast Duma is elected for a term of five years, with parallel voting. 10 seats are elected by party-list proportional representation with a 5% electoral threshold, with the other half elected in 25 single-member constituencies by first-past-the-post voting. Seats in the proportional part are allocated using the Imperiali quota, modified to ensure that every party list, which passes the threshold, receives at least one mandate.

Candidates Party lists To register regional lists of candidates, parties need to collect 0.5% of signatures of all registered voters in Kostroma Oblast.

The following parties were relieved from the necessity to collect signatures: United Russia Communist Party of the Russian Federation Liberal Democratic Party of Russia A Just Russia — Patriots — For Truth New People Russian Party of Pensioners for Social Justice Communists of Russia

№PartyTerritorial groups leadersCandidatesTerritorial groupsStatus1 United RussiaNikolay Kopytov • Svetlana Kirillova • Aleksey Anokhin • Mikhail Dushin • Vladimir Unguryan255 Registered2 Liberal Democratic PartyVyacheslav Matokhin • Irina Ponomareva • Yury Mindolin • Natalya Kalembrik • Ruslan Fedorov205 Registered3 Communists of RussiaIlya Kleymyonov • Sergey Malinkovich • Yaroslav Sidorov • Ruslan Khugayev • Ilya Aleksandrov225 Registered4 Communist PartyAleksandr Kiselev • Sergey Shpotin • Olga Panova • Sergey Rassechkin • Valery Izhitsky215 Registered5 New PeoplePavel Zayfidi • Maria Bazhenova • Aleksandr Vlas • Igor Prudnikov • Ivan Kucheryavy255 Registered6 Party of PensionersAnton Gromov • Sergey Kamilatov • Yury Kudryavtsev • Dmitry Shestakov • Yury Shestakov225 Registered7 A Just Russia – For TruthAlexey Chepa • Daniil Potekhin • Olga Zinovyeva • Nikolay Tsvil • Vyacheslav Golovnikov225 Registered8 Party of Social ProtectionMaksim Postnikov • Vladimir Mikhaylov • Yelena Gribova • Valery Pleshevich • Viktor Perov205Failed to qualify RodinaDmitry Serov • Vladislav Rozov • Yury Sharanov • Vladimir Kukharenko • Yelena Savitskaya155Did not file

Yabloko, which participated in the last election, did not file, while For Truth has been dissolved since.

Party of Social Protection, led by Kostroma Oblast Duma member and businessman Vladimir Mikhaylov, was initially denied document filing by the Electoral Commission of Kostroma Oblast due to irregularities at the party conference. The party was able to hold another conference and file the documents again four days later, however, this time the party failed to qualify after the electoral commission ruled the party had United Russia members as conference participants. On August 5 Kostroma Oblast Court ruled in favour of the party and obliged the electoral commission to register Party of Social Protection list but party candidates in single-mandate constituencies were not reinstated. On September 9, First Appellate Court overturned the Kostroma Oblast Court's ruling on party reinstatement and the same day Kostroma Oblast Court ordered to remove Party of Social Protection from the ballot. During the 2020 election the party was also removed from the ballot after initial registration.

Single-mandate constituencies 25 single-mandate constituencies were formed in Kostroma Oblast. To register candidates in single-mandate constituencies need to collect 3% of signatures of registered voters in the constituency.

+Number of candidates in single-mandate constituenciesPartyCandidatesNominatedRegisteredUnited Russia2524Communist Party2524Liberal Democratic Party2424A Just Russia – For Truth2120Party of Pensioners1919New People2221Rodina10 Party of Social Protection20Total139132

Polls Fieldwork datePolling firm UR LDPR CPRF RPPSS NL SR-ZP CPCR14 September 20252025 election50.312.111.37.36.86.13.623–24 August 2025Russian Field44.216.015.27.58.46.31.213 September 20202020 election31.912.117.28.37.59.23.0

Results Results by party lists

|- style="background-color:#E9E9E9;text-align:center;" ! rowspan=2 colspan=2| Party ! colspan=5| Party list ! colspan=2| Constituency ! colspan=2| Total |- ! width="75"| Votes ! % ! ±pp ! Seats ! +/– ! Seats ! +/– ! Seats ! +/– |- | style="background-color:;"| | style="text-align:left;"| United Russia | | 50.26 | 18.34 | 5 | | 21 | 2 | 26 | 2 |- | style="background-color:;"| | style="text-align:left;"| Liberal Democratic Party | | 12.12 | 0.01 | 1 | | 1 | 1 | 2 | 1 |- | style="background-color:;"| | style="text-align:left;"| Communist Party | | 11.26 | 5.97 | 1 | | 1 | | 2

| style="background-color:;"| | style="text-align:left;"| Party of Pensioners | | 7.25 | 1.09 | 1 | | 0 | | 1

| style="background-color:;"| | style="text-align:left;"| New People | | 6.83 | 0.63 | 1 | | 0 | | 1

| style="background-color:;"| | style="text-align:left;"| A Just Russia — For Truth | | 6.13 | 3.03 | 1 | | 2 | 1 | 3 | 1 |- | colspan="11" style="background-color:#E9E9E9;"| |- | style="background-color:;"| | style="text-align:left;"| Communists of Russia | | 3.56 | 0.55 | 0 | | – | – | 0

| style="text-align:left;" colspan="2"| Invalid ballots | | 2.59 | 3.15 | — | — | — | — | — | — |- style="font-weight:bold" | style="text-align:left;" colspan="2"| Total | | 100.00 | — | 10 | | 25 | | 35

| colspan="11" style="background-color:#E9E9E9;"| |- | style="text-align:left;" colspan="2"| Turnout | | 39.72 | 7.75 | — | — | — | — | — | — |- | style="text-align:left;" colspan="2"| Registered voters | | 100.00 | — | — | — | — | — | — | — |- | colspan="11" style="background-color:#E9E9E9;"| |- style="font-weight:bold" | colspan="10" |Source:

Aleksey Anokhin (United Russia) was re-elected as Chairman of the Oblast Duma, while Svetlana Kirillova (Independent/United Russia), widow of general Igor Kirillov, was appointed to the Federation Council, replacing retiring incumbent Senator Sergey Kalashnik (United Russia).

Results in single-member constituencies District 1 • District 2 • District 3 • District 4 • District 5 • District 6 • District 7 • District 8 • District 9 • District 10 • District 11 • District 12 • District 13 • District 14 • District 15 • District 16 • District 17 • District 18 • District 19 • District 20 • District 21 • District 22 • District 23 • District 24 • District 25__NOTOC__

District 1

! colspan=2 style="background-color:#E9E9E9;text-align:left;vertical-align:top;" |Candidate ! style="background-color:#E9E9E9;text-align:left;vertical-align:top;" |Party ! style="background-color:#E9E9E9;text-align:right;" |Votes ! style="background-color:#E9E9E9;text-align:right;" |% |- |style="background-color:"| |align=left|Ilya Nevsky (incumbent) |align=left|United Russia | |43.07% |- |style="background-color:"| |align=left|Vyacheslav Vlasov |align=left|New People | |11.85% |- |style="background-color:"| |align=left|Maria Pasechnik |align=left|Communist Party | |11.62% |- |style="background-color:"| |align=left|Yelena Levina |align=left|A Just Russia – For Truth | |11.22% |- |style="background-color:"| |align=left|Anna Gorchagova |align=left|Liberal Democratic Party | |8.81% |- |style="background-color:"| |align=left|Sergey Smirnov |align=left|Party of Pensioners | |8.73% |- | colspan="5" style="background-color:#E9E9E9;"| |- style="font-weight:bold" | colspan="3" style="text-align:left;" | Total | | 100% |- | colspan="5" style="background-color:#E9E9E9;"| |- style="font-weight:bold" | colspan="4" |Source:

District 2

! colspan=2 style="background-color:#E9E9E9;text-align:left;vertical-align:top;" |Candidate ! style="background-color:#E9E9E9;text-align:left;vertical-align:top;" |Party ! style="background-color:#E9E9E9;text-align:right;" |Votes ! style="background-color:#E9E9E9;text-align:right;" |% |- |style="background-color:"| |align=left|Sergey Demenkov (incumbent) |align=left|United Russia | |46.55% |- |style="background-color:"| |align=left|Ivan Saburov |align=left|Communist Party | |22.40% |- |style="background-color:"| |align=left|Vyacheslav Matokhin |align=left|Liberal Democratic Party | |9.23% |- |style="background-color:"| |align=left|Sergey Malkov |align=left|Party of Pensioners | |8.75% |- |style="background-color:"| |align=left|Aleksandr Vlas |align=left|New People | |8.17% |- | colspan="5" style="background-color:#E9E9E9;"| |- style="font-weight:bold" | colspan="3" style="text-align:left;" | Total | | 100% |- | colspan="5" style="background-color:#E9E9E9;"| |- style="font-weight:bold" | colspan="4" |Source:

District 3

! colspan=2 style="background-color:#E9E9E9;text-align:left;vertical-align:top;" |Candidate ! style="background-color:#E9E9E9;text-align:left;vertical-align:top;" |Party ! style="background-color:#E9E9E9;text-align:right;" |Votes ! style="background-color:#E9E9E9;text-align:right;" |% |- |style="background-color:"| |align=left|Vladimir Khramov (incumbent) |align=left|United Russia | |46.83% |- |style="background-color:"| |align=left|Nikolay Smirnov |align=left|A Just Russia – For Truth | |14.71% |- |style="background-color:"| |align=left|Aleksandr Kiselev |align=left|Communist Party | |11.93% |- |style="background-color:"| |align=left|Lyubov Zimovets |align=left|Party of Pensioners | |11.11% |- |style="background-color:"| |align=left|Anastasia Kopyonkina |align=left|Liberal Democratic Party | |10.62% |- | colspan="5" style="background-color:#E9E9E9;"| |- style="font-weight:bold" | colspan="3" style="text-align:left;" | Total | | 100% |- | colspan="5" style="background-color:#E9E9E9;"| |- style="font-weight:bold" | colspan="4" |Source:

District 4

! colspan=2 style="background-color:#E9E9E9;text-align:left;vertical-align:top;" |Candidate ! style="background-color:#E9E9E9;text-align:left;vertical-align:top;" |Party ! style="background-color:#E9E9E9;text-align:right;" |Votes ! style="background-color:#E9E9E9;text-align:right;" |% |- |style="background-color:"| |align=left|Yevgeny Maslennikov |align=left|United Russia | |37.39% |- |style="background-color:"| |align=left|Aleksandr Vasilyev |align=left|Liberal Democratic Party | |18.55% |- |style="background-color:"| |align=left|Vladimir Rassadin |align=left|New People | |13.80% |- |style="background-color:"| |align=left|Ilya Smirnov |align=left|Communist Party | |10.27% |- |style="background-color:"| |align=left|Denis Gomzelev |align=left|A Just Russia – For Truth | |8.19% |- |style="background-color:"| |align=left|Aleksandr Tretyakov |align=left|Party of Pensioners | |6.43% |- | colspan="5" style="background-color:#E9E9E9;"| |- style="font-weight:bold" | colspan="3" style="text-align:left;" | Total | | 100% |- | colspan="5" style="background-color:#E9E9E9;"| |- style="font-weight:bold" | colspan="4" |Source:

District 5

! colspan=2 style="background-color:#E9E9E9;text-align:left;vertical-align:top;" |Candidate ! style="background-color:#E9E9E9;text-align:left;vertical-align:top;" |Party ! style="background-color:#E9E9E9;text-align:right;" |Votes ! style="background-color:#E9E9E9;text-align:right;" |% |- |style="background-color:"| |align=left|Vladimir Komissarov |align=left|United Russia | |37.08% |- |style="background-color:"| |align=left|Leonid Serov |align=left|Communist Party | |14.63% |- |style="background-color:"| |align=left|Darya Sokolova |align=left|New People | |12.75% |- |style="background-color:"|