Translate Telegram Audio Messages Automatically with n8n & OpenAI

Struggling with understanding Telegram voice messages in multiple languages? This n8n workflow uses OpenAI to transcribe, auto-detect, and translate audio messages from 55 languages, replying with text and speech, saving you hours of manual effort.
telegramTrigger
openAi
chainLlm
+4
Workflow Identifier: 1119
NODES in Use: Telegram Trigger, Sticky Note, Telegram, OpenAI, Set, Chain LLM, Telegram1

Press CTRL+F5 if the workflow didn't load.

Learn how to Build this Workflow with AI:

Visit through Desktop for Best experience

1. Opening Problem Statement

Meet Sarah, a globetrotting language enthusiast who frequently communicates with friends, colleagues, and language partners via Telegram voice messages. Sarah often receives audio messages in various languages she isn’t fluent in, such as Japanese, German, or French. Each time, she has to manually transcribe these messages using different apps and then translate them — a process that wastes her valuable time and sometimes causes misinterpretations due to errors.

On average, Sarah spends close to 20 minutes per message just to understand what was said, leading to frustration and delayed responses. She also misses opportunities for instant conversations because she can’t quickly switch between languages. For Sarah and many like her, an automated, accurate, and multi-language translation solution integrated directly into Telegram is a game-changer.

2. What This Automation Does

This powerful n8n workflow turns Telegram into a universal translator for voice messages. When someone sends a voice message in Telegram, this workflow:

  • Automatically triggers on any new Telegram message with voice input.
  • Downloads the audio file from Telegram using the voice file identifier.
  • Uses OpenAI’s advanced speech-to-text model to transcribe the voice message into text.
  • Auto-detects the language of the transcribed text and seamlessly translates it between the native and target languages set in the workflow configuration (supports 55 languages).
  • Sends back the translated text message directly in the Telegram chat.
  • Converts the translated text back to speech and replies with an audio file, so users hear the translated message too.

This automation saves Sarah at least 15 minutes per voice message, eliminates accidental misinterpretations, and enables fluid multilingual conversations without leaving her Telegram app.

3. Prerequisites ⚙️

  • n8n account — to run workflows and integrate nodes
  • Telegram account with bot API access 📧 — to capture voice messages and send replies
  • OpenAI API account 🔑 — for speech-to-text transcription and translation using GPT-powered models
  • Optional: self-hosting n8n for full control and privacy. (Check out Hostinger for affordable hosting options.)

4. Step-by-Step Guide

Step 1: Set up your Telegram trigger node

Navigate to n8n dashboard → Click + Add Node → Search for Telegram Trigger.

Configure it to listen to all types of updates by selecting “*” in the updates field. Connect your Telegram bot API credentials (you must create a bot via BotFather).

Outcome: This node listens for any new Telegram message and starts the workflow when you receive a voice message.

Common mistake: Forgetting to connect the correct Telegram bot credentials or not enabling the webhook could cause this node to never trigger.

Step 2: Configure Settings node for languages

Add a Set node labeled Settings. Define two string variables: language_native and language_translate.

For example, set language_native to “english” and language_translate to “french” (you can choose any supported language names).

Visual: You will see a small table with these key-value pairs inside the node.

Outcome: This node sets up your translation direction dynamically for later nodes.

Common mistake: Using language names not supported by OpenAI’s speech models or misspelling the language key.

Step 3: Extract voice file from Telegram

Add a Telegram node named Telegram1. Configure it to resources: file and set the fileId field dynamically from the trigger node’s incoming voice message file ID: {{$json.message.voice.file_id}}.

Outcome: This node downloads the voice message audio file from Telegram, which will be sent for transcription.

Common mistake: Not pulling the correct file_id value if the message type is not a voice message.

Step 4: Transcribe audio with OpenAI

Insert an OpenAI node labeled OpenAI2 configured to operation: transcribe under the audio resource.

Map the Telegram audio binary data to its input so OpenAI can process the speech-to-text task.

Outcome: You’ll receive a plain text transcription of the voice message.

Common mistake: Forgetting to set the binary property or mismatching input format causes transcription failure.

Step 5: Handle empty or text-only messages gracefully

Add a Set node named Input Error Handling to copy the text message safely or default empty strings if no text is present, preparing data for the next steps.

Outcome: This ensures that the workflow doesn’t break if the incoming message lacks expected fields.

Step 6: Auto-detect language and translate

Use the Chain LLM node named Auto-detect and translate. Configure it with this prompt:

=Detect the language of the text that follows.  
- If it is  {{ $('Settings').item.json.language_native }} translate to {{ $('Settings').item.json.language_translate }}.  
- If it is in  {{ $('Settings').item.json.language_translate }} translate to {{ $('Settings').item.json.language_native }} .  
- In the output just provide the translation and do not explain it.  Just provide the translation without anything else.

Text:
 {{ $json.text }}

Outcome: The text is intelligently translated both ways depending on origin language.

Common mistake: Incorrect or missing dynamic references to Settings variables will result in translation errors.

Step 7: Send translated text reply in Telegram

Add a Telegram node named Text reply. Set the text field to the translated text {{$json.text}} and the chatId to the chat ID from the trigger node.

Set parse mode to Markdown if needed for formatting.

Outcome: Users receive the translated text directly in their chat.

Step 8: Convert and send speech reply with translation

Configure an OpenAI node OpenAI, which takes the translated text and synthesizes audio.

Connect this to a second Telegram node named Audio reply configured to sendAudio with binary data enabled.

Outcome: Translated speech is delivered as an audio file in Telegram, completing the speech-to-speech translation loop.

5. Customizations ✏️

  • Change target languages: Edit the Settings node variables language_native and language_translate to any supported language name from OpenAI’s speech-to-text languages list.
  • Expand supported formats: Modify the Telegram Trigger node to listen selectively to voice, audio, or video messages.
  • Customize reply formatting: Change the Markdown format or add emojis in Text reply node for richer user engagement.
  • Add logging: Insert a Code or Webhook node to save transcripts and translations to an external database or cloud storage for records.
  • Multi-way translation: Extend the prompt in Auto-detect and translate node to handle more than two languages by continuing the logic with additional language mappings.

6. Troubleshooting 🔧

Problem: “Telegram Trigger node does not receive voice messages.”
Cause: Bot webhook not set or incorrect credentials.
Solution: Re-check Telegram API credentials, ensure webhook is correctly registered in Telegram BotFather, and restart the workflow.

Problem: “OpenAI transcription returns empty or error.”
Cause: Audio binary data not correctly passed or unsupported audio format.
Solution: Verify the Telegram file ID is correct, ensure audio data is being transferred properly to OpenAI node. Confirm supported audio formats match OpenAI requirements.

Problem: “Translation outputs nonsense or is repetitive.”
Cause: Incorrect prompt setup or missing dynamic language variables.
Solution: Review the Chain LLM node prompt carefully and test variables from Settings node to confirm they resolve correctly.

7. Pre-Production Checklist ✅

  • Confirm Telegram Trigger listens on all update types and is active.
  • Test Telegram bot sends and receives sample voice messages properly.
  • Validate OpenAI transcription node with real audio samples.
  • Verify Chain LLM prompt outputs expected translations between chosen languages.
  • Ensure Telegram text and audio reply nodes correctly post translated messages.
  • Backup your n8n workflow export before deploying live.

8. Deployment Guide

Once satisfied with testing, activate the workflow in the n8n UI by toggling the active switch.

Monitor execution logs in n8n to track any failures or delays.

Consider setting up alerts or notifications on errors if scaling volume.

9. FAQs

Q: Can I use other translation services instead of OpenAI?
A: While this workflow uses OpenAI for unified transcription and translation, you can replace the nodes with alternatives like Google Translate or Microsoft Azure Translator, but that requires more custom setup.

Q: Does sending audio replies consume extra OpenAI credits?
A: Yes, generating speech audio from text uses OpenAI’s text-to-speech resources which may incur additional usage cost.

Q: Is my Telegram voice data secure?
A: All data is processed via your configured Telegram bot and OpenAI accounts. For enhanced security, use self-hosted n8n and adhere to best data privacy practices.

Q: Can this handle multiple messages simultaneously?
A: This workflow can handle concurrent messages but performance depends on your n8n server capacity and API rate limits.

10. Conclusion

You’ve just built an advanced multilingual audio translator integrated directly into Telegram leveraging n8n and OpenAI’s AI models.

This automation saves significant time and effort by transcribing, translating, and delivering voice messages instantly. For Sarah, it means faster communication and better understanding in her multilingual chats.

Next, consider expanding this setup with:

  • Adding text message translations for full chat support.
  • Integrating with calendar or task apps for language-learning reminders.
  • Creating a bot dashboard to track usage and analytics.

Keep experimenting and enjoy seamless conversations across languages!

Promoted by BULDRR AI

Related Workflows

Automate Viral UGC Video Creation Using n8n + Degaus (Beginner-Friendly Guide)

Learn how to automate viral UGC video creation using n8n, AI prompts, and Degaus. This beginner-friendly guide shows how to import, configure, and run the workflow without technical complexity.
Form Trigger
Google Sheets
Gmail
+37
Free

AI SEO Blog Writer Automation in n8n (Beginner Guide)

A complete beginner guide to building an AI-powered SEO blog writer automation using n8n.
AI Agent
Google Sheets
httpRequest
+5
Free

Automate CrowdStrike Alerts with VirusTotal, Jira & Slack

This workflow automates processing of CrowdStrike detections by enriching threat data via VirusTotal, creating Jira tickets for incident tracking, and notifying teams on Slack for quick response. Save hours daily by transforming complex threat data into actionable alerts effortlessly.
scheduleTrigger
httpRequest
jira
+5
Free

Automate Telegram Invoices to Notion with AI Summaries & Reports

Save hours on financial tracking by automating invoice extraction from Telegram photos to Notion using Google Gemini AI. This workflow extracts data, records transactions, and generates detailed spending reports with charts sent on schedule via Telegram.
lmChatGoogleGemini
telegramTrigger
notion
+9
Free

Automate Email Replies with n8n and AI-Powered Summarization

Save hours managing your inbox with this n8n workflow that uses IMAP email triggers, AI summarization, and vector search to draft concise replies requiring minimal review. Automate business email processing efficiently with AI guidance and Gmail integration.
emailReadImap
vectorStoreQdrant
emailSend
+12
Free

Automate Email Campaigns Using n8n with Gmail & Google Sheets

This n8n workflow automates personalized email outreach campaigns by integrating Gmail and Google Sheets, saving hours of manual follow-up work and reducing errors in email sequences. It ensures timely follow-ups based on previous email interactions, optimizing communication efficiency.
googleSheets
gmail
code
+5
Free