This is the dataset card for the Utavu Foundation and CLEAR Global TWB Voice pilot.
You can access this dataset on HuggingFace.
Dataset summary
This dataset contains spontaneous Dholuo speech about agriculture. Speakers answered open questions in Dholuo and spoke freely in response. Each recording has a Dholuo transcription. The data was collected through the TWB Voice platform and is intended for speech technology research and language technology development for Dholuo.
The dataset has two subsets. The freeform prompts subset uses written questions only. The image prompts subset pairs each question with a photograph that the speaker describes or discusses.
| Freeform prompts | Image prompts | Total | |
|---|---|---|---|
| Recordings | 1,359 | 1,029 | 2,388 |
| Hours of audio | 10.64 | 8.93 | 19.56 |
| Contributors | 23 | 21 | 23 |
| Unique prompts | 1,019 | 658 | 1,677 |
| Mean clip length (seconds) | 28.2 | 31.2 | 29.5 |
| Clip length range (seconds) | 10.1 to 59.8 | 10.0 to 60.0 | 10.0 to 60.0 |
| Recording period | 16 May to 15 June 2026 | 16 May to 16 June 2026 | 16 May to 16 June 2026 |
The 21 contributors in the image prompts subset also appear in the freeform prompts subset. The same contributor ID refers to the same person in both subsets.
- Repository: MCAA1-MSU/twb_luo_ke
- Language: Dholuo (
luo), a Western Nilotic language spoken mainly in western Kenya and northern Tanzania - Domain: Agriculture
- Split:
trainonly - Audio format: WAV
- Total repository size: 5.85 GB
Repository structure
.
├── README.md
├── utavu-freeform_prompts_data/
│ ├── Audio/
│ │ └── dataset-*.parquet
│ └── Files/
│ ├── transcripts.csv
│ └── meta.csv
└── utavu-image_prompts_data/
├── Audio/
│ └── dataset-*.parquet
└── Files/
├── transcripts.csv
└── meta.csv
Each subset folder has an Audio folder and a Files folder. Audio holds the recordings in parquet files. Files holds two CSV files. transcripts.csv has one row per recording. meta.csv has one row per contributor. The contributor_id column links the two CSV files. The file_name column links each transcript row to its audio.
Loading the data
from datasets import load_dataset
# Audio subsets
freeform = load_dataset("MCAA1-MSU/twb_luo_ke", "freeform_prompts", split="train")
image = load_dataset("MCAA1-MSU/twb_luo_ke", "image_prompts", split="train")
# Transcript and contributor tables
transcripts = load_dataset("MCAA1-MSU/twb_luo_ke", "freeform_prompts_transcripts", split="train")
contributors = load_dataset("MCAA1-MSU/twb_luo_ke", "freeform_prompts_contributors", split="train")
To add contributor details to each recording, join the transcript table to the contributor table on contributor_id.
Data fields
Transcript files (transcripts.csv)
Both transcript files share the same core fields. The freeform prompts file has a sub_domain field. The image prompts file has an image_filename field.
| Field | Description |
|---|---|
file_name | Audio file name. Unique within each subset. |
contributor_id | Pseudonymous contributor identifier. Links to the contributor file. |
duration_sec | Clip length in seconds, rounded to two decimal places. |
transcript | Final Dholuo transcription. Use this field for training and evaluation. |
original_transcription | First transcription before any editor correction. |
was_edited | yes if an editor corrected the first transcription, otherwise no. |
prompt | Dholuo question shown to the speaker. |
prompt_id | Prompt identifier. AGR-TEXT-* for freeform prompts and TWB_IMG_* for image prompts. |
image_filename | Image prompts only. Hashed file name of the photograph shown with the prompt. |
domain | Topic domain. Always Agriculture. |
sub_domain | Freeform prompts only. One of 30 agricultural sub-topics. |
language | Language code. Always luo. |
source | Collection source. Always utavu. |
recorded_date | Date the recording task was completed, in YYYY-MM-DD format. |
recording_approval_status | Validation outcome for the audio. |
transcription_approval_status | Validation outcome for the transcription. |
Contributor files (meta.csv)
| Field | Description |
|---|---|
contributor_id | Pseudonymous contributor identifier. |
gender | Self-reported gender: Female or Male. |
age_category | Age band: 18-29, 30-39 or 50-59. |
country_of_origin | Country of origin. Always Kenya. |
education_level | Education level from the platform registration form. |
highest_level_of_education | Highest level of education from the project survey. |
employment_status | Employment status from the project survey. |
language_variant | Dholuo variant from the platform registration form: Milambo, Nyandwat, I am learning or Other. |
primary_dholuo_variant | Primary Dholuo dialect from the project survey: Nyanduat (North, Siaya and Kisumu) or Milambo (South, Homa Bay and Migori). |
num_recordings | Number of recordings from this contributor in the subset. |
total_duration_sec | Total audio from this contributor in the subset, in seconds. |
Two pairs of fields were collected by different forms and do not always agree. The first pair is education_level and highest_level_of_education. The second pair is language_variant and primary_dholuo_variant. Both are kept as reported. The project survey fields (highest_level_of_education and primary_dholuo_variant) are the more detailed of each pair.
Contributor demographics
The figures below cover both subsets together. Each contributor is counted once.
| Group | Contributors | Recordings | Hours |
|---|---|---|---|
| Gender | |||
| Female | 11 | 1,083 | 8.66 |
| Male | 12 | 1,305 | 10.90 |
| Age | |||
| 18-29 | 18 | 1,985 | 15.39 |
| 30-39 | 4 | 327 | 3.17 |
| 50-59 | 1 | 76 | 1.00 |
| Primary dialect | |||
| Nyanduat (North, Siaya and Kisumu) | 14 | 1,506 | 11.00 |
| Milambo (South, Homa Bay and Migori) | 9 | 882 | 8.56 |
By highest level of education, 10 contributors hold a bachelor’s degree, 9 a college diploma or certificate, 3 a secondary school qualification and 1 a postgraduate degree. By employment, 7 are self-employed, 6 employed, 5 students, 4 unemployed and 1 both a student and self-employed.
Contributions per speaker range from 10 to 191 recordings across both subsets. The median is 103.
Prompts and topics
All prompts are in Dholuo and concern agriculture.
The freeform prompts subset has 1,019 prompts across 30 sub-topics. The largest sub-topics are livestock production and productivity (89 recordings), access to government programmes and subsidies (83), poultry farming (75), contemporary issues in agriculture (68) and the effect of climate change on agriculture (65). Other sub-topics include fish farming, post-harvest technology, land ownership and tenure, irrigation, precision agriculture tools, value addition, market distribution and pest and disease management.
The image prompts subset has 658 prompts built around 514 photographs. Each prompt asks the speaker to look at a photograph of a farming scene and answer a question about it. The photographs are not included in this repository.
Data collection
The pilot was a collaboration between CLEAR Global and Utavu Foundation, run on the TWB Voice platform. Contributors registered on the platform, gave consent at project level and completed a demographic survey. They then recorded spoken answers to the prompts on their own devices.
Recording took place between 16 May and 16 June 2026. The collection design covered recording, recording validation, transcription and transcription validation.
Transcription and quality control
Every recording in both subsets passed recording validation. Transcriptions were produced on the platform and then reviewed by editors. Editors corrected transcriptions where needed and approved them. There was no separate third-person quality check.
The transcript field holds the final text. Where an editor made corrections, transcript is the corrected version. Where no correction was needed, it is the original transcription. Editors corrected 586 of the 1,359 freeform transcriptions (43%) and 161 of the 1,029 image prompt transcriptions (16%).
Transcriptions follow these conventions:
[cs]marks code-switching into English or Kiswahili, for example[cs]net[cs]. It appears in 225 freeform and 171 image prompt transcriptions.[pause]marks a noticeable pause.[?]marks speech that the transcriber could not make out.
Punctuation and apostrophe use in words such as ng’ado varies between transcribers.
Data processing
The following steps were applied to the platform exports before publication.
- Records with a rejected transcription were removed from the freeform prompts subset (7 records).
- Three audio files in the freeform prompts export appeared twice with different transcriptions. One version of each was kept so that every
file_nameis unique. - One image prompt recording has a rejected transcription (
transcription_approval_statusisrejected). It is kept with its status so that users can filter it out. - Local file paths, private image links and exact birth years were removed. Age is given as a band only.
- Recording timestamps were reduced to the date.
- Text was converted to UTF-8, curly apostrophes were replaced with straight apostrophes and extra whitespace was removed.
- Category labels were standardised, for example
18 years - 29 yearsbecame18-29.
Intended uses
The dataset is suitable for:
- training and fine-tuning automatic speech recognition models for Dholuo;
- evaluating speech recognition on spontaneous, conversational Dholuo;
- studying code-switching between Dholuo, English and Kiswahili;
- research on dialect variation between Nyanduat and Milambo speakers; and
- building agricultural voice services for Dholuo-speaking farmers.
Limitations
- Size. The dataset holds under 20 hours of speech from 23 speakers. This is enough for fine-tuning and evaluation but not for training a model from scratch.
- Domain. All speech concerns agriculture. Models trained on it may perform less well on other topics.
- Speaker balance. Most speakers are aged 18 to 29. Only one speaker is over 40. Male speakers contribute more audio than female speakers.
- Speaker overlap. The two subsets share speakers. Any train and test split should separate speakers rather than recordings.
- Single split. Only a
trainsplit is published. Users should create their own speaker-independent evaluation split. - Transcription consistency. Spelling, punctuation and tag use vary between transcribers. Some tags are malformed or use different capitalisation, for example
[CS]. Users may want to normalise transcripts before training. - Demographic fields. Some contributor fields disagree across the two forms, as described under Data fields.
Ethical considerations
Contributors gave consent through the TWB Voice platform at project level. Contributor identifiers are pseudonymous hashes. Names, contact details, exact birth years and device information are not published.
The dataset contains voice recordings, which are biometric data. Users must not attempt to identify or re-identify contributors.
For details of the consent text, data retention period, withdrawal process and community benefit-sharing terms, contact the dataset steward listed below.
License
This dataset is released under the Nwulite Obodo Open Data License (NOODL), version NOODL-1.0. NOODL is not a Creative Commons or SPDX licence. It allows open use in developing countries and asks users outside developing countries to share benefits with the communities whose data they use.
Full licence text: (https://licensingafricandatasets.com/nwulite-obodo-license)
Citation
@misc{utavu_dholuo_speech_2026,
title = {Utavu Foundation Dholuo Speech Dataset},
author = {Utavu Foundation and CLEAR Global},
year = {2026},
publisher = {Hugging Face},
url = {https://huggingface.co/datasets/MCAA1-MSU/twb_luo_ke}
}Acknowledgements
The authors thank the Dholuo speakers who recorded, transcribed and reviewed the data.
Contact
- Utavu Foundation pilot contact: Nelson Odhiambo, nodhianbo@gmail.com
- Dataset steward and technical contact: Maseno Centre for Applied Artificial Intelligence (MCAAI), Mcaai@maseno.ac.ke