Best local speech-to-text for Raspberry Pi, phones and other edge devices
Only 12 of the 26 reviewed models have a documented path to small devices. For English voice commands and live captions, Moonshine is the one family that ships official mobile libraries and publishes Raspberry Pi 5 latency. For other languages, Whisper tiny or base through whisper.cpp is the lightest documented route. NVIDIA's Nemotron streaming model lists Jetson boards, and VibeVoice-ASR-BitNet targets CPUs without a GPU.
Models with a documented edge or on-device path
Each entry quotes the vendor's or runtime's own documentation. "Edge rating" is our 1–5 editorial score for low-power use.
| Model | What the official source documents | Edge rating | Streaming |
|---|---|---|---|
| Moonshine Tiny Streaming (English) 34M · English | Official Python, Swift (iOS/macOS), Android and C++ libraries on ONNX Runtime with 8-bit weights. Moonshine publishes 237 ms latency on a Raspberry Pi 5 for Tiny Streaming. Source ↗ | 5/5 | Native |
| Moonshine Medium Streaming (English) 245M · English | Same official libraries as Tiny. Moonshine publishes 802 ms latency on a Raspberry Pi 5 for Medium Streaming. Source ↗ | 4/5 | Native |
| Whisper tiny 39M · 99+ listed languages | whisper.cpp lists Raspberry Pi, Android, iOS and WebAssembly among its platforms; its README lists about 273 MB of memory for tiny. Source ↗ | 5/5 | Via runtime |
| Whisper base 74M · 99+ listed languages | whisper.cpp lists Raspberry Pi, Android, iOS and WebAssembly among its platforms; its README lists about 388 MB of memory for base. Source ↗ | 5/5 | Via runtime |
| Whisper small 244M · 99+ listed languages | whisper.cpp lists the same platforms; its README lists about 852 MB of memory for small, so it needs a device with more headroom. Source ↗ | 3/5 | Via runtime |
| VibeVoice-ASR-BitNet 0.3B quantized · 7 listed languages | VibeASR.cpp runs on CPUs only, with x86 AVX2 and ARM NEON kernels. Microsoft reports a real-time factor of 0.63 on one Apple M4 thread and below 1 on three or more threads; model files total 1.58 GB. Source ↗ | 5/5 | Via runtime |
| Nemotron 3.5 ASR Streaming 0.6B 600M · 40 language-locales in tiers | NVIDIA lists Jetson boards (Linux for Tegra) among the supported hardware for this streaming model. Source ↗ | 2/5 | Native |
| Distil-Whisper large-v3 large-v3 distilled · English | The model card documents Transformers.js, which runs in JavaScript environments such as the browser. Source ↗ | 2/5 | Via runtime |
| Voxtral Mini 4B Realtime 2602 4B · 13 listed languages | Mistral links an ExecuTorch on-device example but marks it untested; the supported path needs a GPU with at least 16 GB. Source ↗ | 2/5 | Native |
| Whistle 16.9 MB file (parameters not stated) · 7 listed languages | A single 16.9 MB file aimed at phones, wearables, robots, smart-home devices, cars and microcontrollers; runs on CPU with no GPU or dependencies and streams live audio. Source ↗ | 5/5 | Native |
| Granite Speech 5.0 470M TurboCTC 470M · 7 listed languages | IBM describes the non-autoregressive CTC model as suited to laptops, smartphones and other edge devices; mlx-audio supports Apple Silicon. Source ↗ | 4/5 | Batch-first |
| Parakeet Redux 1.58-bit Parakeet 0.6B (178 MB) · 25 European languages | 1.58-bit Parakeet in 178 MB; the Photon runtime supports ARM NEON and x86 CPUs, with a vendor-reported 38× real time on an M2 MacBook Air CPU. Source ↗ | 4/5 | Batch-first |
Matcher ranking for a low-power device
The same deterministic matcher as the homepage, set to English, CPU only, edge use case and low memory priority. Scores are decision guidance, not benchmarks.
| # | Model | Fit score | Languages |
|---|---|---|---|
| 1 | Whisper tiny | 81/100 · Strong fit | 99+ listed languages |
| 2 | Whisper base | 81/100 · Strong fit | 99+ listed languages |
| 3 | Moonshine Tiny Streaming (English) | 81/100 · Strong fit | English |
| 4 | VibeVoice-ASR-BitNet | 81/100 · Strong fit | 7 listed languages |
| 5 | Whistle | 81/100 · Strong fit | 7 listed languages |
How to choose
- English voice commands or captions
- Start with Moonshine Tiny Streaming (English); move to Moonshine Medium Streaming (English) if accuracy matters more than latency. Both stream natively.
- Other languages on a Pi or phone
- Whisper tiny or Whisper base through whisper.cpp. Expect batch-style output: Whisper streams only through chunking.
- NVIDIA Jetson
- Nemotron 3.5 ASR Streaming 0.6B lists Jetson among supported hardware and streams natively in 28 transcription-ready languages.
- Laptop or mini PC without GPU
- VibeVoice-ASR-BitNet via VibeASR.cpp, or Whisper small with whisper.cpp or faster-whisper INT8. See the CPU-only guide.
Models without a documented edge path
Whisper medium, Whisper turbo, Parakeet TDT 0.6B v3, Orukeet, Qwen3-ASR 0.6B, Qwen3-ASR 1.7B, Omnilingual ASR CTC 300M, Cohere Transcribe 03-2026, VibeVoice-ASR 7B, VibeVoice-ASR Streaming 1.5B, Fun-ASR-MLT-Nano-2512, Granite Speech 5.0 2B, VibeVoice-ASR-Streaming-7B and Jais-ASR document GPU servers, desktop GPUs or general Python runtimes but no phone, single-board or microcontroller deployment in the reviewed sources. They may still be portable; treat that as your own engineering project, not a supported path.
Common questions
Can Whisper run on a Raspberry Pi?
whisper.cpp lists Raspberry Pi among its supported platforms, and its README lists about 273 MB of memory for Whisper tiny and 388 MB for Whisper base. Speed depends heavily on the board and settings, and whisper.cpp publishes no Raspberry Pi latency figure, so measure it before you commit.
Which model has a published Raspberry Pi latency?
Moonshine. Its README lists 237 ms for Moonshine Tiny Streaming (English) and 802 ms for Moonshine Medium Streaming (English) on a Raspberry Pi 5. Both are English-only. No other reviewed model publishes a comparable figure, so we do not rank them against each other on speed.
Is there an offline speech-to-text library for Android and iPhone?
Moonshine ships official Android and Swift (iOS/macOS) libraries, and whisper.cpp lists Android and iOS among its platforms. Both run fully on the device.
What about multilingual speech recognition on a small device?
The lightest multilingual options are Whisper tiny and Whisper base through whisper.cpp (99+ listed languages). VibeVoice-ASR-BitNet covers 7 listed languages on CPU, but its 1.58 GB of model files suit a laptop or mini PC more than a microcontroller-class board.
Edge paths checked against the linked official pages on November 3, 2026. Latency figures are vendor-reported and not comparable across vendors. See also memory requirements and the streaming guide.