
Google published a version of its pocket translator that runs offline on a Raspberry Pi 5. That is a headline moment for anyone who has tried to run useful language models on a $75 board. The Pi 5’s Cortex-A76 cluster and 8 GB memory ceiling finally clear the bar for a full offline translation stack: text, and now voice, without a cloud hop. We spent a week loading seven different offline translation apps onto a Pi 5 with active cooling to see which ones held up. These are the best apps for offline translation on Raspberry Pi 5 in 2026.
What to look for in a Pi 5 translation stack
A Pi 5 is a real Linux machine, but it is not a workstation. A good offline translation app has to respect four constraints:
- Fits in 8 GB RAM with headroom for the OS and one other service
- Ships an ARM64 build or is trivially cross-compiled
- Serves a REST or gRPC API so other devices on the LAN can call it
- Runs cool enough to survive a fanless case if you want one
Quick comparison table
| App | Best for | Languages | RAM at load | Free plan | Standout |
|---|---|---|---|---|---|
| LibreTranslate | Drop-in Google Translate API | 30+ | ~1.5 GB | Fully free | Compatible with Google’s API shape |
| Argos Translate | CLI + Python library | 45+ | ~800 MB | Fully free | Zero server dependencies |
| Bergamot | Mozilla in-browser translation | 20+ | ~250 MB | Fully free | Powers Firefox Translations |
| OpenNMT | Custom-trained pipelines | Any (user-trained) | Varies | Fully free | Framework for your own models |
| MADLAD-400 | Massive language coverage | 400+ | ~4 GB | Fully free | Widest language support |
| MarianMT | Fast NMT with small models | 100+ | ~600 MB | Fully free | Hugging Face-friendly |
| Whisper.cpp + Piper | Voice in, voice out | 90 (in), 40 (out) | ~1 GB | Fully free | Full offline voice stack |
1. LibreTranslate, best for a drop-in Google Translate replacement
LibreTranslate is the closest thing to a self-hosted Google Translate API. Same request shape, same response shape, same language codes. Point any app that already speaks Google’s translate API at your Pi 5’s IP and everything Just Works. The Argos-based models are compact enough for the Pi and the language pack downloader is one command.
Where it falls short: translation quality on complex idioms trails Google’s cloud models. It is closer than you expect for a stack this small, and clearly good enough for daily use.
Pricing:
- Free: the server and every language pack
Platforms: Linux (ARM64 and x86-64), Docker, and native Python
Download: LibreTranslate
Bottom line: the default first stop for a Pi 5 translation server.
2. Argos Translate, best for embedding in scripts
Argos Translate is the model engine underneath LibreTranslate, exposed as a CLI and a Python library. If you want translation as a subroutine in a bigger script (subtitles for a home video, translation for a scraper), Argos is the smaller footprint answer.
Where it falls short: there is no built-in web UI or API server; you get libraries and a CLI.
Pricing:
- Free: the library and every language pack
Platforms: Linux, macOS, Windows
Download: Argos Translate
Bottom line: the pick when you want the model, not the server.
3. Bergamot, best for browser-side translation
Bergamot is the WebAssembly translation engine that powers Firefox Translations. On a Pi 5 running a modern desktop with Firefox, Bergamot handles page translation with the model loading and running in the browser itself. Zero server, zero network calls.
Where it falls short: language coverage is narrower than the alternatives (about 20 pairs at good quality). Server-side calls from other apps are out of scope.
Pricing:
- Free
Platforms: Linux ARM64, wherever Firefox runs
Download: Firefox (Bergamot ships as the Translations feature)
Bottom line: the pick for private page translation in the browser, on the Pi’s desktop or on any client that connects to it.
4. OpenNMT, best for custom-trained pipelines
OpenNMT is the framework layer. If your problem is a specific technical domain (legal, medical, gaming subtitle localization) and the general-purpose models are not accurate enough, OpenNMT lets you train or fine-tune a model on your corpus. The Pi 5 can serve inference on a trained model, though training itself needs a real GPU.
Where it falls short: the setup is a project. This is not a “run one command” app; it is a research-grade toolkit.
Pricing:
- Free
Platforms: Linux (ARM64 for inference; x86-64 with GPU for training)
Download: OpenNMT
Bottom line: the pick for a specialist domain where general translation is not good enough.
5. MADLAD-400, best for the widest language coverage
MADLAD-400 from Google’s research team is the model to reach for when the language pair is exotic. It covers 400+ languages, including many low-resource pairs that LibreTranslate and Argos miss. The tradeoff is size: even the compact 3B variant needs almost all of the Pi 5’s RAM.
Where it falls short: memory pressure. Running MADLAD-400 leaves little headroom for anything else on the same Pi.
Pricing:
- Free (model weights on Hugging Face)
Platforms: Linux ARM64 with careful memory management
Download: MADLAD-400 on Hugging Face
Bottom line: the pick for a specialist Pi dedicated to a rare-language use case.
6. MarianMT, best for a Hugging Face-native pipeline
MarianMT is a family of small, fast translation models packaged for Hugging Face Transformers. Each language pair loads as a separate model, which sounds heavy but ends up leaner in practice because you only load what you need. Ideal when you want translation as part of a larger AI pipeline that also runs sentiment or NER on the same text.
Where it falls short: you manage one model per language pair, which adds up if you need many.
Pricing:
- Free
Platforms: Linux ARM64 with Python and PyTorch or ONNX Runtime
Download: MarianMT on Hugging Face
Bottom line: the pick when translation is one step of an NLP pipeline.
7. Whisper.cpp + Piper, best for a full offline voice-to-voice stack
The combination of Whisper.cpp for speech-to-text and Piper for text-to-speech turns a Pi 5 into an offline voice translator. Pair either with LibreTranslate in the middle and you have Google’s pocket translator use case, running entirely on the LAN. Latency for a short phrase, mic to speaker, is around 2 seconds on our Pi 5 with a Distil-Whisper small model.
Where it falls short: the pipeline is three services glued together. Debugging a bad translation means checking three logs.
Pricing:
- Free
Platforms: Linux ARM64; Whisper.cpp and Piper both ship native binaries
Download: Whisper.cpp and Piper
Bottom line: the pick for the full offline voice-translator project, and the most satisfying end result.
How to pick the right one
If you want a Google-Translate-API-compatible server on your Pi 5, install LibreTranslate first. Drop to Argos Translate if you want the library without the server. Reach for Bergamot for private page translation in Firefox. Choose OpenNMT when you have a specialist domain and time to train. Pick MADLAD-400 when the language is rare. Pick MarianMT when translation is one part of a bigger NLP stack. Build the Whisper.cpp + Piper + LibreTranslate stack when the end goal is an offline pocket translator that speaks and listens.
FAQ
Can a Raspberry Pi 5 really run offline translation well? Yes for text, and yes for voice with a lightweight model. The Pi 5’s Cortex-A76 cluster is 2 to 3x faster than the Pi 4, and 8 GB RAM finally gives you room for a translation model plus the OS.
Which offline translation app is closest to Google Translate? LibreTranslate, both in API shape and in quality on common language pairs. The gap widens on idioms and low-resource languages.
Do I need a GPU for offline translation on the Pi? No for inference. All the picks above run on the Pi 5’s CPU. Training your own model is a different story and needs an x86 machine with a real GPU.
How do I add more languages? LibreTranslate and Argos both have a language-pack downloader. MADLAD-400 covers 400+ languages in a single model. MarianMT requires one model per pair.
Can this replace Google Translate in an app I already use? Yes for any app that lets you point the translate endpoint elsewhere. LibreTranslate’s Google-compatible API is the smoothest swap.