Why village names repeat, and what an address form should do about it
In Maharashtra, 17,718 villages share their name with another village in the state. That is not a data problem to fix — it is how the country is named. Here is how the API handles it.
Ask for "Malegaon" in Maharashtra and the directory answers with dozens. Ask for "Chhana" in Almora district of Uttarakhand and you get five — two of them in the same tehsil. Village names in India are descriptive (Nimboni, "the neem place"; Malegaon, "the garden village") and descriptions repeat. Nothing about that will change, so the software around it has to be built for it.
Three scopes of ambiguity
We measure a village name against three scopes, and the API returns all three counts on every village:
| scope | Maharashtra | Uttarakhand |
|---|---|---|
| name repeats somewhere in the state | 17,718 villages | 4,157 |
| repeats within the same district | 7,333 | 2,292 |
| repeats within the same tehsil | 2 | 606 |
Most repetition disappears once a form has asked for the district and the tehsil first. That is why the cascade — state, district, tehsil, then village — is not a UI nicety but the mechanism that makes names usable. The residue is the interesting part: villages that share a name inside one tehsil.
What separates namesakes
For every such pair we checked which columns differ. In all 608 cases across two states, at least one of these does: the Gram Panchayat, the block, the inhabitation status, or the census code. Not one village is distinguishable only by its LGD code. So the API's village list carries a hint — set only when another row in the same list has the same label — with exactly those facts:
53003 Chhana Dhauladevi Block · GP Aarchali · Census 053003 · LGD 53003
53075 Chhana Hawalbag Block · GP Chhana · Census 053075 · LGD 53075
A form shows "label — hint" and lets the user pick. Both are real places; both are selectable; the code you store is unambiguous.
What not to do
Do not join on names. A village and the Gram Panchayat that governs it are spelled the same way only 70% of the time in Maharashtra (Kavatha Kholapur is governed by Kawtha Shelu), and the directory's own tables spell the same district three ways. Codes are the only join key that survives contact with the data.