Mean WER · 12 common Vaani languages
High-Accuracy Recognition
on Real Indian Speech
Explore NAAD v2 on spontaneous Indian speech: 12 common Vaani languages, 351 Indian English clips, and speech synthesis across 27 languages. See the results, hear the voices, and explore what you can build.
Common languages in this comparison.
WER · 351 Vaani English clips
Local first audio · median of 27 language timings
NAAD v2 recorded the lowest mean word error rate among the three systems in the 12-language Vaani comparison. Explore the language results ↗
Listen to NAAD.
A voice for everyday moments.
Choose a language. Press play.
Listen for names, pacing and everyday expressions.
हिन्दीAditi · Hindi voice sampleनमस्ते! आपकी किताबें आज शाम चार से छह बजे के बीच पहुँच जाएँगी। अगर आप घर पर नहीं हैं, तो हम कल सुबह भी आ सकते हैं। बस अपनी सुविधा का समय बता दीजिए। क्या मैं आपकी किसी और तरह से मदद कर सकती हूँ?
Hear everyday expressions in Hindi, Gujarati and Tamil. Explore NAAD v2 with an interactive voice experience.
Experience NAAD v2 ↗Speech Recognition Results
Word error rate on Vaani spontaneous speech. Compare the 12-language mean and Indian English results from Oogam’s evaluation. Lower WER means fewer transcription errors.
12-Language Speech Recognition Benchmark
Equal-language mean WER over 12 common measured languages; excludes proxy rows. Vaani test set (IISc and ARTPARK).
- 1NAAD24.4%
- 2Sarvam Saaras v430.9%
- 3Bodhan Indic-Transcribe32.7%
Spontaneous Indian English
351 clips of unscripted Indian English. Vaani English test set.
- 1NAAD9.2%
- 2Sarvam Saaras v410.5%
- 3Bodhan Indic-Transcribe11.7%
- 4Whisper large-v312.3%
Results by language
Speech-to-text word error rate by language
Spontaneous, image-prompted speech from districts across India (Oogam’s evaluation subset of IISc and ARTPARK Vaani). Headline = equal-language mean of the 12 common measured languages, excluding proxy rows.
WER
Table view
| Language | NAAD | Sarvam Saaras v4 | Bodhan Indic-Transcribe |
|---|---|---|---|
| Assamese | 10.1% | 11.9% | 10.5% |
| Bengali | 17.3% | 21.0% | 20.6% |
| Bhojpuri | 28.5% | Not measured / offered | 32.0% |
| Chhattisgarhi | 41.7% | Not measured / offered | 51.7%Hindi proxy |
| Gujarati | 19.9% | 26.6% | 28.1% |
| Hindi | 15.0% | 17.2% | 16.9% |
| Kannada | 31.7% | 36.8% | 39.3% |
| Konkani | 37.5% | Not measured / offered | Not measured / offered |
| Magahi | 46.3% | Not measured / offered | 46.3%Hindi proxy |
| Maithili | 46.9% | 53.3% | 64.4% |
| Malayalam | 28.0% | 32.9% | 33.1% |
| Marathi | 27.9% | 33.3% | 33.3% |
| Marwari | 24.5% | Not measured / offered | 43.8%Hindi proxy |
| Nepali | 16.6% | 31.0% | 30.3% |
| Punjabi | 19.3% | 23.4% | 23.5% |
| Tamil | 28.3% | 49.0% | 54.5% |
| Telugu | 31.9% | 34.6% | 38.0% |
Chhattisgarhi, Magahi and Marwari use a Hindi setting for Bodhan in this report; those proxy rows are excluded from the headline. Magahi is a tie (46.3 each). Missing results do not establish vendor language support. Konkani has only a NAAD value in this snapshot.
Text-to-speech
Explore first-audio timing, complete-clip rendering and intelligibility across a shared set of 25 prompts per language. Timing tables distinguish NAAD’s local measurements from external API calls.
First-audio measurements
Median of the measured language timings. NAAD ran locally; external APIs include internet transit. These different network paths and language sets are not a like-for-like speed ranking.
| System | Timed languages | Median of language timings | Network path |
|---|---|---|---|
| Naad v2 | 27 | 454 ms | Local · same machine |
| ElevenLabs v4 | 15 | 872 ms | External API · internet |
| ElevenLabs v4 Turbo | 2 | 262 ms | External API · internet |
| Gemini 3.8 Flash TTS | 2 | 1,155 ms | External API · internet |
Full-clip REST measurements
Time to receive the complete clip, not first streaming audio. Sarvam’s streaming endpoint was not measured.
| System | Timed languages | Median of language timings | Network path |
|---|---|---|---|
| Sarvam Bulbul v3 | 11 | 1,636 ms | External API · internet |
| Sarvam Bulbul v4 Flash | 11 | 5,258 ms | External API · internet |
ASR-based intelligibility example
Character error rate on 25 Marathi prompts, using Bodhan ASR to transcribe the generated speech. This automated intelligibility measure includes recogniser error; it is separate from listener-rated voice quality.
| LANGUAGE | NAAD | SARVAM BULBUL V3 | SARVAM BULBUL V4 FLASH | ELEVENLABS V4 | RESULT |
|---|---|---|---|---|---|
| Marathi | 0.9 | 0.9 | 1.2 | 1.3 | Tied best |
Text-to-speech time to first audio by language
Language-level timings from request to first audio byte. NAAD ran locally; other providers were reached over the internet. Full-clip timings are excluded from this chart.
First audio (ms)
Table view
| Language | NAAD | ElevenLabs v4 | Gemini 3.8 Flash TTS | ElevenLabs v4 Turbo |
|---|---|---|---|---|
| Assamese | 637 ms | 816 ms | Not measured | No result in this snapshot |
| Bengali | 371 ms | 840 ms | Not measured | No result in this snapshot |
| Bhojpuri | 641 ms | No result in this snapshot | Not measured | No result in this snapshot |
| Chhattisgarhi | 395 ms | No result in this snapshot | Not measured | No result in this snapshot |
| Dogri | 761 ms | No result in this snapshot | Not measured | No result in this snapshot |
| English | 269 ms | 791 ms | Not measured | 259 ms |
| Gujarati | 298 ms | 943 ms | 1,176 ms | No result in this snapshot |
| Hindi | 454 ms | 856 ms | 1,134 ms | 265 ms |
| Kannada | 670 ms | 900 ms | Not measured | No result in this snapshot |
| Kashmiri | 1,677 ms | No result in this snapshot | Not measured | No result in this snapshot |
| Konkani | 386 ms | No result in this snapshot | Not measured | No result in this snapshot |
| Magahi | 1,955 ms | No result in this snapshot | Not measured | No result in this snapshot |
| Maithili | 533 ms | No result in this snapshot | Not measured | No result in this snapshot |
| Malayalam | 379 ms | 894 ms | Not measured | No result in this snapshot |
| Manipuri | 2,904 ms | No result in this snapshot | Not measured | No result in this snapshot |
| Marathi | 593 ms | 872 ms | Not measured | No result in this snapshot |
| Marwari | 1,464 ms | No result in this snapshot | Not measured | No result in this snapshot |
| Nepali | 396 ms | 868 ms | Not measured | No result in this snapshot |
| Punjabi | 446 ms | 991 ms | Partial · 2 samples | No result in this snapshot |
| Sanskrit | 373 ms | No result in this snapshot | Not measured | No result in this snapshot |
| Santali | 648 ms | No result in this snapshot | Not measured | No result in this snapshot |
| Sindhi | 387 ms | 850 ms | Not measured | No result in this snapshot |
| Tamil | 385 ms | 920 ms | Not measured | No result in this snapshot |
| Telugu | 381 ms | 945 ms | Not measured | No result in this snapshot |
| Urdu | 663 ms | 776 ms | Not measured | No result in this snapshot |
Bodo and Odia are omitted from this display only. Downloads and the 27-language NAAD median retain their original measurements. The other beta languages remain included. Missing bars mean no numeric timing in the report, not zero latency or lack of support.
Spontaneous
Indian English.
Vaani English · 351 clips.
Word error rate on unscripted speech.
Vaani English results with Whisper English normalisation, as recorded in the evaluation. Dataset selection and scoring details are in the methodology. Download the complete evaluation ↓
Explore the
measurements.
Speech recognition shows Vaani spontaneous speech.
Choose a speech task, language and metric.
12 languages. The same comparison.
Equal-weight mean over the 12 languages measured by all three systems, excluding dialect proxies. All 17 published language rows are available in the table below.
See all 17 languages in detail
| Language | Naad v2 | Sarvam Saaras v4 | Bodhan Indic-Transcribe |
|---|---|---|---|
| Assameseঅসমীয়া | 10.1% | 11.9% | 10.5% |
| Bengaliবাংলা | 17.3% | 21.0% | 20.6% |
| Bhojpuriभोजपुरी | 28.5% | Not measured / offered | 32.0% |
| Chhattisgarhiछत्तीसगढ़ी | 41.7% | Not measured / offered | 51.7%Hindi proxy |
| Gujaratiગુજરાતી | 19.9% | 26.6% | 28.1% |
| Hindiहिन्दी | 15.0% | 17.2% | 16.9% |
| Kannadaಕನ್ನಡ | 31.7% | 36.8% | 39.3% |
| Konkaniकोंकणी | 37.5% | Not measured / offered | Not measured / offered |
| Magahiमगही | 46.3% | Not measured / offered | 46.3%Hindi proxy |
| Maithiliमैथिली | 46.9% | 53.3% | 64.4% |
| Malayalamമലയാളം | 28.0% | 32.9% | 33.1% |
| Marathiमराठी | 27.9% | 33.3% | 33.3% |
| Marwariमारवाड़ी | 24.5% | Not measured / offered | 43.8%Hindi proxy |
| Nepaliनेपाली | 16.6% | 31.0% | 30.3% |
| Punjabiਪੰਜਾਬੀ | 19.3% | 23.4% | 23.5% |
| Tamilதமிழ் | 28.3% | 49.0% | 54.5% |
| Teluguతెలుగు | 31.9% | 34.6% | 38.0% |
Vaani scoring uses the better match against native-script and mixed-script references for each system, as described in the evaluation record.
Hindi-proxy rows are labelled. A missing result is never treated as zero. Means use the published rounded scores. Evaluation details ↗
The datasets
The evaluation covers spontaneous Indian speech, Indian English and shared speech-synthesis prompts. Coverage below refers to the evaluation subsets.
| Dataset | Source | Type | Coverage | Clips / prompts |
|---|---|---|---|---|
| Vaani | IISc and ARTPARK | Regional spontaneous speech | 17 languages | Up to 500 per language; exact count not published |
| Vaani English | IISc and ARTPARK | Spontaneous Indian English | English | 351 |
| IndicVoices | AI4Bharat | Read, extempore & conversational | 22 languages | Up to 500 per language; exact count not published |
| Svarah / FLEURS English | Dataset names in report | Accented / read speech | English | 500 each (reported) |
| Everyday-speech sentences | Transcripts of real speech | Text-to-speech prompts | 27 languages | 25 per language planned; completions vary |
Methodology
Oogam’s October 2026 evaluation of NAAD v2 speech recognition and synthesis. Results are organised by dataset, language and metric, with the measurement conditions documented below.
The sections below explain the datasets, scoring rules and timing conditions behind each result.
Evaluation date & model versions
Evaluation period: 20–21 October 2026. All speech-recognition results in this benchmark are for Naad v2. Competitor model names follow the evaluation record. Results represent this dated snapshot; current model specifications are available through the reference links.
Inputs, splits & exclusions
The evaluation record describes up to 500 clips per language and dataset, selected with a fixed seed. Comparisons use the common set of clips completed by every system. Naad trains on Vaani and IndicVoices training data, with evaluation speakers described as held out. This is an in-domain evaluation. Success-only WER measures transcription accuracy; completion rates need a separate reliability assessment.
Word error rate & aggregation
WER = (substitutions + deletions + insertions) / reference words × 100. The headline averages the 12 published Vaani WER values shared by all three systems, with equal weight per language and Hindi-proxy rows excluded. Calculations use the rounded source values. This equal-language mean differs from pooling all reference words into a single WER.
Normalisation & code mixing
The recorded scoring process removes case and punctuation differences, normalises nukta and digit forms, and uses the Whisper English normaliser. On Vaani, each system receives its better score against native-script and mixed-script references. IndicVoices uses native-script references. Manipuri and Santali outputs are transliterated into the reference script for every system. These conventions define the comparisons shown here.
Comparison scope & dialect proxies
The page focuses on Vaani spontaneous speech. Complete downloads also include IndicVoices, Svarah and FLEURS; relative performance varies across these datasets, so the Vaani results should be read within their stated scope. Bodhan uses a Hindi setting for Chhattisgarhi, Magahi and Marwari; these rows are labelled as proxies and excluded from the headline. Missing entries describe this evaluation, not current product availability.
Speech synthesis accuracy
The recorded setup uses the same 25 prompts per language for each tested system. Generated audio is transcribed by Bodhan ASR and compared with the intended text using character error rate (CER). This measures recogniser-based intelligibility and includes the recogniser’s own errors and dialect effects. Human voice-quality and preference studies measure a different dimension. The Marathi panel is an example; the explorer includes all synthesis language rows.
Predicted naturalness
UTMOS estimates naturalness on a 1–5 scale. It is an automated predictor, not a human mean opinion score. The evaluation record describes an English-trained model; scores on Indian-language speech should be treated as an automated diagnostic, not a validated native-listener preference ranking.
Latency & network conditions
Requests were sequential from India, according to the evaluation record. Naad ran on the same machine; competitors were called over the internet. First-audio timing measures request to first audio byte. Sarvam REST timing measures the complete clip and is shown separately; its streaming endpoint was not evaluated. Provider summaries are medians of available language-level timings, not pooled request p50s. Different network paths and language sets prevent a like-for-like speed ranking. These measurements are not full conversation latency or a hosted latency guarantee.
Coverage, beta rows & display choices
The TTS record contains 27 Naad language rows, including beta rows for Odia, Kashmiri and Manipuri. The by-language timing chart shows 25 languages; Bodo and Odia remain in the complete downloads and the 27-language median of 454 ms. Gemini timing summaries use Hindi and Gujarati; the partial Punjabi result is excluded. Counts describe tested rows, not total product support. Telephone-band (8 kHz) speech, diarisation and production call latency were not evaluated.
Publication scope
Published by Oogam from its internal evaluation record; this is not an independent third-party audit. Downloads contain aggregate measurements and the recorded methodology. Per-run inputs and outputs, exact model configurations, split manifests, scoring code, failure counts and confidence intervals are not included in this publication. The results describe the listed tests and do not establish statistically significant superiority. Reference links document the products, datasets and metrics used.
Plan an evaluation for your use case
Suggested steps for a separate evaluation on your workload.
- 1
Freeze model IDs/checkpoint hashes, voices, endpoints, SDK versions, prompts, audio formats and all generation/decoding settings before evaluation.
- 2
Publish licensed evaluation manifests, dataset revisions, speaker/train overlap checks, sampling seed and per-language counts. Keep an untouched test split and avoid tuning on it.
- 3
Use identical inputs and a predeclared, symmetric normalisation/reference policy. Publish per-sample outputs, error counts and all failures. Report both success-only accuracy and completion/error rates.
- 4
For hosted latency, use the same client region, protocol, connection reuse, codec and workload. Separate local inference from hosted end-to-end tests; measure first playable audio, first byte and full clip independently.
- 5
Run repeated trials with warm/cold states, prompt-length buckets and production-relevant concurrency. Report per-request p50/p95, sample sizes, errors and bootstrap confidence intervals, not just medians of language medians.
- 6
For voice quality, add a blinded, randomised native-listener study with matched prompts, volume and playback conditions. Publish rater counts, sampling and uncertainty; automated ASR/UTMOS are supporting measures only.
Reference sources
Product documentation, dataset descriptions and metric references. Benchmark measurements are from Oogam’s evaluation.
Saaras and Bulbul model families, supported modes and product specifications.
REST response format, audio settings and complete-clip generation.
Bulbul v4 Flash release notes and streaming product specifications.
ElevenLabs model families, language support and latency definitions.
Gemini speech-generation models, voices and API configuration.
Model architecture, supported languages and OIWER scoring on Bodhan’s own benchmarks.
Bodhan’s speech-recognition and speech-synthesis products.
Spontaneous, image-prompted speech collected across districts of India.
Read, extempore and conversational speech across 22 Indian languages.
Reference implementation of automated MOS prediction.
Reference implementation of word error rate and its error-count formula.
A reference for designing subjective listener studies; separate from the automated metrics used here.
Test NAAD on your own calls
Hear the voices, try your own use case, or talk to us about an evaluation with agreed inputs, settings and success criteria.