Skip to content
induwara.lk
Premium
induwara.lkSri Lanka · Utility

Sri Lanka Grama Niladhari (GN) Division Finder

Search every one of Sri Lanka's 14,043Grama Niladhari divisions by name in English or Sinhala, or by code. Each result gives the division's Divisional Secretariat, district, province, area and P-code — and picking a DS division prints its whole GN division list. Free, no sign-up, runs in your browser.

By Induwara AshinsanaUpdated Sep 25, 2026
Find a Grama Niladhari divisionSri Lanka · all 25 districts
Boundary set v03

14,043 GN divisions · Sinhala names on 13,978 · last verified 2026-09-25

Provinces
9
Districts
25
DS divisions
339
GN divisions
14,043

Pick one to see its full GN division list.

Two letters is enough. Sinhala matches the Sinhala name; English matches the English name.

Try one

Loading this district's divisions…

Boundaries, names and areas: Survey Department of Sri Lanka, distributed as the Sri Lanka Subnational Administrative Boundaries dataset (v03, valid 2022-08-09) by the Humanitarian Data Exchange. The number in the badge is the division's P-code segment, which is not always the district-wide GN code a form asks for — the “How it works” section below explains the difference. Full citations under Sources & references.

How it works

Sri Lanka's administrative geography has four tiers: 9 provinces → 25 districts → 339 Divisional Secretariat divisions → 14,043 Grama Niladhari divisions. The GN division is the smallest unit of the state — usually one village or one city neighbourhood — and almost every form asks for it: the NIC application, the passport application, an Aswesuma appeal, Grade 1 school admission, a police entry, a land transfer, a bank KYC file.

Where the data comes from.Every name, boundary, area and code on this page is read out of the Sri Lanka Subnational Administrative Boundaries dataset — the Survey Department of Sri Lanka's own boundary set, distributed by the Humanitarian Data Exchange as an XLSX workbook. This page uses version v03, valid on 2022-08-09, republished 2026-01-26 and parsed on 2026-09-25. Sheet lka_admin4 holds 14,043 rows; sheet lka_admin3 holds the 339 DS divisions above them. Nothing is transcribed by hand and nothing is estimated.

How the code is read. Every division carries a nine-character P-code laid out as LK + district (2) + DS division (2) + division (3). So LK1103010 is Mattakkuliya: district 11, DS division 03 (Colombo), division 010. The full P-code is the identifier this tool treats as canonical; the last three characters are shown as the division's sequence inside its DS division.

Why it is not called “the GN number”.Sri Lanka has a second numbering scheme — a district-wide GN code published by the Department of Census and Statistics, which runs from 1 to about 600 within a district and takes letter suffixes when a division splits. Madiwela's P-code is LK1121015, but its district-wide GN code is 524; Depanama's P-code is LK1121065and its GN code is 529A. The two are different numbers for the same place, and the district-wide one is what a Grama Niladhari's stamp shows. The P-code's district segment does not match the Census district code either — this dataset has 42 for Mannar where the Census scheme has 42 for Kilinochchi. Because the district-wide code is not published in machine-readable form for all 14,043 divisions, this tool shows the P-code and says so, rather than printing a number that might be wrong on a form you sign.

How the search ranks. An exact name match sorts above a prefix match, which sorts above a substring match, and every tie breaks on the P-code — so the same query always returns the same order. English queries fold case, strip accents and collapse punctuation before matching the English name; Sinhala queries match the Sinhala name as typed, because normalising Sinhala would strip the vowel signs the reader actually entered. A code query accepts the full P-code, its seven digits, or a bare three-digit segment once a DS division is chosen — a bare segment on its own is refused, with the reason, because it repeats in nearly every one of the 339 DS divisions.

Cross-checks.Two run on every view. The first recomputes the structural totals three separate ways — summed per district, summed per DS division, and against the source's own row count — and the tool prints the result: 14,043 from the district sums, 14,043 from the DS sums, 14,043 rows in the source, agreeing exactly. The second runs on the rows actually parsed for the district you are looking at: it rebuilds each P-code from its three segments and compares it with the stored value, confirms every DS division in the chunk exists in the index, and confirms the segments rise strictly inside each DS division. The badge under the results turns green only when all three hold.

Coverage, stated plainly. The source names 13,978 of 14,043 divisions in English and the same number in Sinhala (99.54%); the remaining 65 rows have a boundary and a P-code but no name in the dataset at all, and are listed as such. Tamil GN names are not in this release — 0 of 14,043 rows carry one — so the tool shows the DS division's Tamil name and says the GN-level name is unpublished rather than transliterating a guess. Compared against this site's own Census 2012 DS directory, 259 of the 339DS names match character-for-character; the rest differ only in transliteration (“Galle 4 Gravets” against “Galle Four Gravets”, “Addalaichenai” against “Addalachchenai”).

Payload.The index — provinces, districts, DS divisions, the parser and the matcher — is the only part in the page's JavaScript. The 14,043 division rows sit in 25 per-district modules that load on demand, so choosing your district downloads exactly one of them. Only the All Sri Lanka option pulls the whole directory, and it says so before it does.

What this tool deliberately leaves out

No address geocoding, no map tiles, no Grama Niladhari officer names or phone numbers, and no population per GN division. Address lookup needs a geocoder against the polygons and would be confidently wrong too often. Map tiles would break this site's page-weight budget; each result links out to Google Maps at the division's centroid instead. Officer names and phone numbers change constantly and are not published centrally — the DS Division Finder links to the offices that hold them. Census 2012 did not publish population at GN level in this release.

Worked examples

Three lookups, reconciled against the source workbook before the code was written and re-run through the shipped functions afterwards. Try each one above — the result should match these steps exactly.

Colombo 15 resident filling the Grade 1 admission form

District: Colombo → name: Mattakkuliya

  1. Pick Colombo District — the tool loads its 557 GN divisions across 13 DS divisions.
  2. Type “Mattakkuliya” in name mode → exactly one hit.
  3. Card reads: Mattakkuliya / මට්ටක්කුලිය · segment 010 · P-code LK1103010 · Colombo DS division · Colombo District · Western Province · 2.16 km².
  4. Copy for your form gives: “Mattakkuliya — P-code LK1103010 — Colombo DS division — Colombo District”.
  5. Switch the DS division select to Colombo to see the surrounding list: 005 Sammanthranapura, 010 Mattakkuliya, 015 Modara, 020 Madampitiya, 025 Mahawatta, 030 Aluthmawatha — the five-step spacing in practice.

Two divisions share a name — Jaffna's Analaitivu islands

District: Jaffna → name: Analaitivu

  1. Pick Jaffna District, type “Analaitivu” → two hits, not one.
  2. LK4103005 Analaitivu North / අනලෙයිතිව් උතුර, 3.30 km².
  3. LK4103010 Analaitivu South / අනලෙයිතිව් දකුණ, 2.71 km².
  4. North sorts first: both are prefix matches of equal rank, and the tie breaks on P-code, where 005 precedes 010.
  5. Both sit in the Islands North (Kayts) DS division, whose Tamil name the source does publish — ஊர்காவற்றுறை. Neither GN row has a Tamil name, and the page says so rather than showing a blank.

Edge case — a code that cannot be resolved, and a row with no name

P-code mode: “005”, then “5221150”

  1. In P-code mode with no DS division chosen, type “005” → refused, with the reason: a three-digit number like 005 repeats in nearly every one of the 339 DS divisions.
  2. Choose the Colombo DS division and type “005” again → LK1103005 Sammanthranapura. The same digits, now unambiguous.
  3. Switch to Ampara District and type “5221150” → LK5221150, in the Kalmunai DS division, which the source leaves completely unnamed.
  4. The card shows its P-code, area and centroid, and states that the source publishes no name for it — 29 of Kalmunai's 58 rows are like this.
  5. That row is still counted, so Kalmunai reconciles at 58 divisions rather than quietly reporting 29.

Frequently asked questions

Sources & references

Last parsed and cross-checked on 2026-09-25. On that date the P-code ↔ name ↔ DS division mapping was verified against nine independently maintained per-division records drawn from three districts, and all nine matched exactly. The district-wide GN code question is documented in the module header rather than guessed at.

Snapshot — GN divisions per district, by province
  • Western Province — Colombo (557), Gampaha (1,177), Kalutara (762)
  • Central Province — Kandy (1,187), Matale (545), Nuwara Eliya (491)
  • Southern Province — Galle (895), Matara (650), Hambantota (576)
  • Northern Province — Jaffna (436), Mannar (153), Vavuniya (102), Mullaitivu (135), Kilinochchi (95)
  • Eastern Province — Batticaloa (368), Ampara (503), Trincomalee (230)
  • North Western Province — Kurunegala (1,610), Puttalam (548)
  • North Central Province — Anuradhapura (694), Polonnaruwa (295)
  • Uva Province — Badulla (567), Monaragala (319)
  • Sabaragamuwa Province — Ratnapura (575), Kegalle (573)

Totals: 14,043 GN divisions in 339 DS divisions, 25 districts and 9 provinces.

Related tools

Comments & feedback

Spotted a bug or want an improvement? Tell us — our team reviews every comment, and good ideas get built. Comments are public and anonymous.

Know the district-wide GN code for a division, spotted a missing division, or have a Sinhala spelling correction?

Email me at [email protected] — fixes usually ship within 24 hours.