Regional speech works. The best route still depends on the task.
Swahili recognition improved on some baselines, not all
Azure standard recognition reached 16.1% word error on the 12 Swahili clips, versus our earlier 24.3% for Crane and 38.0% for Whisper. Our current Sunflower CT2 configuration remained better on these same clips at 12.5%. That supports adding a managed option; it does not justify replacing Sunflower.
African English results were mixed. Whisper remained better on Nigerian and South African English, while Kenyan English word error was tied. The Ghanaian comparison contains only three clips and 25 reference words, so a single word changes the result by four percentage points. These groups are not national accent rankings.
Seven voices, ready for listening review
Zuri, Rafiki, Rehema and Daudi generated Kenyan or Tanzanian Swahili speech. Asilia, Ezinne and Leah supplied Kenyan, Nigerian and South African English options. All 14 generated files were valid mono 16-bit, 16 kHz WAVs. No Luganda voice appeared in the returned inventory.
All 102 inference requests completed without HTTP errors, including the noise and silence controls, concurrent calls and automatic round trips. Silence returned empty text. With four concurrent short synthesis requests, the median complete response was 394 ms across eight calls. This small warm test does not establish sustained capacity, streaming first-audio latency or a production SLA.
The players below contain the actual unmodified synthetic outputs. Recognition of generated speech is only an intelligibility proxy, especially when one vendor produces and recognises it. We have not recorded native-speaker naturalness ratings or established a quality win over Kokoro or Orpheus.
Managed availability has a different cost
The South Africa North Retail Prices API returned $1 per audio hour for standard transcription—about $0.0167 per minute—and $15 per million input characters for prebuilt neural synthesis. Those are supplier list rates, not Embiro customer prices or an invoice. No commitment tier, custom voice hosting or training plan was created.
The run submitted 777.185 audio seconds and 1,444 text characters across all measured calls: about $0.238 at those list rates. Network, existing hosting, taxes and billing-unit differences are excluded; no free allowance is assumed. Sponsorship deductions have not yet been verified in billing.
Azure neural TTS is a promising optional route after listening review. Azure ASR could provide a managed alternative while a media GPU is stopped, but it needs separate pricing and cost limits. It should not silently inherit the lower-priced self-hosted route.
A regional path with existing controls intact
Microsoft documents regional storage and processing for standalone Speech. We used standard regional Speech calls, rather than Global Voice Live or HD voice rerouting. This is a service-specific processing statement, not a claim that every part of a web application stays in Africa.
The original authentication problem was resolved with the Speech-specific role and managed identity, without enabling API keys. Temporary test access was removed after collection. Production routing and GPU lifecycle settings remained unchanged, all platform services stayed healthy, and no public speech route or catalogue availability was added by this evaluation.
Results, in context.
| Recording group | Clips | Azure standard | Historical Whisper |
|---|---|---|---|
| Swahili | 12 | 16.1% | 38.0% |
| Nigerian English | 12 | 21.3% | 19.1% |
| Kenyan English | 6 | 28.9% | 28.9% |
| South African English | 6 | 15.4% | 13.5% |
| Ghanaian English | 3 | 8.0% | 12.0% |
Lower is better. Same hash-verified audio and rescoring normalisation. Historical dates are 11–12 October; Azure ran on 20 October. Swahili Sunflower CT2: 12.5%; Crane: 24.3%. Do not compare across recording groups as a model or accent ranking.
| Task | Concurrent calls | Requests | Successful | Median complete response |
|---|---|---|---|---|
| ASR | 1 | 8 | 8 | 2.229 s |
| ASR | 4 | 8 | 8 | 2.239 s |
| TTS | 1 | 8 | 8 | 0.424 s |
| TTS | 4 | 8 | 8 | 0.394 s |
Complete HTTP responses, not streaming first-playable-audio. C1 then C4 after earlier calls; eight requests per condition, no retries or 429s. Tiny diagnostic, not maximum throughput.
| Service | Retail unit rate | Submitted units | Run estimate |
|---|---|---|---|
| Standard transcription | $1 / audio hour | 777.185 audio seconds | $0.216 |
| Prebuilt neural synthesis | $15 / million characters | 1,444 text characters | $0.022 |
Azure Retail Prices API, South Africa North, USD, checked 20 October 2026. About $0.238 combined; excludes network, existing hosting, taxes and billing-unit differences. Not an invoice or customer price.
How we ran it.
- Calls originated on an existing Azure Standard_B2s_v2 CPU host in South Africa North, using managed identity and the regional AIServices account’s standard speech endpoints. Microsoft does not disclose the managed model version, serving hardware or precision. No Global Voice Live route or GPU worker was used.
- 39 clean public human recordings: 12 Swahili FLEURS, 12 Nigerian English, six South African English, six Kenyan English and three Ghanaian English; plus two synthetic-noise variants and a silence control. Original audio hashes were checked. No customer recordings were used.
- One accuracy pass without an excluded warm-up; seven standard neural voices with two short prompts each; ASR and TTS concurrency 1 then 4, eight calls per condition, after earlier calls; 14 same-vendor TTS/ASR round trips. No retries. HTTP timing includes upload, transport, processing and complete download.
- Historical Crane, Whisper and Sunflower outputs were rescored on the identical audio using corpus edit totals after NFKC, lowercase, Unicode punctuation replaced by spaces and collapsed whitespace. These historical comparisons assess diagnostic accuracy; their different timing boundaries are not used for speedup claims.
Hear the tradeoffs.
AI-generated samples. The prompt is the intended transcript; listen for omissions, pronunciation, pauses and voice character.
Swahili greeting
Habari yako rafiki. Karibu Embiro Labs.
Synthetic Azure standard neural speech generated in South Africa North. Intended input text, not a certified transcript. Listen for pronunciation and naturalness; no native-speaker rating has been recorded.
Swahili payment confirmation
Malipo yako yamepokelewa. Asante kwa kutumia huduma yetu.
Synthetic Azure standard neural speech generated in South Africa North. Intended input text, not a certified transcript. Listen for pronunciation and naturalness; no native-speaker rating has been recorded.
English greeting
Welcome to Embiro Labs. Your data stays in Africa.
Synthetic Azure standard neural speech generated in South Africa North. Intended input text, not a certified transcript. Listen for pronunciation and naturalness; no native-speaker rating has been recorded.
English payment confirmation
Your payment of fifty thousand Uganda shillings has been received.
Synthetic Azure standard neural speech generated in South Africa North. Intended input text, not a certified transcript. Listen for pronunciation and naturalness; no native-speaker rating has been recorded.
The limits matter.
- Small, deterministic reused recordings; unknown training overlap and speaker independence. Results do not establish accuracy for all African languages, accents, conversational settings, phone calls or code switching.
- Recognition locales were explicit: sw-KE, en-NG, en-ZA and en-KE; Ghanaian clips used en-GB. Automatic language detection was not tested.
- Only two short prompts per synthesis voice. No native-speaker listening score, long-form stability, SSML expressiveness, streaming, cancellation or full console integration test.
- Concurrency conditions ran sequentially after earlier requests; internal provider warm state is unknown. Eight calls per condition cannot support tail-latency or saturation claims. ASR and TTS were not saturated simultaneously.
- Historical self-hosted results are dated comparators, not fresh GPU runs. Source waveforms match, but managed model versions and training sets are undisclosed. No self-hosted latency speedup is claimed.
- Retail usage estimate only; invoice rounding, character billing, network charges, taxes and actual credit application can differ. Generated-speech ASR round trips do not certify naturalness.
Evidence & sources.
The public extract contains the methods, selected results and caveats in this note. It is a curated summary, not the full raw run. Fingerprints identify the retained source artifacts; gated audio and private operational records are not included.
Download results extract- Azure Speech regions and processing scope
- Azure Speech language and voice support
- Speech managed identity / Entra authentication
- Azure retail pricing API
- Google FLEURS — CC-BY-4.0, Google and contributors
- Nigerian accented English source dataset
- EdAcc African English subset source — CC-BY-SA-4.0
- Earlier Sunbird speech study
- Earlier Crane study
Source artifact fingerprints · SHA-256
77f8967653bc726a4ec362b8b4ebabdd43c5cf5214baf448c6ade5bcddf690eb3ae11e0de4fe0541d1615a66f5f24d24be7c880c89eec273acd33f36365ef5c7402c09fecdf60f0412aa0dce5fa77d2258431dd4ee3eba8ddafac8f19a8c84622b8af7eef9770f97a26acc78af058ef8918315095039a1abb4cbcd20ce9fc4318367031d5656829292d40bf99cba62e6ec3aa18e3884d64b335e39a0d5ebd610dc94bdb4464f332c6e743d05a44f397b24937f78d2f5aef73534171dfc2dbadeaf96932accd559f027452ffb123736f4a58ab74baffef07e23b140cccad8d4f8dce01b99ef6652ab24c725158f6f50bff7ee6f84360ab1ea6f028a2900cb7db23b8e2272bd73b462fe285a95cdaa72689d6df9ef72341a68edf1d95790b8d669f7d3dbdf99840a56a5fc476718ef54ec3a7cc9bbf8199b8a7c992b20ff408446d96fe95c597b40a52e4e742eaf8fe18e1f23aa38038858453411eee95aa3c290fd2677035b1d5ca48103dc4643cc11d74ccee7eeaf868f4760691346ea94149eSuggested citation: Embiro Labs Research. “Azure Speech in South Africa: a useful option, with trade-offs.” Published 20 Oct 2026. embiro.ai/research/azure-regional-speech
Report a correction