Skip to content
Documentation

Methodology & gaps

Every figure on this site comes from one of four sources, loaded by scripts you can read and re-run. This page says which, how they were reconciled, what was checked, and — just as important — what is not here.

Sources

1962–2019 — TCPD Lok Dhaba, general elections

The Trivedi Centre for Political Data at Ashoka University publishes a cleaned, candidate-level dataset of Indian elections, itself derived from Election Commission statistical reports. It is the base layer here: one row per candidacy, with votes, vote share, position, party, and the constituency it was fought in.

Limit: the bulk file begins at 1962. The first two general elections, 1951–52 and 1957, are not in it and so are not here.

1961–2023 — TCPD Lok Dhaba, state assemblies

The same centre publishes a companion file for the Vidhan Sabhas, in the same shape and with the same columns, which is why one loader reads both. It supplies the base layer of assembly results here, across 34 states and union territories — including those that no longer exist, such as Madras and Mysore, under the names they voted as.

Limit: the release loaded here is dated June 2023, so it stops there — every assembly election since is a different source, described next.

2023–2026 — Election Commission, Detailed Results reports

For every assembly election since the TCPD release — the November 2023 round; the four states that polled alongside the 2024 general election; Haryana, Jammu & Kashmir, Jharkhand and Maharashtra later that year; Delhi and Bihar in 2025; and Assam, Kerala, Puducherry, Tamil Nadu and West Bengal in 2026 — results are read directly from the Commission’s own “Detailed Results” statistical report for that election, one spreadsheet per poll, published on the ECI site.

Limit: these reports give candidate name, party, gender, age, category and votes, but not the affidavit fields — assets, liabilities, criminal cases, education — that the TCPD file carries for older elections. Every state on this list has full candidate and vote figures; none of them has those affidavit columns.

2024 — Election Commission, via the Internet Archive

The Commission’s 2024 general election results site was withdrawn after the election. Those figures were recovered from Wayback Machine captures of that site — all 543 constituency pages, parsed from the archived HTML, none skipped.

Limit: the constituency result pages were archived; the elector and turnout tables were not. The 2024 Lok Sabha election therefore has complete candidate and vote figures, no turnout percentage, and no candidate gender.

What the loader decides

Deferred polls are folded into their election

Where polling in some seats was held months after the rest — 1985 for seats deferred from the 1984 election, 1992 for seats deferred from 1991 — those results are counted in the election they belong to, not listed as separate years. This is why 1984 shows Congress on 414 and 1991 shows it on 244.

By-elections are excluded

2,818 by-election rows in the source are not loaded. Every figure on this site is a general election figure, so a party’s seat count is its count on counting day — not its strength in the House years later.

NOTA is not a candidate

“None of the above” has appeared on ballots since 2013 and is recorded in the source as a candidate row. It is dropped from candidate counts and party tables, because counting it as a contestant would corrupt every candidates-per-seat figure from 2014 onward.

Constituencies are keyed by boundary era

India has redrawn its constituencies four times — the delimitation orders of 1961, 1966, 1973 and 2008. A seat is identified by state, name and the order in force, so a 1971 result is never silently attributed to today’s territory of the same name. Constituency pages show the whole lineage of a name and label each row whose boundaries differ from the present ones.

An assembly election is keyed by state and ordinal

A general election is known by its year alone; an assembly election is not. Each one is identified by its state and that assembly’s own ordinal number, so Bihar’s fourteenth assembly is distinct from its thirteenth even though both were elected in 2005. Where a state voted twice in one calendar year — Bihar in February and November 2005 is the only such case in this data — both elections carry the month, in the URL and everywhere they are listed, rather than only the second.

Vote share is always share of the votes counted

In an assembly election that means the share of valid votes cast in that state, which is a different number from the same party’s national share in the same year, and the two are never mixed. A party page keeps its Lok Sabha and assembly records in separate tables for the same reason.

Party abbreviations are reconciled, imperfectly

The two sources name parties differently: one gives abbreviations, the other full names. Full names are mapped to abbreviations — explicitly for the parties that matter, and by derivation for the long tail. Where a derived abbreviation would collide with one already in use, it is extended rather than merged, but only abbreviations belonging to parties that have won a seat are protected this way. The tradeoff is deliberate: two micro-parties sharing a key is a cheaper error than severing a party from its own history.

What was checked

The largest party in each general election, against the published historical record

ElectionLargest partySeats in this dataset
1962INC361
1967INC283
1971INC352
1977BLD295
1980INC(I)353
1984INC414
1989INC197
1991INC244
1996BJP161
1998BJP182
1999BJP182
2004INC145
2009INC206
2014BJP282
2019BJP303
2024BJP240

Every one of these matches the historical record. Two further checks passed: seat counts sum to exactly the number of contests with a recorded winner — no seat is missing a member — and the 2024 party breakdown sums to exactly 543. The 384 assembly elections were not checked one by one against the record. They pass the same structural tests — every seat has a winner, every party table sums to its election — and they are loaded from their source unaltered, whether that source is the TCPD file or a Commission Detailed Results report.

Known gaps

  • 1951–52 and 1957 are absent. The first two general elections are not in the bulk source. Adding them means a separate digitisation of the Commission’s statistical reports for those years.
  • 2024 has no turnout. Elector counts for 2024 were never archived. Turnout charts skip the year rather than guess it.
  • 2024 Lok Sabha has no candidate gender. The archived constituency pages list name, party and votes, and nothing else. Rather than report zero women, the 2024 figure is blank everywhere it would appear.
  • Assembly affidavit fields stop in 2023. Assets, liabilities, criminal cases and education come from the TCPD file, which ends in June 2023 — every assembly election since has full results but none of those four fields, because the Commission’s Detailed Results reports don’t carry them.
  • No Rajya Sabha, no local bodies. The upper house is elected by the assemblies rather than by voters and is not covered, and neither are municipal or panchayat elections.
  • Nothing here is a government. These are results, not outcomes. The largest party in a house is not always the party that formed the government in it; coalitions are not recorded; and defections after the count are invisible to a dataset that ends on counting day.
  • Candidate identity is name-based. There is no person ID in the source. Candidacies are grouped by a normalised name, so namesakes merge and inconsistent transliterations split. Candidate pages say so.
  • Age and education are patchy. Both appear only in the years the Commission published them, and are shown where present rather than imputed.

Corrections

If a figure here disagrees with the Election Commission, the Commission is right and this site has a bug worth reporting. The load and derive scripts are in the repository; a correction that changes a number should change a script, not a database row, so that re-running the pipeline reproduces it.

See also the API documentation and about Janadesh.