Speech & Transcription
Best Speech-to-Text APIs & Software in 2026: Measured WER, Speed, and Price
Most "best speech-to-text API" lists restate vendor benchmarks. This one runs each API on the same audio with the same scorer and publishes the raw numbers, the dataset, and the code, so you can reproduce or dispute any figure below.
The test set is 22.7 minutes of English audio: two LibriSpeech test-clean chapters (read audiobook speech, 12.7 min) and the first ten minutes of AMI meeting ES2002a (four people talking over each other in a room, far-field microphone). Clean speech separates almost nobody any more; the meeting audio is what separates the field.
Echosaw is not a speech-to-text vendor. We consume these APIs when building searchable transcripts for our own users, which is why we ran the test.
- Tested
- September 10, 2026
- Last updated
- September 10, 2026
- Tested by
- Devin (AI engineer, Echosaw)
- Reviewed by
- Matthew Simpson
Quick answer
- 1Deepgram Nova-3Measured
Best for high-volume batch transcription where turnaround and cost both matter.
- 2Speechmatics EnhancedMeasured
Best for accuracy-first workloads on difficult, multi-speaker audio.
- 3AssemblyAI UniversalMeasured
Best for teams that want transcripts plus summaries, chapters, and LLM post-processing from one API.
- 4Amazon TranscribeMeasured
Best for teams already on AWS who want IAM, S3, and compliance scope without another vendor.
- 5GladiaMeasured
Best for multilingual and code-switched audio where language detection matters more than raw English WER.
- 6Google Cloud Speech-to-TextDoc-verified
Best for GCP-native teams and latency-tolerant batch jobs that can use the dynamic batch tier.
- 7
Best for offline or data-residency use where no audio may leave your infrastructure.
Measured results
6 of 7 entries were run on the same input. Entries marked doc-verified were not run and are excluded from this table.
| Tool | Version tested | Pooled WER | Meeting WER (AMI) | Read-speech WER (LibriSpeech) | Speed |
|---|---|---|---|---|---|
| Deepgram Nova-3 | nova-3 (general-nova-3 2025-07-31.0), pre-recorded API | 7.8% | 16.8%54 sub / 95 del / 53 ins | 0.3% / 2.1% | 351x real time3.9 s total for 22.7 min |
| Speechmatics Enhanced | Batch API v2, operating_point=enhanced, EU1 region | 7.2% | 16.3%45 sub / 78 del / 73 ins | 0.1% / 1.2% | 42x real time32.1 s total for 22.7 min |
| AssemblyAI Universal | speech_models=[universal-3-pro, universal-2] (API-reported), batch API v2 | 8.2% | 18.7%28 sub / 130 del / 66 ins | 0.1% / 1.1% | 67x real time20.2 s total for 22.7 min |
| Amazon Transcribe | StartTranscriptionJob, en-US, default model, us-east-1 | 8.7% | 19.1%34 sub / 146 del / 49 ins | 1.0% / 1.5% | 37x real time37.2 s total for 22.7 min |
| Gladia | Pre-recorded API v2, default model | 9.5% | 21.3%55 sub / 148 del / 53 ins | 0.1% / 1.8% | 38x real time35.9 s total for 22.7 min |
| OpenAI Whisper large-v3 (self-hosted) | faster-whisper large-v3, int8, CPU (2 vCPU), beam_size=5 | 21.3% | 32.7%56 sub / 242 del / 94 ins | 16.7% / 10.4%dropped segments + one repetition loop | 0.5x real time2,545 s total for 22.7 min |
How we evaluated
Each provider received the same three 16 kHz mono WAV files through its batch (pre-recorded) API using the default English model unless noted. Wall-clock time is measured from upload start to transcript received, from a single us-east-1 client, one run per file. Local Whisper was run on the same 2-vCPU machine.
Word error rate is computed with jiwer after both hypothesis and reference pass through the Whisper English text normalizer (lowercasing, punctuation, number and spelling normalisation), so no provider is penalised for formatting choices. Pooled WER weights every word equally across the three files.
Pricing is the list price on each vendor's public pricing page on the test date for the model tested, converted to a per-hour figure. Free-tier accounts created with an echosaw.com address were used for Deepgram, AssemblyAI, Speechmatics, and Gladia; Amazon Transcribe ran under our own AWS account.
Ranking is by the weighted rubric below. Google Cloud Speech-to-Text was not run in this round and is listed as documentation-verified; it is ranked on published capabilities and price only and does not appear in the results table.
Dataset
LibriSpeech test-clean (2 chapters) + AMI ES2002a (first 600 s) — LibriSpeech speakers 1089 and 4507 (chapters 134686 and 16021, 276 s and 483 s, 1,683 reference words) and AMI meeting ES2002a headset-mix audio, first 600 s, reference built from the AMI word-level annotations (1,200 words). Built by build_dataset.py in the published harness. License: LibriSpeech CC BY 4.0; AMI Meeting Corpus CC BY 4.0.
Harness and raw output: /curated-lists/harness/stt/
Ranking rubric
- Accuracy45%
- Pooled WER across all three files, with meeting audio weighted by its word count.
- Speed20%
- Batch turnaround as a multiple of real time (audio seconds / wall seconds).
- Price20%
- List price per audio hour for the model tested, plus free-tier generosity.
- Developer experience15%
- API simplicity, output richness (timestamps, diarization, confidence), SDK and documentation quality.
The rankings
Deepgram · Best for high-volume batch transcription where turnaround and cost both matter
Second-best accuracy at five to eight times the speed of every other hosted API, at one of the lowest list prices in the test.
Strengths
- Returned every file in under 1.5 s (351x real time), an order of magnitude faster than the rest of the field.
- 16.8% WER on the meeting audio, within half a point of the leader.
- $0.0043/min ($0.26/hr) list price, second only to AssemblyAI, and a $200 signup credit with no card.
- Single synchronous HTTP call with the audio body; no upload-then-poll dance.
Limitations
- Highest substitution count on the meeting file (54) among the top three; errors skew toward wrong words rather than dropped words.
- Signup has a bot check that cannot be completed programmatically.
Pricing: $0.0043/min ($0.26/hr) pre-recorded, monolingual; $200 free credit
Speechmatics · Best for accuracy-first workloads on difficult, multi-speaker audio
Lowest word error rate in the test on both the meeting and read-speech files.
Strengths
- Best pooled WER (7.2%) and best meeting WER (16.3%); fewest deletions of any provider on the AMI file.
- $100 signup credit with no card, and a cheaper Standard operating point ($0.24/hr) for easier audio.
- Clean job-based REST API with per-word confidence and timing in the JSON output.
Limitations
- Enhanced operating point is $0.40/hr, the second most expensive paid option here.
- 42x real time in batch, the second slowest hosted API measured; Deepgram returned the same files eight times faster.
Pricing: $0.40/hr Batch Enhanced; $0.24/hr Batch Standard; $100 free credit
AssemblyAI · Best for teams that want transcripts plus summaries, chapters, and LLM post-processing from one API
Best read-speech accuracy in the test and the richest add-on layer (LeMUR, audio intelligence) in the group.
Strengths
- Best read-speech result in the test: 0.1% and 1.1% WER on the two LibriSpeech chapters.
- Competitive $0.21/hr list price (Universal-3 Pro) and $0.15/hr for Universal-2; $50 free credit.
- Broad output surface: speaker labels, chapters, entity detection, and LLM tasks on the same transcript ID.
Limitations
- 18.7% meeting WER, driven by 130 deletions on the AMI file; it drops overlapping speech rather than guessing.
- Two-step upload-then-poll flow; about 7 s per file regardless of length in our runs.
Pricing: $0.21/hr Universal-3 Pro; $0.15/hr Universal-2; $50 free credit
Amazon Web Services · Best for teams already on AWS who want IAM, S3, and compliance scope without another vendor
Mid-pack accuracy with the deepest AWS integration; the only option here billed through an existing cloud account.
Strengths
- Reads and writes S3 directly; no audio leaves the account boundary.
- 1.0% and 1.5% WER on read speech, in line with the leaders.
- $0.006/min ($0.36/hr) list price sits mid-pack; 60 free minutes a month for the first 12 months.
Limitations
- 19.1% meeting WER with 146 deletions, the second-highest deletion count in the test.
- Asynchronous job model requires S3 staging and polling; slowest measured API at 37x real time.
Pricing: $0.006/min ($0.36/hr) batch, first pricing tier in us-east-1; 60 min/month free for 12 months
Gladia · Best for multilingual and code-switched audio where language detection matters more than raw English WER
Excellent on clean speech and strong multilingual positioning, but the weakest measured result on meeting audio.
Strengths
- 0.1% and 1.8% WER on read speech, tied with the best.
- Automatic language detection and code-switching are first-class API options.
- $50 free credit; no card required.
Limitations
- 21.3% meeting WER with 148 deletions, the highest of any API in the test.
- $0.61/hr pay-as-you-go async list price is the most expensive measured provider; lower rates require a plan commitment.
Pricing: $0.61/hr async pay-as-you-go; $50 free credit
Google Cloud · Best for GCP-native teams and latency-tolerant batch jobs that can use the dynamic batch tier
Cheapest published batch tier of any vendor here at $0.003/min; not measured in this round.
Strengths
- Chirp model available under Standard pricing on the v2 API, per the Google pricing page.
- Dynamic batch tier at $0.003/min for latency-tolerant workloads; 60 free minutes a month.
Limitations
- Not run in this test; WER and speed figures are unavailable. Ranked on published capability and price only.
- Standard v2 recognition is $0.016/min ($0.96/hr) with data logging or $0.024/min without, more than every measured hosted vendor.
Pricing: $0.016/min ($0.96/hr) v2 standard with data logging, $0.024/min without; $0.003/min dynamic batch; 60 min/month free
OpenAI (open weights) · Best for offline or data-residency use where no audio may leave your infrastructure
The only zero-licence-cost option, but on CPU it is orders of magnitude slower and, unlike every hosted API, it dropped and hallucinated passages even on clean read speech.
Strengths
- MIT-licensed weights; audio never leaves your hardware.
- No per-minute pricing; cost is compute only.
Limitations
- 32.7% meeting WER with 242 deletions, roughly double the hosted APIs on the AMI file.
- 16.7% and 10.4% WER on read speech where every hosted API scored under 2.1%: it silently skipped several sentences on one chapter and looped one phrase repeatedly, a known large-v3 failure mode without VAD or chunk-level safeguards.
- 0.5x real time on a 2-vCPU CPU host with int8 quantisation; a GPU is required for production throughput.
Pricing: Free (open weights); compute cost only
Frequently asked questions
- Which speech-to-text API is most accurate?
- On our 22.7-minute test set, Speechmatics Enhanced had the lowest pooled word error rate (7.2%), followed by Deepgram Nova-3 (7.8%) and AssemblyAI Universal-3 Pro (8.2%). All three were within about one point of each other on clean read speech; the gap comes almost entirely from overlapping multi-speaker meeting audio.
- Which speech-to-text API is fastest?
- Deepgram Nova-3 returned 22.7 minutes of audio in 3.9 seconds (351x real time), about eight times faster than the next fastest API in our test. Every other hosted provider landed between 37x and 67x real time in batch mode; self-hosted Whisper large-v3 on a 2-vCPU CPU ran at 0.5x.
- Which speech-to-text API is cheapest?
- Among the measured APIs, AssemblyAI Universal-2 ($0.15/hr) and Universal-3 Pro ($0.21/hr) and Deepgram Nova-3 ($0.26/hr) have the lowest list prices for pre-recorded English. Google's $0.003/min ($0.18/hr) dynamic batch tier is the cheapest published price, but we did not test it. Self-hosted Whisper has no licence cost but needs GPU compute to be practical.
- What does speech-to-text cost per hour of audio?
- List prices for pre-recorded English on the test date ranged from $0.15/hr (AssemblyAI Universal-2) and $0.21/hr (Universal-3 Pro) through $0.26/hr (Deepgram Nova-3), $0.36/hr (Amazon Transcribe), $0.40/hr (Speechmatics Enhanced; $0.24/hr Standard), and $0.61/hr (Gladia pay-as-you-go) to $0.96/hr (Google Cloud v2 standard with data logging; $0.003/min dynamic batch). Self-hosted Whisper has no per-minute price; you pay for compute only. Deepgram ($200), Speechmatics ($100), AssemblyAI ($50), and Gladia ($50) all offer signup credit without a card.
- What is the best open-source speech-to-text option?
- OpenAI Whisper large-v3 (MIT-licensed weights) was the only open-source model we measured. Run through faster-whisper with int8 quantisation on a 2-vCPU CPU host it scored 21.3% pooled WER and 32.7% on the meeting audio, about double the hosted APIs, and 16.7% / 10.4% on read speech where every hosted API was under 2.1%, because it dropped segments and looped one phrase. It ran at 0.5x real time, so a GPU is required for production throughput. It remains the only option here where audio never leaves your infrastructure.
- Deepgram vs AssemblyAI: which is more accurate?
- Deepgram Nova-3 by a small margin overall: 7.8% pooled WER against 8.2% for AssemblyAI Universal-3 Pro. The difference is the meeting audio, where Deepgram scored 16.8% and AssemblyAI 18.7% (130 deletions; it drops overlapping speech rather than guessing). On clean read speech AssemblyAI was slightly better (0.1% / 1.1% against Deepgram's 0.3% / 2.1%). Deepgram was also about five times faster (351x vs 67x real time); AssemblyAI is cheaper on list price ($0.21/hr vs $0.26/hr).
- Why does word error rate differ so much between the two audio types?
- LibriSpeech is a single reader with a close microphone; every hosted API scored between 0.1% and 2.1% WER on it. AMI meeting audio has four overlapping speakers, a room microphone, and disfluencies, which is where models diverge (16-33% in our test). If your audio is meetings or calls, weight the meeting column.
- How can I reproduce these results?
- The dataset builder (build_dataset.py), provider runner (run.py), scorer (score.py), and the raw per-provider output from this run are published at echosaw.com/curated-lists/harness/stt/. Build the dataset, set the API key environment variables for the providers you have access to, run run.py, then score.py. Our API keys are not included; you supply your own.