At 9 am on November 20, Mohsin Haque*, 30, walked out of his home in Hameerpur village in Uttar Pradesh’s Kundarki constituency to cast his vote.

Kundarki was holding a bye-election to elect an MLA after its former legislator, Zia ur Rehman Barq, was elected member of Parliament in the Lok Sabha elections earlier this year.

The polling centre, as always, was the village’s primary school.

But that morning, there was an unusual sight on the concrete road that cuts through the village. Nearly 60 police officials stood outside the village mosque. Most of them were from three local police stations – Mundha Pande, Katghar and Bhojpur.

“They were checking everyone’s IDs and letting in only a few people,” Haque recalled. “The police official who checked mine told me to come after 10 am.”

Election Commission rules dictate that only election officials can check identity cards during an election, and not police officials.

When Haque returned at 11 am, another police official told him to come after 1 pm. By now, word had spread that the police were only letting Hindu voters into the polling centre and wielding sticks on anyone who argued, Haque said.

“I reached the booth at 1.30 pm, but Rinku and Yaadram, the BJP booth presidents in our village, told me to not even try touching the voter lists. So I went home,” said Haque, who ended up not voting.

He was not alone.

Several residents of Hameerpur told Scroll that the police barred Muslims from voting that day.

According to Election Commission of India data, Hameerpur has 2,205 registered voters. Residents say that about 80% of them are Muslim and the remaining are Dalit.

A constituency with around 63% Muslim voters, Kundarki is a stronghold of the Samajwadi Party. In the last decade, the Bharatiya Janata Party has never managed a vote share more than 37.9%.

But the results of the bye-poll, when they were announced on November 23, threw up a massive surprise.

The BJP’s Ramveer Singh won by a landslide, with the party’s vote share doubling to an unprecedented 76.6%. Singh’s winning margin over Mohammad Rizwan, the Samajwadi Party candidate, was 1.4 lakh votes.

Singh, a Thakur who contested and lost Kundarki in 2012 and 2017, attributed his success to pulling in Muslim votes. He told Hindustan Times that of the 1.7 lakh votes he got, 82,000 came from Muslims.

The Samajwadi Party has contested the result. On voting day itself, Rizwan had demanded a repoll and accused the administration of voter suppression.

Moradabad district magistrate Anuj Singh denied the SP’s claims. “The election is going on peacefully here,” he said. “Some complaints were lodged by a particular party, which were confirmed by the officials, but no truth was found in them.”

Scroll travelled to Kundarki to investigate the allegations.

In five villages we visited, most Muslim voters said that they could not cast their votes in the bye-election, pointing to obstruction and intimidation by police officials, who allegedly turned away Muslim voters from the polling stations.

We found that in two polling stations in Muslim-dominant Gurer village, not a single vote was counted, according to official data, even though voters said they voted there on November 20.

Others said that they did not receive their voter information slips.

Strikingly, those who did get voter slips said that the police officials only let in voters with a special voting slip that was allegedly distributed by the BJP cadre.

Allegations of voter suppression are not new to western Uttar Pradesh. They came up during the 2022 bye-election in Rampur parliamentary constituency, which the BJP won. Scroll had reported on police officials storming polling stations and assaulting voters in Muslim-dominant villages in Sambhal Lok Sabha constituency – which includes the Kundarki assembly – during the 2024 general elections, which the Samajwadi Party won.

In Sambhal, most voters returned to vote later in the day. But in Kundarki this time, they could not, because of alleged police presence near the polling centres around-the-clock. “We have been turned into slaves,” rued Haque. “They have taken away our right to vote.”

On polling day, the ECI suspended three police officials in Moradabad district, which includes Kundarki, warning that “any kind of biased attitude during voting will not be tolerated”.

Scroll emailed Uttar Pradesh’s chief electoral officer about allegations of voter suppression. The story will be updated if he responds.

What the data shows

Official data captures the striking difference in how Kundari voted in this bye-poll.

Booth-wise data obtained from the returning officer by Scroll shows that compared to the Lok Sabha elections this year, the BJP votes increased and the Samajwadi Party votes decreased in nearly each of the 436 polling stations in Kundarki – regardless of whether the turnout increased or decreased, or roughly remained the same.

Compared to the general elections, the BJP increased its votes in 429 polling stations in the bye-election, registering a dramatic increase in most booths. In one extreme instance, in the Muslim-dominant village of Lalvara, its vote share has climbed from 3.9% to 89.7%.

In Hameerpur, where Mohsin Haque was allegedly stopped from voting, a similar trend was visible.

In the village’s polling stations 185 and 186, the turnout fell from 75.9% and 70.1% during the Lok Sabha election to 20.6% and 15.9% during the bye-election.

The Samajwadi Party, which won the booths with 539 and 593 votes during the elections in May, was reduced to just 13 and 4 votes, respectively. The Bahujan Samaj Party, which won 145 and 137 votes six months ago, fell to 2 and 1 vote, while the Azad Samaj Party got 27 and 8 votes.

The BJP came out on top, increasing its vote tally from 119 and 43 in the Lok Sabha election to 194 and 162 this time.

The ‘pink’ slips

Voter information slips contain voter details – name, gender, polling station and similar information. They are printed by the district election officer and distributed by booth-level officers before polling day.

The slips are checked by election officials before residents are allowed to cast their votes.

In Hameerpur, residents told Scroll that Vicky Singh, the son of BJP candidate Ramveer Singh, distributed square-shaped voting slips, cut out of white paper, with pink borders, to the village’s Dalit voters.

Vicky is the vice-president of the Bharatiya Janata Yuva Morcha in Moradabad, the youth wing of the Hindutva party.

“The police only allowed voters with those slips to vote,” said Arslan Hasan*, a butcher in Hameerpur. “Vicky had dozens of them.”

Haque and Hasan say that Vicky was accompanied by 10-15 young men who went inside the polling stations. “They were not from this village,” said Haque.

Scroll phone and texted Vicky Singh repeatedly to ask about the allegations. He had not respond till the time of publication.

The pink slips allegedly distributed in Veerpur and Hameerpur.
The voter information slip authorised by the ECI.

In Veerpur village, a Muslim-dominant village with 4,608 registered voters, 5 km from Hameerpur, several residents said they had a similar experience.

Aslam, who owns a shop in the village, said his entire family “got pink slips” this time. The family, he said, has connections with the local BJP unit. “About a decade ago, my chacha was elected the chief of this village,” he explained. “He was close to Ramveer [Singh] and the BJP.”

Of the five men sipping tea at his shop, none had received the pink slips – and none of them had been able to vote.

The pink slips were used as voter information slips, said Aslam. “They were distributed by Ramveer’s men on voting day, but not to those who are inclined to vote for the Samajwadi Party,” he added.

The slips in Kundarki, seen by Scroll, fall short of the guidelines set by the Election Commission of India, which say that they should contain QR codes with details of the voters and should be half the size of an A4 sheet of paper. Any “unauthorised distribution/ possession of” voter information slip is considered a violation of the Representation of People Act, 1951, and the Indian Penal Code.

Veerpur resident Riyazul Hasan, 60, also said he and his family received pink slips and were allowed to vote. “I’ve been associated with Ramveer Singh for two decades,” said Riyazul. “Everyone who voted here did so because of the pink slips distributed by Singh’s people. Others had their IDs taken before the election, or were turned away from the booth.”

Among those who received the authorised voting slips was Sameer Ahmed, 54, and his family. But Ahmed alleged he was turned away from the polling booth by police officials, despite having a voter information slip issued by the Election Commission of India. “The SHO [Station House Officer] of Mundha Pande police station was also there during the checking,” he said. “I’ve never seen such an election in my life.”

Sameer Ahmed in Veerpur village in Kundarki. Credit: Ayush Tiwari.

Ahmed told Scroll that he took his Aadhaar card to the polling station on November 20 because he did not have his voter identity card.

The ration dealer in Veerpur, Mohammad Rashid, had collected voter identity cards a week before the bye-election, he added. “He [Rashid] said that we would receive ration this month only if one member in the family submits their voter ID,” he said. “We received the ration on November 24, but I still haven’t received my ID.”

Haque and Hasan said that the same situation played out in Hameerpur, where many voters were forced to part with their voter identity cards by a ration dealer a week before the bye-poll. “I’m afraid that they were used to cast votes in our name,” said Haque.

Musharraf, a Samajwadi Party worker in Veerpur, alleged that Rashid had been pressured by the district administration to collect hundreds of voter identity cards. But the ration dealer denied the claim. “I did not collect the voter IDs, nor did I face any pressure,” said Rashid. “Our whole village wanted the BJP to win.”

Like Hameerpur, Veerpur’s turnout dipped significantly on polling day, rocketing up the BJP vote share while bringing down the Samajwadi Party’s.

Muslims in Hameerpur and Veerpur identify as sheikhzadas, a Muslim caste that BJP functionaries label “Muslim Rajputs”. They purportedly voted for the BJP’s Singh, a Hindu Rajput, because of his caste.

But voters in both villages denied any such affiliations. “The world can come to an end, but BJP can’t win in this village,” said Rifaqat, 41, a Veerpur resident. “We’ll find out the real mood in 2027.”

The high turnout villages

Despite a dramatic fall in voter turnouts in several villages, the Kundarki assembly ended up with a cumulative turnout of 57.8% – the highest among the nine seats in Uttar Pradesh that were up for bye-elections. This is possibly because several villages also recorded very high turnouts.

One of them is Sirsa Inayatpur, a village next to the Moradabad bypass, with 3,090 registered voters – 60% Hindus, mostly Lodhi Rajputs and Sainis, and 40% Muslims.

Sirsa Inayatput village in Kundarki. Credit: Ayush Tiwari.

Gajram, 41, a Lodhi Rajput voter, told Scroll that most Hindus in the village had voted for the BJP. “The main issue here is that we don’t have a pukka road to cross the bypass and go to Moradabad,” he explained. “Ramveer [Singh] said that if he doesn’t build the road after becoming MLA, we shouldn’t let him into the village. So people chose him over [Samajwadi Party candidate] Rizwan.”

But Muslims here say they could not vote, like 78-year-old Mohammad Suka. “I did not get my voter slip, so I went to the booth to get one,” he said. “The police officials there asked me to go away, and when I insisted, I received lathi blows.”

Nawab Ali, 64, also said that no one in his family or extended family got voter slips before polling day. “Only Hindus here had the pink slips and only they have voted,” he said. “Some of them boasted that they had voted multiple times.”

Scroll contacted Yogesh Saxena and Sheetal Tyagi, the booth level officers in Sirsa Inayatpur responsible for distributing the slips. “We couldn’t distribute the voting slips this time because we didn’t get it from above,” said Saxena. Tyagi said she got the slips and distributed them among Hindu and Muslim voters “provided they were present at their homes”.

Despite Muslims claiming that they did not vote, the voter turnout in Sirsa Inayatpur during the bye-election was the highest since 2019. Booth-wise data shows that the BJP cornered almost all the votes, with the Samajwadi Party falling below 1% vote share.

And yet, there are villages in Kundarki where Muslim voters said that they voted without obstruction from the police. Like in Muslim-dominant Daulra, 25 km from Sirsa Inayatput, which has 2,599 registered voters. There appeared to be resentment against the Samajwadi Party candidate Mohammad Rizwan here.

Shaukat Ali in Daulra village in Kundarki. Credit: Ayush Tiwari.

“This bye-election has been fought under police pressure in most places, but not here,” said Shaukat Ali, 62, who runs a shop in Daulra. “I voted for the BJP this time because Rizwan has been elected MLA thrice from this seat but he has done no work in our village. He’s a party hopper fighting elections for money.”

The voter turnout in Daulra did not fall sharply in the bye-election, but the vote share in the village was no different from others: the BJP rose while the SP crashed.

The zero-vote polling booths

The most curious polling stations in the bye-election were in Gurer village, 30 km away from Daulra. It has 5,260 registered voters. About 60% are Muslims voter but 40% Dalit voters.

Official booth-wise data shows that zero votes were counted in two of the six polling stations in Gurer – polling stations 351 and 352, which have 1,887 registered voters.

Amit Kumar, the booth level officer at polling station 352, said that his booth had a turnout of 55%-60% on polling day, that is, between 670 and 730 votes were cast. “I was there. The voting happened normally,” he said. “I don’t understand how one could say that no votes were cast in our booth.”

An official from the Election Commission of India, however, told Scroll that 152 votes were polled at station number 351 and 418 votes at polling station 352. But they were not counted because mock poll results had not been deleted from the electronic voting machines before polling. “When the margin in the constituency is big, we do not count the votes,” said the official. “When the contest is close, we count the VVPAT slips.”

Muslim voters in Gurer alleged that they were singled out for obstruction by nearly 200 police officials from Dedauli police station in Amroha district, and the nearby Dingarpur chowki, from 8 am to 6 pm on November 20.

Ghulam Rabbani, a 26-year-old resident, said that he managed to vote at polling station 352 at 2 pm, when the All India Majlis-e-Ittehadul Muslimeen candidate, Mohammad Varish, arrived in the village and persuaded police officials to let voters in. “They [police] let us vote for some time, but they were abusive,” recalled Rabbani.

Ghulam Rabbani in Gurer village in Kundarki. Credit: Ayush Tiwari.

The AIMIM candidate confirmed this. “They let in 15-20 people in after I came, but Muslim voters were stopped and sent back from the polling station before I came, and after I left,” he said. “I went to at least 10 villages that day. It was the same situation everywhere.”

The voting trend in Gurer is not much different from other villages in Kundarki.

Mohammad Akram*, 50, a BJP worker in Gurer, told Scroll that he was allowed to vote because he argued with a police official, and because of his association with the Hindutva party. “I took many voters with me to the booth and the police did not let them in,” he said. “It was shocking. I believe Ramveer could have won without such tactics. Now people mock me saying what’s the use of my association with the party when I couldn’t help them vote. Humari naak kat gayi gaon mai.” My reputation in the village has been damaged.

Shaukat Ali in Daulra, the rare Muslim voter who voted for the BJP, was not optimistic about the party’s future in Kundarki. “The way this election happened, the BJP should not assume it will keep winning here,” he said. “The SP will win in 2027. It’s just a matter of two and half years for Ramveer.”

* Names have been changed to protect the identity of voters