Common Voice Scripted Speech 25.0 - Swahili
License:
CC0-1.0
Steward:
Common VoiceTask: ASR
Release Date: 3/23/2026
Format: MP3
Size: 20.87 GB
Share
Description
A collection of read speech recordings in Swahili (Kiswahili).
Specifics
Considerations
Restrictions/Special Constraints
None provided.
Forbidden Usage
It is forbidden to attempt to determine the identity of speakers in the Common Voice datasets. It is forbidden to re-host or re-share this dataset.
Processes
Intended Use
This dataset is intended to be used for training and evaluating automatic speech recognition (ASR) models. It may also be used for applications relating to computer-aided language learning (CALL) and language or heritage revitalisation.
Metadata
Kiswahili — Swahili (sw)
This datasheet is for cv-corpus-25.0-2026-03-09 of the Mozilla Common Voice Scripted Speech dataset for Swahili [Kiswahili - sw]. The dataset contains 730187 clips representing 1064.02 hours of recorded speech (392.11 hours validated) from 1518 speakers, recorded from a text corpus of 140,486 sentences.
Language
Variants
| Code | Variant | Clips | Speakers |
|---|---|---|---|
| sw-baratz | Kiswahili cha Bara ya Tanzania | 22,486 (3.1%) | 24 (1.6%) |
| sw-sanifu | Kiswahili Sanifu (EA) | 21,833 (3.0%) | 69 (4.5%) |
| sw-barake | Kiswahili cha Bara ya Kenya | 6,487 (0.9%) | 59 (3.9%) |
| sw-kingwana | Kingwana (DRC) | 1,756 (0.2%) | 34 (2.2%) |
| sw-kimvita | Kimvita (KE) - Central dialect | 15 (0.0%) | 2 (0.1%) |
| sw-katanga | Katanga (DRC) | 5 (0.0%) | 1 (0.1%) |
Accents
| Code | Accent | Clips | Speakers |
|---|---|---|---|
| - | 8,022 (1.1%) | 50 (3.3%) |
Demographic information
The dataset includes the following self-declared age and gender distributions. A coverage summary is shown below each table.
Gender
Self-declared gender information. The table shows clip and speaker counts with percentages. Speakers who did not declare a gender are listed as Unspecified. A dash (-) indicates zero.
| Code | Gender | Clips | Speakers |
|---|---|---|---|
| male_masculine | Male, masculine | 249,195 (34.1%) | 399 (26.3%) |
| female_feminine | Female, feminine | 267,669 (36.7%) | 399 (26.3%) |
| transgender | Transgender | - | - |
| non-binary | Non-binary | - | - |
| do_not_wish_to_say | Prefer not to say | - | - |
| - | Unspecified | 213,323 (29.2%) | 941 (62.0%) |
Gender declared: 516,864 of 730,187 clips (70.8%), 577 of 1,518 speakers (38.0%)
Age
Self-declared age information. The table shows clip and speaker counts with percentages. Speakers who did not declare an age are listed as Unspecified. A dash (-) indicates zero.
| Code | Age | Clips | Speakers |
|---|---|---|---|
| teens | Teens | 3,843 (0.5%) | 25 (1.6%) |
| twenties | Twenties | 364,209 (49.9%) | 705 (46.4%) |
| thirties | Thirties | 79,508 (10.9%) | 78 (5.1%) |
| fourties | Fourties | 25,305 (3.5%) | 15 (1.0%) |
| fifties | Fifties | 30,175 (4.1%) | 7 (0.5%) |
| sixties | Sixties | 4,444 (0.6%) | 3 (0.2%) |
| seventies | Seventies | - | - |
| eighties | Eighties | - | - |
| nineties | Nineties | - | - |
| - | Unspecified | 222,703 (30.5%) | 922 (60.7%) |
Age declared: 507,484 of 730,187 clips (69.5%), 596 of 1,518 speakers (39.3%)
Data splits for modelling
Clip buckets
| Bucket | Clips |
|---|---|
| Validated | 269,087 (36.9%) |
| Invalidated | 80,838 (11.1%) |
| Other | 380,262 (52.1%) |
Training splits
| Split | Clips |
|---|---|
| Train | 46,735 (17.4%) |
| Dev | 12,269 (4.6%) |
| Test | 12,270 (4.6%) |
Training split coverage: 71,274 of 269,087 validated clips (26.5%)
The dataset contains 269087 validated, 80838 invalidated, and 380262 unresolved clips. The average clip duration is 5.246 seconds.
Text corpus
Validated sentences: 134,729
| Category | Count |
|---|---|
| Unvalidated sentences | 5,757 |
| Pending sentences | 5,727 |
| Rejected sentences | 30 |
| Reported sentences | 1,899 |
The corpus contains 140,486 sentences: 134,729 validated and 5,757 unvalidated (5,727 pending review, 30 rejected), with 1,899 reported for review.
Sample
There follows a randomly selected sample of five sentences from the corpus.
Kama uko na mashamba ni salama
mtu huyo alikaaa ndani ya maji kwa muda mrefu
Kabila la maasai ni la watu wanaopatikana Afrika ya mashariki
mmoja haswa katika miji midogo Wanasaidia katika
Kuna mnazi moya wapende vachu wachachu akianguka moya hamadi mwana wavachu
Sources
| Source | Sentences |
|---|---|
| batch-2-07-02-2022 | 39,636 (29.4%) |
| Kiswahili MCV writing competition | 31,752 (23.6%) |
| batch-1-19-11-2021-contributors-set | 28,589 (21.2%) |
| wiki | 8,833 (6.6%) |
| batch-4-08-02-2023-contributors-set | 8,822 (6.5%) |
| batch-2-10-03-2023-agriculture-set | 4,570 (3.4%) |
| batch-3-17-08-2022-contributors-set | 4,350 (3.2%) |
| batch-2-11-07-2022-contributors-set | 2,305 (1.7%) |
| batch-1-16-02-2023-badili-livestock-diseases-set | 1,627 (1.2%) |
| Other | 4,245 (3.2%) |
Fields
Clips
Each row of a tsv file represents a single audio clip, and contains the following information:
client_id- hashed UUID of a given userpath- relative path of the audio filetext- supposed transcription of the audioup_votes- number of people who said audio matches the textdown_votes- number of people who said audio does not match textage- age of the speaker1gender- gender of the speaker1accents- accents of the speaker1variant- variant of the language1segment- if sentence belongs to a custom dataset segment, it will be listed hereprompt_upvotes- number of upvotes the sentence prompt receivedprompt_reports- number of reports the sentence prompt receivedis_edited- whether the clip's transcription has been edited
validated_sentences.tsv
The validated_sentences.tsv file contains one row per validated sentence in the text corpus:
sentence_id- unique identifier for the sentencesentence- the sentence textvariant- the variant of the languagesentence_domain- the domain(s) the sentence belongs tosource- the source the sentence was collected fromis_used- whether the sentence is still in circulation for recordingclips_count- number of clips recorded for this sentence
unvalidated_sentences.tsv
The unvalidated_sentences.tsv file contains one row per unvalidated sentence in the text corpus:
sentence_id- unique identifier for the sentencesentence- the sentence textvariant- the variant of the languagesentence_domain- the domain(s) the sentence belongs tosource- the source the sentence was collected fromup_votes- number of upvotes the sentence receiveddown_votes- number of downvotes the sentence receivedstatus- current status of the sentence (pendingorrejected)
Get involved
Community links
Discussions
Contribute
Licence
This dataset is released under the Creative Commons Zero (CC-0) licence. By downloading this data you agree to not determine the identity of speakers in the dataset.
Footnotes
For a full list of age, gender, and accent options, see the demographics spec. These will only be reported if the speaker opted in to provide that information. ↩ ↩2 ↩3 ↩4