Here are the latest developments in this story:
The BJP, which had won the national elections handsomely four months ago, has taken the biggest hit. It had held 26 of the 32 assembly seats in eight states for which votes were counted today. It has retained 12, also ceding ground to the Congress in Gujarat and Rajasthan, both states it had swept in the national elections.
In Gujarat, Prime Minister Narendra Modi's state, the BJP's perfect score of 26-0 in the May national elections remains unblemished with it's candidate winning Vadodara, the one Lok Sabha seat where by-elections were held after Mr Modi vacated it choosing to keep Varanasi in Uttar Pradesh as his parliamentary constituency.
But the headline in Gujarat is that the Congress, flattened in the state four months ago, has wrested from the BJP three of the nine seats it had vacated, necessitating by-elections.
In UP, by-elections were also held for one Lok Sabha seat - Mainpuri, vacated by Samajwadi Party chief Mulayam Singh Yadav. The party has retained the seat; Mulayam Singh's grand-nephew Tej Pratap Singh Yadav, 26, is the new MP. (Samajwadi Party Wrests BJP Seats in UP, Wins On PM Modi's Turf)
In Rajasthan, another state that the BJP swept in both the national elections and in state elections a few months before that, the Congress has won three of the four assembly seats. Here too the BJP had held all four; it managed to win back only the Kota South seat. "The BJP should take a lesson from these elections and introspect," advised Rajasthan Congress chief Sachin Pilot. (Congress May Make a Comeback in Vasundhara Raje's Rajasthan)
The BJP got a shot in the arm today in West Bengal where it has won Basirhat Dakshin (South) seat. The ruling Trinamool Congress won from Chowringhee in Kolkata. (BJP Makes Debut in Mamata Banerjee's West Bengal)
In Andhra Pradesh, BJP ally TDP has won back the Nandigama seat. In Telangana, the ruling Telangana Rashtra Samithi has retained the seat vacated by K Chandrasekhar Rao after he became the state's first Chief Minister.
By-elections were also held for five seats in Northeastern states and one each in Chhattisgarh and Andhra Pradesh. The Chhattisgarh result will be declared later. (Early Trends Indicate Gains for AIUDF in Assam)
Mr Modi's BJP had won a spectacular mandate to take power at the Centre in the national elections this year. But in by-elections held in August to 21 seats in key states like Bihar, Uttarakhand, Karnataka and Madhya Pradesh, but it performed much below expectation.
For the BJP, today's results also test its strategy for Assembly elections in two important states next month - Maharashtra and Haryana. In both it hopes to extend big wins in the national elections to the assembly polls.