You can access this dataset on HuggingFace.

Community-contributed Central Kanuri (kau) speech from Lake Chad Basin contributors, collected through the TWB Voice platform: 3,576 recordings across two workflows — 2,134 read-speech clips and 1,442 freeform spoken answers — with recording-level review status for every clip.

Languages

  • knc — Central Kanuri

Dataset Structure

Recordings are embedded in the Parquet shards under data/<flow>/, one row per clip, in the audio column (HuggingFace Audiofeature). Select a workflow with config= and a review status with split=:

from datasets import load_dataset

ds = load_dataset("ciatech-frica/central-kanuri-speech-dataset", "Freeform", split="approved")

 

The two workflows were produced by different collection and quality-assurance pipelines and are kept apart deliberately. Read is read speech: the text read aloud is the prompt, so text is the prompt. Freeform is spontaneous speech answering a spoken question, so text is the answer and prompt is the question that was asked.

split is the platform’s own recording-approval status — approved, rejected or pending — not an ML train/dev/test partition. Nothing is withheld: every reviewed clip is published, and the status column plus the split name both tell you what survived review. rejected is the majority in the Read flow (1,020 of 2,134); for ASR training, filter on split="approved".

fielddescription
audioThe recording (HuggingFace Audio feature). audio.path is the original file name, e.g. 6a2054375cfb1.wav.
flowRead or Freeform.
textThe transcript. For Read, the prompt that was read; for Freeform, the answer. Null where no transcription exists.
transcriptionFreeform only: the raw transcription as first written. Null for Read, and for the 595 untranscribed Freeform clips.
edited_transcriptionFreeform only: the transcription after correction, when a correction was made.
is_canonical_transcriptionFreeform only, and true for the transcription to use. 6a3a88c4a2e82.wav is the one clip with two records: both rows are published, and this marks the later one to prefer.
has_transcriptiontrue where a transcript exists (all Read rows, plus 848 of 1,443 Freeform rows), false otherwise.
promptThe text of the prompt. For Read, the sentence that was read; for Freeform, the question that was asked.
prompt_idPlatform prompt identifier, e.g. SPONT-HC045 or READ-HC144.
prompt_id_sourceHow prompt_id was obtained: transcription, recovered by prompt text, or unmatched. See the caveat on missing ids.
durationClip duration in seconds.
speaker_idPseudonymous 8-character contributor hash. Stable across both flows, so clips from one voice can be grouped.
genderMale or Female, as recorded at onboarding.
year_of_birthAs recorded at onboarding.
country_of_originAs recorded at onboarding.
education_levelAs recorded at onboarding.
language_variantSpeaker demographic: the variety the contributor reported for themselves at onboarding, as free text. Constant per speaker, and not a label on the clip. Central for 17 speakers, Other 3, Kanembu 1, I am learning 1, Suwurti 1.
recording_approval_statusThe platform review decision (approved / rejected / pending). Same information as split.
recording_decision_typeHow the review decision was reached (manual, score, …).
transcription_approval_statusFreeform only: review state of the transcription itself.
completed_atTimestamp the contributor finished the recording, ISO 8601 UTC.
languageLanguage tag from the platform, knc (ISO 639-3 for Kanuri). It is knc on all 3,577 rows; the Central variety this corpus contains is kau.
sourcePlatform source tag, ciatech.

readback_candidates.tsv in the repository root indexes the clips discussed under Caveats below. Join it to this dataset on filename.

Statistics

Read

metricvalue
Rows2134
Distinct audio files2134
Distinct speakers (approved)19
Total hours (approved)4.28
Approved / pending / rejected1113 / 1 / 1020
Median / p95 duration (s)13.92 / 24.72

Clips and hours by split

splitclipshours
approved11134.28
rejected10204.57
pending10.01

Hours by approval status

statushours
approved4.28
rejected4.57
pending0.01

Demographic distributions below are computed on approved recordings only.

Hours by gender (approved)

genderhours
Female3.12
Male1.16

Speakers by gender (approved)

genderspeakers
Female13
Male6

Freeform

metricvalue
Rows1443
Distinct audio files1442
Distinct speakers (approved)22
Total hours (approved)5.78
Approved / pending / rejected1093 / 2 / 348
Median / p95 duration (s)15.96 / 34.92

Clips and hours by split

splitclipshours
approved10935.78
rejected3481.58
pending20.01

Hours by approval status

statushours
approved5.78
rejected1.58
pending0.01

Demographic distributions below are computed on approved recordings only.

Hours by gender (approved)

genderhours
Female4.60
Male1.18
Unspecified0.00

Speakers by gender (approved)

genderspeakers
Female14
Male7
Unspecified1

Dataset Creation

Data Collection

Collection ran on the TWB Voice platform operated by CLEAR Global, with CIATECH Africa leading implementation and community engagement across the Lake Chad Basin. Two workflows were run:

Read speech. Participants read predefined Central Kanuri prompts aloud.

Freeform speech. Participants heard a spoken Central Kanuri question and answered it spontaneously. Freeform clips then passed through recording review, transcription, transcription review, and correction where needed.

Contributors were onboarded and given recording guidance; recordings were reviewed by validators, and freeform recordings were transcribed and checked by transcribers. 24 contributors appear in the released metadata, across male and female speakers, recording predominantly in Nigeria.

Quality Control

Every clip carries the platform’s recording-approval status, and this release publishes all of them — nothing is withheld, so split and recording_approval_status are the filter to use.

flowapprovedrejectedpendingtotal
Read1,1131,02012,134
Freeform1,09334821,443

595 Freeform recordings have no transcription record. 595 audio files were not transcribed and left as is.

2,982 rows carry a transcript: all 2,134 Read rows, where the transcript is the prompt, and 848 transcribed Freeform rows.

Ethical Considerations

  • All contributors were community members who consented to their recordings being collected and published openly.
  • Voice recordings are inherently biometric. Do not attempt to re-identify contributors, do not use this data for speaker identification or biometric profiling, and do not combine it with other data to identify individuals.
  • Respect contributor privacy and comply with the licence conditions.

Caveats

  • Some Freeform clips are read speech, not spontaneous speech. Contributors were asked a spoken question and a number read it back instead of answering, which would teach a spontaneous-ASR model to repeat its input. 192 of the 1,443 Freeform rows are candidates, listed in readback_candidates.tsv. No split or column marks them, so filter on that file. The list is a lower bound: a human reviewer who listened to the set reports most of it is read-back, so expect more read-backs to remain outside these rows.
  • language_variant is a speaker demographic, like gender, not a label on the clip. It is the contributor’s own free-text answer at onboarding, and the recordings are Central Kanuri throughout — everyone was recorded on the same prompt pool. 6 of 24 speakers report a variety other than Central, so expect accented or non-native Central Kanuri from them. Kanembu and Suwurtiare Kanuri dialects, not separate languages.
  • split is a review status, not a data partition. There is no train/dev/test split here. Make your own partition, speaker-disjointly: speaker_id groups clips by voice and there are only 24 speakers.
  • 65 rows have no prompt_id. 555 were recovered by matching prompt text; 65 use prompts carrying no id anywhere in the corpus. prompt_id_source flags which rows are affected. This is a metadata gap, not an audio problem.
  • 3,577 rows, 3,576 files: 6a3a88c4a2e82.wav is transcribed twice. Both rows are published. is_canonical_transcription marks the later one to prefer (true vs false) and is null on Read and untranscribed rows. Deduplicate on (flow, filename) if you need one row per clip.
  • Audio was captured on contributor devices, not in a studio. Expect channel noise, reverberation, varying levels and sample rates.
  • Scale and coverage. 3,576 clips from 24 contributors, one region and one linguistic setting. This is not representative of Kanuri as a whole, the two flows are not interchangeable for modelling, and the corpus is unlikely to be sufficient alone for training an end-to-end ASR system.

Related datasets

For ~50 hours of Kanuri read speech from the same platform, see TWB Voice 1.0.

License

CC BY-NC 4.0 (Creative Commons Attribution-NonCommercial 4.0 International) (SPDX: cc-by-nc-4.0)

For commercial licensing, contact contact@ciatech.ng.

Citation

@dataset{grema2026central_kanuri_speech,
  title     = {Central Kanuri Speech Dataset},
  author    = {CIATECH Africa and CLEAR Global},
  year      = {2026},
  publisher = {Hugging Face},
  license   = {CC BY-NC 4.0}
}

Contact

CIATECH Africa, project lead Umar Grema. CLEAR Global (TWB Voice platform) — tech@clearglobal.org.

Acknowledgments

CIATECH Africa and CLEAR Global acknowledge the Kanuri-speaking community members who contributed the recordings, and the language experts, validators, transcribers, coordinators and other contributors who supported the collection and its quality assurance.

We also acknowledge the TWB Voice team, who provided the data-collection platform and workflow infrastructure on which this corpus was produced.