Apple SpeechAnalyzer vs Whisper: Benchmark Verdict
Apple's new SpeechAnalyzer API landed in iOS 26 with big claims. Benchmark data from Inscribe puts it head-to-head with Whisper and the old SFSpeechRecognizer. The results are surprising.
Apple's new SpeechAnalyzer API landed in iOS 26 with big claims. Benchmark data from Inscribe puts it head-to-head with Whisper and the old SFSpeechRecognizer. The results are surprising.

Apple quietly shipped one of the most consequential speech APIs in years, and almost nobody outside the transcription world noticed. The new SpeechAnalyzer framework, introduced at WWDC 2025 and now stable in iOS 26, replaces the aging SFSpeechRecognizer that developers have been stuck with since 2016. And the benchmark numbers making the rounds on Hacker News suggest Apple didn't just catch up. It leapfrogged.
A detailed benchmark published by the team at Inscribe pitted Apple SpeechAnalyzer against OpenAI's Whisper (Tiny, Base, and Small) and Apple's own predecessor API across the LibriSpeech test corpus. The short version? SpeechAnalyzer beat every Whisper size Inscribe ships while running entirely on-device. That's a pretty significant deal, and it's the story we're breaking down here. If you follow speech-to-text benchmarks broadly, our FFASR leaderboard breakdown is a good companion read on how ASR engines actually behave on messy real-world audio.
SpeechAnalyzer is Apple's new speech-to-text framework built around the SpeechTranscriber module. It runs fully on-device on Apple Silicon (M-series Macs, A17 Pro and newer iPhones, M-chip iPads), uses a transformer-based acoustic model Apple trained internally, and streams results in real time. No cloud round-trip. No API costs. No rate limits.
Photo by Om Kamath on Unsplash
The old SFSpeechRecognizer, by contrast, was hybrid at best. It required network access for anything beyond a short utterance, capped inputs at one minute in server mode, and its underlying model hadn't been meaningfully updated in years. Developers building serious transcription apps mostly gave up on it and shipped Whisper instead, usually via whisper.cpp or a cloud API.
So when Apple showed up with a new framework that promises equal or better accuracy at faster-than-realtime speeds, developers paid attention.
According to Inscribe's writeup, the benchmark was run on the LibriSpeech test corpus — 5,559 utterances total, split into test-clean (2,620 utterances of clean read speech) and test-other (2,939 harder, noisier utterances). Every engine ran fully on-device on an Apple M2 Pro (32GB, macOS 26.5.1).
Inscribe ran the same audio through five systems: Apple SpeechAnalyzer (iOS 26 / macOS 26), Apple's legacy SFSpeechRecognizer, and three sizes of OpenAI Whisper (Tiny, Base, and Small) via WhisperKit CoreML. Word Error Rate (WER) was computed against the LibriSpeech reference transcripts using corpus WER (total errors divided by total reference words). Inscribe published the raw per-utterance hypotheses so third parties can rescore.
Worth flagging up front: this isn't an academic paper, it's a vendor benchmark from a company that ships transcription products, so take the exact percentages with a grain of salt. Inscribe cross-checked their Whisper numbers against OpenAI's published WERs on the same corpus and landed within a few tenths of a percentage point on all six measurements, which is a reasonable sanity check. The comparison also excludes Whisper Medium and Whisper large-v3 — Inscribe ships up to Whisper Small on-device, so larger checkpoints weren't in the harness.
Here's where the numbers actually live. Lower WER is better.
| Engine | test-clean WER | test-other WER | Model size |
|---|---|---|---|
| Apple SpeechAnalyzer (iOS/macOS 26) | 2.12% | 4.56% | system |
| Whisper Small (WhisperKit CoreML) | 3.74% | 7.95% | ~460MB |
| Whisper Base | 5.42% | 12.51% | ~140MB |
| Whisper Tiny | 7.88% | 17.04% | ~40MB |
| Apple SFSpeechRecognizer (legacy) | 9.02% | 16.25% | system |
A few things jump out. SpeechAnalyzer wins both splits by a comfortable margin over every Whisper size Inscribe measured, including Whisper Small (the largest they ship). The legacy SFSpeechRecognizer is roughly 4x worse on the clean split and lands in Whisper-Tiny territory on the noisy split, which is honestly a relief because Apple developers now have a modern option that doesn't require pulling in a Whisper checkpoint. Keep in mind LibriSpeech is read audiobook speech — it does not tell you how any of these engines behave on accented speech, technical vocabulary, meetings with overlapping speakers, or heavy background noise.
Accuracy is the headline, but throughput is where SpeechAnalyzer creates real product possibilities. Inscribe reports that all five engines ran comfortably faster than real time on the M2 Pro — roughly 12x to 40x realtime, meaning an hour of audio transcribes in about 1.5 to 5 minutes on-device. SpeechAnalyzer was about 3x faster per second of audio than Whisper Small while beating it on accuracy.
Inscribe deliberately declined to publish a precise per-engine timing table in this iteration because the accuracy runs shared the machine with a development workload, which adds noise to timing measurements. They plan to update the post with numbers from a dedicated idle run.
The interesting thing isn't that Apple matched Whisper on LibriSpeech. It's that they beat Whisper Small while running about 3x faster on the same machine.
A few findings from the benchmark and the Hacker News discussion caught developers off guard.
SpeechAnalyzer beat every Whisper size Inscribe ships. The expectation going in was that Whisper Small — the largest model that runs comfortably on-device via WhisperKit — would still edge out Apple's built-in engine on the harder split. It didn't. SpeechAnalyzer won test-other by roughly 3.4 percentage points, which is a large gap in WER terms.
Timestamps are more accurate on SpeechAnalyzer. Whisper is notorious for hallucinated timestamps and drift on long audio. SpeechAnalyzer, being streaming-native, keeps word-level timestamps tight throughout the audio. For anyone building video captioning tools, this is a huge quality-of-life improvement.
Punctuation and casing are just better on Apple. SpeechAnalyzer outputs properly cased, punctuated text with speaker diarization hints out of the box. Whisper requires either a second pass or hand-rolled post-processing to get comparable output.
Zero cost, zero data leaves the device. For regulated industries (healthcare, legal, finance), this alone is enough reason to migrate. You don't need a BAA with OpenAI. You don't need to redact audio before sending it upstream. It just runs.
Let's not pretend this is a clean sweep. There are real limitations.
It only runs on Apple hardware. Obviously. If you're shipping a cross-platform product, you still need Whisper or a cloud API for Android, web, and Windows. So SpeechAnalyzer becomes part of a multi-engine strategy, not a replacement.
Language support is narrower than Whisper's 99 languages. Per Inscribe, SpeechTranscriber supports around 30 locales at launch. Whisper supports far more, though with variable quality outside the top 20 — for context on how brittle multilingual ASR can get, see our bilingual voice agents benchmark.
Photo by Jonas Lee on Unsplash
There's no fine-tuning path. Whisper can be fine-tuned on domain vocabulary (medical terms, product names, jargon). SpeechAnalyzer offers a contextualStrings API for hints, but you can't retrain the underlying model. For heavy jargon domains, a fine-tuned Whisper checkpoint may still be the safer bet.
And it's a black box. Apple doesn't publish the model architecture, parameter count, or training data. For research work or academic comparison, this is frustrating. For product engineering, it's fine.
The other honest caveat: LibriSpeech is read audiobook speech. It does not tell you how SpeechAnalyzer performs on Zoom-style meeting audio, strong non-native accents, medical or legal jargon, or multi-speaker overlaps. Those numbers do not exist in this benchmark, and pretending they do would be dishonest.
If you're shipping a transcription feature on Apple platforms in 2026, the calculus just changed. The old default of bundling whisper.cpp with a Whisper Small checkpoint inside your app is no longer obvious. SpeechAnalyzer gives you better accuracy on the standard English test corpus, comparable or better latency, zero binary bloat, no cost, and full privacy compliance. That's a compelling package.
The practical recommendation: on Apple platforms and for English, default to SpeechAnalyzer. Fall back to Whisper (local or API) only for languages Apple doesn't support, for cross-platform code paths, or for cases where you need model fine-tuning. Inscribe itself now routes to SpeechAnalyzer where the language is supported and to Whisper where it isn't, which is a reasonable template.
The broader implication is more interesting. Apple just quietly commoditized high-quality English speech recognition on their platform. Any indie developer can now ship a Whisper-Small-beating transcription feature with a hundred lines of Swift and zero infrastructure. That opens the door to a wave of small, focused voice apps that would've been economically impossible eighteen months ago. For a broader view on how 2026's LLM and multimodal benchmarks are landing, see our 2026 LLM benchmark showdown.
The benchmark data is clear enough on the corpus tested. Apple SpeechAnalyzer beat every Whisper size Inscribe measured on LibriSpeech, while running about 3x faster than Whisper Small and completely free to run at any scale. For English transcription on Apple devices, it's the new default. For everything else — other languages, cross-platform, fine-tuned domain models — Whisper remains the workhorse.
The surprise isn't that Apple built something good. It's that they built something good enough to displace the reigning open-source champion on a specific but important slice of the transcription market. That doesn't happen often.
No. SpeechAnalyzer requires Apple Silicon with a Neural Engine, meaning A17 Pro or newer iPhones (iPhone 15 Pro and up), M1 or newer Macs, and M-chip iPads. On older devices, the API falls back to the legacy SFSpeechRecognizer, which has significantly worse accuracy per the Inscribe benchmark. If your app supports older hardware, plan for a dual-code-path approach.
SpeechAnalyzer doesn't support model fine-tuning like Whisper does, but it exposes a contextualStrings API where you can pass an array of domain terms (product names, medical terminology, proper nouns) before transcription starts. For heavy jargon domains like legal or medical, a fine-tuned Whisper checkpoint may still be the better choice, since the Inscribe benchmark only measured read audiobook speech from LibriSpeech and doesn't cover technical vocabulary.
Yes, and this is one of its strongest features. SpeechAnalyzer is designed streaming-first, so you can pipe audio buffers in from AVAudioEngine and receive partial results with word-level timestamps in real time. According to Inscribe's benchmark on an M2 Pro, all engines ran at 12x to 40x realtime, so latency from speech to text is comfortably fast enough for live captioning and dictation use cases.
According to Inscribe's writeup, SpeechTranscriber supports around 30 locales at launch, with more expected in point releases. For anything outside this list, Whisper remains the more robust choice with its 99-language coverage. Consult Apple's Speech framework documentation for the current authoritative list.
No. Because SpeechAnalyzer runs entirely on-device using the user's own compute, there are no per-minute charges, API quotas, or rate limits. This is a major economic shift compared to cloud transcription APIs (OpenAI's Whisper API charges $0.006 per minute) or self-hosted Whisper on GPU infrastructure. For apps doing millions of transcription minutes per month, the savings can be substantial.