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

NCHE, TVET Council and Ministry of Education and Sports

Tertiary and TVET institutions and programmes in Uganda

Universities, other tertiary institutions and technical and vocational (TVET) providers on the registers of NCHE, the TVET Council and the Ministry of Education and Sports, with their accredited programmes and a dated record of how each register has changed since April 2025.

5,255
records
Nov 9, 2026
last updated
2026-07-16
source date
CC BY 4.0
free to use, share and adapt

About this data

Three regulators publish who may train students. The National Council for Higher Education (NCHE, unche.or.ug) licenses universities and other tertiary institutions and accredits their programmes. The Technical and Vocational Education and Training Act, 2025, in force since 15 March 2025, moved the licensing of TVET providers and the accreditation of TVET programmes to a new TVET Council (tvetcs.go.ug), which publishes the private providers it has licensed. The Ministry of Education and Sports TVET department (tvet.go.ug) lists the government and registered TVET institutions it runs.

The two regulators' mandates overlap and NCHE has said the split is not settled: some institutions appear on both an NCHE and a TVET register, and NCHE marks programmes that lean towards TVET (tvetLeaning). This dataset keeps one record per institution and, separately, how each register lists it, so both views can be compared.

Each register is read on the first Monday of every month. When an institution or programme appears on, disappears from or returns to a register, the change is recorded with the date of the read that first saw it. An institution dropped by NCHE and listed by a TVET register has moved between regulators; the date is when this portal noticed, not when the regulator decided. The first record is the NCHE website as scraped on 12 April 2025.

Of the 321 institutions NCHE listed in April 2025, 141 were no longer on its register in November 2026. Eight of them now appear on a TVET register; most others are university campuses, public health training schools and military colleges that neither published TVET list includes.

On each register, by import

RegisterDateInstitutionsProgrammes
National Council for Higher Education (NCHE) 2025-04-12 321 –
2026-11-09 213 3,703
TVET Council 2026-11-09 130 926
Ministry of Education and Sports, TVET Operations and Management 2026-11-09 168 –

Each register is read on the first Monday of the month; a register that has not changed adds no row.

Get the data

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

  • Institutions on a register today, with each register's listing
    /api/v1/education/institutions?include=listings
  • Bachelor's programmes in Kampala
    /api/v1/education/programmes?filter[level]=bachelors&filter[district]=2
  • Institutions NCHE stopped listing, and when
    /api/v1/education/register-changes?filter[register]=nche&filter[change]=dropped
  • Institutions and programmes per register at each import
    /api/v1/education/register-snapshots?filter[dimension]=total
# Institutions on a register today, with each register's listing
curl -g 'https://opendata.ssmusoke.dev/api/v1/education/institutions?include=listings&format=json'
// Institutions on a register today, with each register's listing
$rows = json_decode(file_get_contents(
    'https://opendata.ssmusoke.dev/api/v1/education/institutions?include=listings&format=json'
), true);
// Institutions on a register today, with each register's listing
$rows = Http::get('https://opendata.ssmusoke.dev/api/v1/education/institutions', [
    'include' => 'listings',
    'format' => 'json',
])->json();
# Institutions on a register today, with each register's listing
import requests

rows = requests.get(
    "https://opendata.ssmusoke.dev/api/v1/education/institutions",
    params={"include": "listings", "format": "json"},
).json()
// Institutions on a register today, with each register's listing
const rows = await fetch(
  "https://opendata.ssmusoke.dev/api/v1/education/institutions?include=listings&format=json"
).then((r) => r.json());

Files

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

Cite as

Uganda OpenData Playground (2026). Tertiary and TVET institutions and programmes in Uganda. https://opendata.ssmusoke.dev/public/datasets. Licensed under CC-BY-4.0.

Source

NCHE, TVET Council and Ministry of Education and Sports (2026-07-16)

Known issues

  • Institutions are matched across registers by name and curated aliases, so a renamed institution may appear twice until an alias is added.
  • NCHE institutions are located to district level; Ministry TVET institutions to parish level where the parish name matches.
  • The TVET Council publishes private providers only; government TVET institutions come from the Ministry register, which lists no programmes.
  • Change dates are the dates of the monthly reads, so a change is dated up to a month after it happened.
  • Websites and email domains come from wkambale/Ug-Universities-Api (MIT licence, https://github.com/wkambale/Ug-Universities-Api) and cover universities only.
Report an error

Changelog

  1. 2026-11-09 · NCHE register of 16 July 2026 with 3,703 accredited programmes, TVET Council and Ministry TVET registers, campuses, register history and monthly updates.
  2. 2026-11-09 · Website and email domain for 43 universities, from wkambale/Ug-Universities-Api (MIT).
  3. 2026-11-08 · API v1 and bulk downloads.
  4. 2025-04-12 · First publication from the NCHE website.