Method
How this record is built — and where it falls short.
111 incidents, 2004–2026, assembled from public reporting. Every number on this site is only as good as the paragraph that follows.
This is a reading aid for public reporting, not an official register. Each row summarises one publicly reported incident and links to the report it came from. It is not a legal finding, and it is certainly not a complete census of every examination that has been compromised in India.
What counts as an incident
A row is added when all three of these hold:
- A public examination. A recruitment test, entrance examination, eligibility test or school board examination conducted by a government body, public university or statutory commission. Private or in-house corporate tests are out of scope.
- An integrity failure, broadly defined. A question paper leaked before or during the exam; answer keys sold; OMR sheets or marks manipulated after the fact; impersonators or paid solvers sitting in place of candidates; or remote access to exam terminals. Individual copying is not an incident. Organised copying is.
- A citable public source. A named news report, court order, official notice, commission finding or RTI reply. One primary link per row.
Incidents where the allegation was later rejected stay in the record, marked Denied. A scandal that turned out to be false is part of the story of examination integrity in India, and deleting it would quietly inflate the confirmed count.
The evidentiary scale
The leak_status column is the most important field on this site, and every chart
is coloured by it. It describes the strength of the evidence, not the severity of the
alleged wrongdoing.
- Confirmed 90
- A leak or organised manipulation was established by an official body, a court, or a police investigation.
- Alleged 13
- A credible public allegation with arrests, an FIR or a probe, but no established finding of a leak.
- Suspected 3
- Authorities acted pre-emptively — postponement, withheld results — on suspicion of compromise.
- Denied 5
- The claim was investigated and officially rejected, or the “leaked” paper turned out to be fake.
Separately, confidence rates how solid the row is —
82 of 111 rows are High. A row can be a Low-confidence Confirmed incident: the leak is established, but our single source is thin on the
specifics.
Known biases — read these before quoting a number
Recent years are over-represented
A 2024 leak is covered by a dozen outlets, indexed by search engines, litigated in public and followed up months later. A 2007 state recruitment scandal may have been reported once, in print, in a regional language, and never digitised. The upward slope on the year chart is partly a real increase and partly an artefact of what is findable. Treat the shape as a floor.
English-language reporting dominates
Sources here skew heavily to English-language national dailies. States whose examination scandals are covered mainly in Hindi, Marathi, Telugu, Tamil, Bengali or Odia press are under-counted, and several states with no entries at all almost certainly have incidents we have not found.
“Candidates affected” mixes definitions
Some sources give everyone registered for the exam, some give everyone who sat it, some give only those whose sitting was voided. The dataset records whichever figure the source gives and does not attempt to normalise them. The total is an order-of-magnitude signal, and it is only summed across the 44 of 111 incidents that report any figure at all.
Convictions are systematically undercounted
Only 8 incidents here carry a conviction count. That is not a claim that the other 103 produced no convictions — it is a limitation of one-source-per-row. Sources are usually written soon after the leak; verdicts arrive years later and are rarely back-filled into the same article. If you can add a verdict to an old row, that is the single most valuable contribution you can make to this dataset.
Blank is not zero
An empty arrests cell means the source did not give a number, not that nobody
was arrested. Most rows whose action_taken includes an FIR have a blank arrest
count. The site renders these as — and never as 0. The one place a
literal zero appears is where a source explicitly reported none, as with the UGC-NET 2024
closure report.
Dates are often approximate
Where a source establishes only the year or the month, the CSV stores a placeholder day and
declares it in date_precision. Those dates render as ≈ 2012 or ≈ Jun 2012 rather than inventing a precise day.
19 of the 111 rows are dated this way.
On deaths
4
entries carry a linked_deaths figure, and
they are deliberately excluded from every summary statistic on this site.
The reason is that the figures do not measure the same thing as one another. One counts deaths across a scam that ran for years rather than deaths at a single examination. One is an accused organiser rather than a candidate. Others are press tallies that no official finding has tied to the leak, and that conflate leak-specific distress with India's much older and broader problem of examination-pressure suicide. Adding them together would produce a number that is arithmetically correct and substantively false.
So no total is offered anywhere. deaths_note is mandatory whenever linked_deaths is filled in, and each figure renders only beside its own caveat,
in that row's own words. If you want to know what a number means, the note is the answer,
not the arithmetic.
On named individuals
The dataset records institutions, counts and outcomes. It does not name accused individuals, and it should not be used to imply anyone's guilt. Arrests are not convictions; charges are dropped; several entries here were officially rejected outright. Where a person is identifiable from the linked article, that is the publisher's editorial decision, not ours.
Column dictionary
The canonical file is exam_leaks.csv at the repository root. Everything on this
site is derived from it at build time — there is no database and no second copy.
| Column | Type | Meaning |
|---|---|---|
| incident_id | string | Stable identifier, PL-0001 upward. Never reused, never renumbered. |
| date | ISO date | The examination or leak date. Where the source gives only a month or year, the day is a placeholder and date_precision says so. |
| date_precision | day | month | year | How much of the date the source actually establishes. Anything but “day” renders as ≈ rather than implying a precision nobody reported. |
| era | enum | Governing coalition at the time. Derived from the date; kept in the file for convenience. |
| exam_name | string | The examination as named in the source, including the year. |
| conducting_body | string | The authority that ran the examination, with its acronym where one exists. |
| body_type | Central | State | Whether the conducting authority is a central or a state institution. |
| area | string | State or “All India”, optionally with a district or city in parentheses. |
| leak_status | enum | Strength of the evidence. See the scale below. |
| action_taken | string | Plus-separated list: exam cancelled, retest, arrests/FIR, probe (with the agency in brackets). |
| note | string | A factual summary of what the source reports, including any caveat about the date. |
| arrests | integer? | People arrested, where the source gives a number. Blank means unquantified, not zero. |
| convictions | integer? | People convicted, where the source gives a number. Usually blank because the source predates the verdict. |
| aspirants_affected | integer? | Candidates affected. Definitions vary by source — see the caveat below. |
| linked_deaths | integer? | Deaths reported by press or officials as connected to the case. Always paired with deaths_note. |
| deaths_note | string? | Mandatory context for any death figure: whose deaths, how contested, and what the count does not mean. |
| source_name | string | Publication or institution. |
| source_url | URL | One primary link per row. |
| confidence | High | Medium | Low | How well-established the row is, judged on the source rather than the allegation. |
Get the data
- exam-leaks.json — the whole record, normalised: parsed dates with their precision, resolved state slugs, structured actions, permalinks.
- exam_leaks.csv ↗ — the source file itself, served from GitHub so you always get the current revision.
- Any filtered subset of the table exports to CSV in the browser — see the record.
Licensed CC BY 4.0. Use it, chart it, publish from it — please credit Exam Leaks and link back so corrections propagate. The linked articles remain the copyright of their publishers.
Corrections
If a row misstates a source, if you can supply a verdict for a pending case, or if an incident is missing entirely, open a correction issue or edit the CSV directly. Corrections are treated as more valuable than additions.