Question · Speech recognition
Can you run speech recognition on a Raspberry Pi?
Yes. A Raspberry Pi can run speech recognition offline, but the result depends on the task. Home Assistant reports that Whisper takes about 8 seconds per voice command on a Raspberry Pi 4, while its closed command model transcribes in under a second. Open dictation on a Pi is slow, and an ESP32 chip handles only a fixed list of spoken commands.
Updated October 17, 20264 min read8 cited facts, each traced to its source
Yes. A Raspberry Pi can run speech recognition without a cloud service, so the audio never has to leave the board. What it cannot do well is open dictation with a large model in real time. The Pi is a good fit for a short list of voice commands, such as turning on a light or setting a timer, and a slow but workable fit for an open model that you run on a recording. A smaller chip called the ESP32 is fitted to commands only.
The guide to on-device and cloud speech recognition explains the trade-offs behind these limits. This page covers the hardware case.
Whisper runs on a Raspberry Pi 4, but a voice command takes about 8 seconds
Home Assistant, the open-source home automation project, measured its local voice pipeline on small hardware. Its documentation says Whisper takes around 8 seconds to process a voice command on a Raspberry Pi 4, and under a second on an Intel NUC 1. An earlier Home Assistant post, from February 2025, gave at least 5 seconds for the same Pi 4 2, so treat either figure as one project's measurement. The 8-second figure is the one to plan around if you want to talk to a Pi and wait for a reply.
Eight seconds is acceptable for a recording you transcribe afterwards. It is slow for a conversation, and it leaves no room for a longer sentence. Whisper's large model is also heavier than the small ones. The whisper.cpp project says its large model needs about 3.9 GB of memory and 2.9 GiB on disk 3, which is a lot for a small single-board computer. Quantized models use less memory and disk space 4, so the smaller quantized builds are the ones to try first on a Pi.
We did not find a measured Raspberry Pi 5 figure in a source we could read, so the Pi 4 number is the one to use here. Test your own model and clip on your own board before you rely on any timing.
A closed command model answers in under a second on the same Pi
Home Assistant's Speech-to-Phrase is a different kind of model. It is closed-ended, so it transcribes only the phrases it knows. Home Assistant says it transcribes in under one second, even on a Raspberry Pi 4 5. A fixed phrase list is the fastest way to get a responsive voice control on a Pi.
The price is flexibility. A closed model cannot take a free-form sentence it was not built for, so it suits a light switch or a timer better than an email. Choose it when the set of things you say is small and known in advance.
Vosk is an offline option for light devices
The Vosk project says it works offline, even on lightweight devices such as the Raspberry Pi, Android and iOS 6. Vosk is a separate engine from Whisper, with its own models and its own accuracy. Use it when you want an offline engine that is not Whisper. The vendor's list does not give timings, so measure it on your board.
The ESP32 handles a list of commands, not dictation
The ESP32 is a microcontroller, much smaller than a Pi. Espressif's MultiNet model recognizes up to 300 Chinese or English speech commands, and developers can add commands without training the model again 7. The commands are a fixed list of short phrases, so MultiNet does not transcribe open dictation.
Espressif's esp-sr README lists the ESP32-S3, ESP32-P4 and ESP32-S31 as the supported targets for MultiNet, and does not list the original ESP32 8. Check the target list for your exact chip before you buy hardware for a project. If you need open speech on a microcontroller, a Pi or a phone is the realistic choice.
Choose the device by the job
| Job | Good fit | What the evidence shows |
|---|---|---|
| Light or timer control with a short phrase list | Pi with a closed model, or an ESP32-S3 8 | Closed model under 1 second on a Pi 4 5; 300 commands on MultiNet 7 |
| Open voice commands, if a wait of about 8 seconds is acceptable | Pi 4 or better with a small quantized model | About 8 seconds per command with Whisper on a Pi 4 1 |
| Transcribing recordings | Pi, if you can wait | Slow, but workable, with a small model |
| Long dictation or the largest models | A laptop, a desktop or a phone with enough memory | Large Whisper needs about 3.9 GB 3 |
What to do
- Write down the phrases you need. If they fit a short list, use a closed command model.
- Start with a small model if you need open speech on a Pi, and use a quantized build to save memory.
- Measure the time from the end of your sentence to the reply, on your own board, with your own microphone.
- Keep the audio local if privacy matters. A Pi running its own model sends nothing to a server, so you can check the setup yourself.
- Move up to a laptop or a phone if the Pi is too slow for the job.
For more on the open models, see our guides to running Whisper locally and open-source speech recognition. If you want to compare the accuracy of local and cloud engines first, read is on-device speech recognition as accurate as cloud. Our guide to word error rate explains how to score your own tests.
Evidence
Every number on this page, with where it comes from. Open a fact to see the exact words in its source.
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
Go deeper
Related questions
- Can an ESP32 or microcontroller do speech recognition?
- Can you disable or uninstall Speech Recognition and Synthesis from Google?
- Is on-device speech recognition as accurate as cloud?
- What is Speech Recognition and Synthesis from Google?
- Can large language models do speech recognition?
- Can Whisper AI do text to speech?
- Can Whisper identify different speakers?
- Can Whisper run without a GPU?