The BJP has emerged victorious in seven seats in bypolls to 11 Assembly constituencies, with its ally Apna Dal picking up an eighth in Pratapgarh. The opposition, led by the Samajwadi Party (SP) and the Bahujan Samaj Party (BSP) put up a strong fight but their challenged faded as the votes rolled in for Chief Minister Yogi Adityanath's government. The SP claimed three seats, including that of Zaidpur, which was held by the BJP, and also retained the Rampur constituency.
The BJP was defending eight seats and will likely be pleased it has managed to retain seven; it contested a total of 10, leaving Pratapgarh to its ally. The party, which claimed more than 300 seats on its own in full Assembly elections two years ago, had declared itself confident of sweeping all 11 seats.
"We are going to win all 11 seats," Deputy Chief Minister Keshav Maurya was quoted in a report by news agency IANS.
The contest for the Rampur seat was keenly observed. It is the stronghold of nine-time SP MLA Azam Khan and fell vacant after he was elected to parliament in national elections held in April-May. The party fielded his wife, Tanzeema Fatima, from the seat and she won by 7,716 votes from the BJP's Bharat Bhushan Gupta.
Over the past few months, UP police had filed more than 80 cases against Azam Khan, with allegations ranging from land grab and encroachment to the theft of farm animals. Last week the veteran politician claimed he had been targeted "because I have neither sold you (the people of Rampur) nor myself".
All of this did not deter Mr Khan, 71, from wielding his influence in the region. With his wife and son, Abdullah Azam Khan, who is also a MLA, by his side, it was the veteran politician who did most of the talking at rallies.
There was controversy in results for the Gangoh seat where the BJP's Kirat Singh beat Nooman Masood of the Congress by 5,419 votes.
Speaking after results were declared, Congress General Secretary Priyanka Gandhi Vadra alleged the UP administration had interfered with the counting of votes.
"Our candidate was winning from the Gangoh seat when he was expelled from the counting centre. The District Magistrate was repeatedly getting calls to do so. We urge the Election Commission to conduct an unbiased investigation into the matter," Ms Gandhi Vadra told news agency ANI.
In the other contests, the BJP's Suresh Chandra Tiwari beat Major Ashish Chaturvedi of the Samajwadi Party by 35,428 seats to the Lucknow Cantonment seat. Gaurav Kumar of the Samajwadi Party beat the BJP's Ambrish to the Zaidpur seat by 4,165 votes and his colleague, Subhash Rai, narrowly beat Chhaya Verma of the BSP to the Jalalpur seat by 790 votes. Saroj Sonkar of the BJP beat Kiran Bharti of the Samajwadi Party to Balha by 46,487 seats.
With input from IANS, ANI