An independent open data project for Uganda · All data free under Creative Commons Attribution 4.0 International
Skip to content

Uganda Bureau of Statistics (UBOS)

Administrative units of Uganda

The administrative hierarchy of Uganda from regions down to villages: 4 regions, 15 sub-regions, districts (including cities and municipal councils), counties, sub-counties, parishes and villages, with the codes used by government and a crosswalk to ISO 3166-2, OCHA COD-AB P-codes, Wikidata, OpenStreetMap and GeoNames.

85,213
records
Nov 9, 2026
last updated
2025-04-10
source date
CC BY 4.0
free to use, share and adapt

Get the data

Every list below can be read one page at a time (API), or taken whole as CSV or JSON.

  • Every district and city, with ISO 3166-2 codes, P-codes and Wikidata ids
    /api/v1/districts
  • Every village in Lamwo district
    /api/v1/villages?filter[district]=91
  • The parishes of one sub-county
    /api/v1/parishes?filter[subCounty]=1
  • Places called Kira, at any level
    /api/v1/search?q=kira
# Every district and city, with ISO 3166-2 codes, P-codes and Wikidata ids
curl -g 'https://opendata.ssmusoke.dev/api/v1/districts?format=json'
// Every district and city, with ISO 3166-2 codes, P-codes and Wikidata ids
$rows = json_decode(file_get_contents(
    'https://opendata.ssmusoke.dev/api/v1/districts?format=json'
), true);
// Every district and city, with ISO 3166-2 codes, P-codes and Wikidata ids
$rows = Http::get('https://opendata.ssmusoke.dev/api/v1/districts', [
    'format' => 'json',
])->json();
# Every district and city, with ISO 3166-2 codes, P-codes and Wikidata ids
import requests

rows = requests.get(
    "https://opendata.ssmusoke.dev/api/v1/districts",
    params={"format": "json"},
).json()
// Every district and city, with ISO 3166-2 codes, P-codes and Wikidata ids
const rows = await fetch(
  "https://opendata.ssmusoke.dev/api/v1/districts?format=json"
).then((r) => r.json());

Files

Files have not been generated yet; use the API meanwhile.

Cite as

Uganda OpenData Playground (2026). Administrative units of Uganda. https://opendata.ssmusoke.dev/public/datasets. Licensed under CC-BY-4.0.

Source

Uganda Bureau of Statistics (UBOS) (2025-04-10)

Known issues

  • Codes (ubosCode) are only unique within their parent unit, except for districts. Use the numeric id as the identifier.
  • Cities and municipal councils appear as separate units at district level.
  • UBOS district codes are not ISO 3166-2 codes; the ISO code is published separately in the identifiers attribute.
  • COD-AB P-codes are matched by name against the 2020 COD-AB boundaries. Cities, divisions and units created or reorganised since 2020 may have no P-code.
  • 70 villages have no household code prefix (hh_code_prefix). Run "php artisan opendata:validate" for the current list of data quality warnings.
  • The change history starts on 2026-11-08; earlier boundary changes (such as the 2020 cities) are not recorded, and validity dates are empty unless known.
Report an error

Changelog

  1. 2026-11-08 · Validity dates and a change history for every unit; retired units drop out of lists but stay available. Crosswalk to COD-AB P-codes, Wikidata, OpenStreetMap and GeoNames.
  2. 2026-11-08 · API v1: stable ids, full ancestor path, ISO 3166-2 crosswalk, bulk downloads.
  3. 2025-04-10 · First publication.