# LibreTranslate

Machine translation you host. LibreTranslate is AGPL-3.0 — DeepL without the character meter.

**Replaces:** DeepL

**Tier:** Easy

## Problem

DeepL meters characters (and then a Pro seat) for translation. You wanted an HTTP API that turns a string into another language on a box you run. LibreTranslate is AGPL-3.0 with Argos Translate models. This is not DeepL's writing-style, glossary, or CAT-tool suite — it is translation you can self-host.

## Stack

- [LibreTranslate](https://libretranslate.com) — AGPL-3.0 self-hosted machine translation API

## Estimated SaaS cost saved

| You stop paying | Typical / year | Self-host instead |
|---|---:|---|
| DeepL Pro (small team) | $1,200 | LibreTranslate + models on a volume |

**About $1,200 / year** on a small team, before you count lock-in.

## Deploy on Railway

Placeholder: LibreTranslate plus a volume for language models. CPU is enough for light use; GPU is optional. No one-click template in this repo yet — Start on Railway. Grammar checking stays on /stacks/languagetool-writing.

[Start on Railway](https://c17.io/go/railway/libretranslate?from=%2Fstacks%2Flibretranslate.md)

[LanguageTool if this is grammar, not translation](https://c17.io/stacks/languagetool-writing)

## AGENT_PROMPT

```
Replace DeepL with LibreTranslate (https://libretranslate.com).

- Run the official image. Persist models on a volume. Bind HTTP to 0.0.0.0:$PORT. Disable public greedy use (API key).
- Translate one document you actually ship. Do not claim DeepL quality, glossaries, or CAT-tool parity.
- Grammar stays on /stacks/languagetool-writing. Write AGENT_PROMPT.md.
```

## FAQ

### Will this match DeepL quality?

No promise. LibreTranslate uses Argos Translate models. It is a self-hosted API. Eval the languages you actually need before you cut over.

### Why not LanguageTool?

LanguageTool checks grammar. DeepL translates. Different job. /replace/grammarly is LanguageTool.

Source: https://c17.io/stacks/libretranslate
