How we crosswalk India's district data
India's public datasets do not share a district geography. Census 2011 covers 640 districts, NFHS-5 covers roughly 707, and the rest use their own vintages, spellings, and codes. This page documents how we reconcile them onto a single frame of 808 districts — including where the method is weakest.
Last updated August 2026. If you are citing a derived value, please read the limitations section before you do.
Most recent sources
The target geography
Everything resolves to 808 districts, matching the current administrative map rather than any single source's snapshot. The spine is the Local Government Directory (LGD) district code— the government's own identifier — not district names, which are unstable across sources and years.
Matching, in two passes
Each source is joined to the LGD spine by code where a usable code exists, and by normalized name where it does not.
- Code match. Census 2011 sub-district codes and source-supplied district codes are mapped to modern LGD district codes. This is the preferred path and handles the large majority of records.
- Name match. Names are normalized before comparison — Unicode NFKD decomposition, combining marks stripped, lowercased, punctuation removed, whitespace collapsed. Matching is scoped within a state so that identically named districts in different states cannot collide.
- Alias table. Normalization alone does not resolve genuine spelling divergence, so a hand-curated table of 143 state-scoped aliases maps known variants onto the canonical name — a dropped suffix (Leh Ladakh to Leh), an abbreviation (SPSR Nellore to Sri Potti Sriramulu Nellore), or a rename (Cuddapah to Y.s.r.).
Matching is deterministic, not probabilistic. We do not accept a fuzzy best-guess match above some similarity threshold; an unresolved name fails loudly in the pipeline and gets an explicit alias or a parent mapping instead. The trade-off is that the alias table is manual and can lag a fresh renaming.
Districts created after their source was published
India keeps creating districts. 160+ have appeared since 2011, and 14 are too recent to appear in the LGD directory at all — 8 in Rajasthan and 3 in Madhya Pradesh created in 2023, 2 in Arunachal Pradesh, and Kushavati in Goa created in December 2025. Each is mapped by hand to the parent district it was carved from, with the parent named in the pipeline.
A district that did not exist when a survey ran has no measurement of its own. There are only two honest options, and we use both depending on the indicator:
Area-proportional estimate
Census 2011 · Town Amenities Census 2011
Inherited from parent district
National Family Health Survey (NFHS-5) · National Judicial Data Grid · Climate Vulnerability Index · Agricultural Census 2015-16 · Udyam Registration (MSME) · National Crime Records Bureau — SLL Crimes · eRaktKosh Blood Bank Registry · GOBARdhan Biogas Plants · RBI Bank Credit (BSR-1)
Area-proportionalsplits a parent's count among its successor districts by land area share. Parent inheritancegives the successor the parent's rate unchanged. Counts can be split; rates and survey estimates cannot be, which is why the two methods apply to different sources.
Every value produced this way is flagged in the data and surfaced in the interface — the amber estimate marker on a district is not decorative. Flags are per-source (_est_census, _est_nfhs, and so on), so you can filter on exactly the source you care about.
Validation
The pipeline ends with a cross-source validation pass that checks district coverage, totals against published figures, and orphaned records. It fails rather than emits when a check does not pass.
Limitations
These are the places where a careful reviewer should push, so we would rather state them than have them found.
Area-proportional splitting assumes uniform density
Splitting a parent district's population by land area assumes people are spread evenly across it. They are not. Where a parent contained a city and the successor districts divide it unevenly, the urban successor is under-allocated and the rural one over-allocated. This affects Census and Town Amenities counts for split districts only — flagged districts, not the whole layer.
Inherited values are the parent's, not the child's
A district that inherits from its parent shows the parent's rate. Two districts carved from the same parent will therefore be identical on that indicator. This attenuates real variance: any analysis that treats inherited districts as independent observations will understate between-district variation. Filter on the estimate flags before running variance-sensitive work.
Per-capita rates use a 2011 denominator
Population comes from Census 2011, so every per-capita or per-lakh metric is computed against a 15-year-old denominator. Districts have grown at very different rates since, so cross-district comparison of per-capita rates carries drift that increases with the gap between the numerator's year and 2011. Census 2027 will fix this.
Survey sources carry sampling error
NFHS-5 is a sample survey, not a census. District-level estimates have confidence intervals that we do not currently display, and small-district estimates are the least precise. Treat narrow differences between districts as noise.
Some sources do not cover all districts
Court jurisdictions in NJDG do not align with administrative districts and 30 districts are absent. The Climate Vulnerability Index excludes 8 states and UTs. Town Amenities covers urban areas only — rural facilities come from a separate directory that is not included. Missing is rendered as no-data, never as zero.
Some Indian districts cannot currently be enumerated
All 808districts in the base geography are Indian territory and are mapped as such. For a small number, Indian statistical agencies do not publish district-level data — chiefly districts of Jammu & Kashmir, such as Mirpur and Muzaffarabad, that are under illegal occupation and cannot be surveyed. These are shown as Indian districts and render as no-data; we do not assign them estimated values, and we do not drop them from the map.
Per-layer detail
Each of the 12 sources carries its own caveats — thresholds, definitions, and coverage gaps specific to that dataset. Those are documented layer by layer on the caveats page, and the same note appears on the layer itself in the app.
Citing this
If your work depends on the crosswalk or on a derived value, cite it. The citation page has a ready-formatted reference including version and access date.