# Translation Linnet can translate session transcripts via the DeepL API. Translation is available on all tiers; the difference is where the API key comes from. ## How to translate a session 1. Open a session from [Session History](session-history.md) or after ending a live session 2. Click **Translate** 3. Select the target language 4. Linnet sends the transcript text (not audio) to DeepL and returns a translated version The translated transcript is saved alongside the original. Tone labels are preserved and displayed against the translated text. ## Tier differences | Tier | DeepL key source | |------|-----------------| | Free (BYOK) | Your own DeepL API key (set `DEEPL_API_KEY` in `.env`) | | Paid | CF-managed key, no setup needed | BYOK = bring your own key. DeepL's free tier covers 500,000 characters per month — enough for most personal use. ## Getting a free DeepL API key 1. Go to [deepl.com](https://www.deepl.com/en/pro/change-plan) and sign up for a free account 2. Navigate to **Account** then **DeepL API** and copy your Authentication Key 3. Open your Linnet `.env` file and add: ```dotenv DEEPL_API_KEY=your-authentication-key-here ``` 4. Restart Linnet ## Supported languages Translation supports all languages in DeepL's catalog. The target language list in Linnet's UI reflects DeepL's current supported outputs. See [DeepL's supported languages](https://support.deepl.com/hc/en-us/articles/360019925219) for the full list. ## Privacy note Translation sends transcript text to DeepL's servers. Audio is never transmitted. If your session contains sensitive content, review DeepL's [data privacy policy](https://www.deepl.com/en/privacy/) before using translation. For fully private operation, skip translation or run a local translation model — self-hosted translation support is on the roadmap.