← All articlesResearch · 14 July 2026 · 4 min read

What good Swahili speech sounds like

Stress, clean vowels, noun-class agreement and the way Tanzanians read numbers, prices and times. The details that decide whether Swahili text-to-speech sounds natural.

Waridi Research

Most people can't explain why a synthetic voice sounds wrong. They just know it does within a second or two. For Swahili, those wrong notes usually come from a small set of details. This post walks through the ones we focus on when building Waridi Sauti.

Stress on the second-to-last syllable

Swahili has a very regular stress pattern: in most words, the stress falls on the penultimate syllable. Kitabu is ki-TA-bu. Tanzania is Tan-za-NI-a. Asante is a-SAN-te.

This sounds easy to get right, but it shifts as words grow. Add a suffix and the stress moves with it: kitabu becomes vitabu vyake, and anasoma becomes anasomea. A system that has memorised stress word by word, instead of learning the rule, puts it in the wrong place on longer forms. Listeners hear it immediately.

At the phrase level, Swahili speakers often lengthen the stressed syllable at the end of a phrase and let the pitch fall. Getting that phrase-final shape right is a large part of what makes a sentence sound finished rather than cut off.

Pure, steady vowels

Swahili has five vowels, a, e, i, o, u, and they stay pure. There is no drifting from one vowel into another, as happens in many English vowels, and no weak "uh" sound for unstressed syllables.

Models trained mostly on English tend to reduce unstressed vowels. In Swahili that is a clear error: every vowel in ninakupenda is pronounced fully. We treat vowel quality as something to measure directly, with native-speaker review, rather than hoping it falls out of training.

Text processing depends on grammar

Before a voice speaks, text has to be turned into words. In Swahili this step depends on grammar more than in English.

Take the digit 3. In English it is always "three". In Swahili the word changes with the noun class of whatever is being counted:

  • vitabu 3 is read as vitabu vitatu (three books)
  • watu 3 is read as watu watatu (three people)
  • nyumba 3 is read as nyumba tatu (three houses)

So a text normaliser has to know the noun class of the word next to the number. The same applies to ordinals, possessives and adjectives. We build this into the normalisation step for Sauti, using a lexicon of noun classes and rules for agreement.

Numbers, money and time the Tanzanian way

Numbers are where many systems fail first, because they are everywhere in customer service: balances, phone numbers, appointment times.

Tanzanians commonly use laki for one hundred thousand, and prices are usually read with shilingi first. Time is the trickiest. Swahili counts hours from sunrise, so 9am is saa tatu asubuhi, the third hour of the day. Reading "09:00" as saa tisa would tell a caller to arrive six hours late.

Here are some of the rules our normaliser follows:

TSh 25,000        ->  shilingi elfu ishirini na tano
TSh 150,000       ->  shilingi laki moja na elfu hamsini
09:00             ->  saa tatu asubuhi
14:30             ->  saa nane na nusu mchana
20:15             ->  saa mbili na robo usiku
12/03/2026        ->  tarehe kumi na mbili Machi, mwaka elfu mbili ishirini na sita
0712 345 678      ->  sifuri saba moja mbili, tatu nne tano, sita saba nane

Phone numbers are read in small groups, digit by digit, because that is how people repeat them back on a call. Account numbers follow the same pattern.

Abbreviations and loanwords

Written Swahili uses its own abbreviations, and they need expanding:

  • Bw. becomes Bwana, Bi. becomes Bibi
  • k.m. becomes kwa mfano
  • n.k. becomes na kadhalika
  • S.L.P. becomes Sanduku la Posta

Loanwords need care in the other direction. Many are already fully Swahili: kompyuta, basi, benki. Others are written in English spelling but spoken with Swahili sounds, such as network or app. We keep a pronunciation lexicon for common loanwords and brand names, written by native speakers, so the voice says them the way a Tanzanian would rather than switching accent mid-sentence. Our post on code-switching covers the mixed-language side in more depth.

Rhythm and pauses

Natural speech has pauses where the meaning breaks, not where the punctuation happens to be. Swahili sentences often build long verb forms that carry subject, tense and object in one word, such as nitakupigia (I will call you). Pausing inside that word, or rushing past the comma after it, sounds mechanical.

We train and review Sauti on conversational sentences as well as read text, so that pauses land where a speaker would breathe.

How we check our work

We combine automated checks with native listeners:

  1. Unit tests for the normaliser, covering numbers, dates, times and money across noun classes.
  2. Pronunciation checks on a fixed list of difficult words and loanwords.
  3. Listening panels in Tanzania who flag anything that sounds off, and say why.

Our target is that a listener stops noticing the voice and just hears the message. We are not there on every sentence yet, but these details are where the work is.

To try Sauti, see the text-to-speech docs or get early access.

Keep reading

Private beta · Now onboarding

Kila sauti ina thamani.
Every voice matters.

Build with the voice stack made for African languages.

Request early accessRead the docs