Arabic text to speech in n8n: turn any workflow into a Gulf Arabic voice
No community node to install and no code step. One HTTP Request node, one credential, and every n8n workflow can speak Arabic — in a Gulf voice, not a newsreader's.
nutq teamPublished 3 min read

n8n is where a lot of Gulf businesses glue their tools together: a new order, a form submission, a daily report. Adding a voice to those flows used to mean English-only services or a broadcast-MSA voice nobody in Dubai talks like. This guide shows how to add Arabic text to speech in n8n with the built-in HTTP Request node — no community node, no code.
What will the workflow do?
A typical flow:
- Trigger — a webhook, a schedule, a new row in a sheet.
- Text — build the Arabic sentence, from a template or a language model.
- HTTP Request — send it to nutq, get a WAV back.
- Deliver — post the audio to Telegram, send it by email, or save it to storage.
Step 3 is the only new part.
How do you set up the credential?
In n8n, create a credential of type Header Auth:
| Field | Value |
|---|---|
| Name | Authorization |
| Value | Bearer nutq_… (your key from the dashboard) |
Store it as a credential and select it in the node. Never paste the key inline: exported workflows and screenshots leak inline values.
How do you configure the HTTP Request node?
| Setting | Value |
|---|---|
| Method | POST |
| URL | https://nutq.dev/v1/speech |
| Authentication | Generic credential → Header Auth → the credential above |
| Send Body | On, content type JSON |
| Response format | File |
The JSON body:
{
"text": "{{ $json.message }}",
"voice": "rashid"
}
voice is any Arabic voice from GET /v1/voices, or one you saved on your account. The node's output is a binary file — a WAV — that the next node can attach or upload. Usage comes back in the response headers (X-Nutq-Characters, X-Nutq-Cost-USD), so you can log what each run cost.
Can the workflow use several voices and pauses?
Yes, in the same request. Open a line with a voice name in square brackets and that voice speaks until the next one; [pause] adds a gap:
[Rashid] شحالك؟
[Mariam] بخير الحمد لله
أهلا بكم [pause:800] ونبدأ
A bare [pause] is 500 ms, [pause:2s] is two seconds, and silence is not billed. Each line is generated on its own and joined, so it sounds like two people reading lines rather than an unscripted conversation — right for announcements and short dialogues.
How do you get the pronunciation right?
Arabic is written without short vowels, so an ambiguous word is a guess. If a word comes out wrong, add diacritics to that word only — marking every word makes the delivery slow and formal. The details, with examples, are in Arabic text to speech with voice cloning.
How do you handle errors in the workflow?
Turn on the node's Continue on fail or add an error branch, and route on the status code. Errors come back as a sentence that names the problem, so you can pass it straight to a Slack or email alert:
| Status | Meaning | What the workflow should do |
|---|---|---|
| 400 | A field is missing or wrong | Fix the body; the message names the field |
| 401 | The key is missing or revoked | Check the credential |
| 402 | The balance is spent | Top up, then retry the same run |
| 413 | Text over 5,000 characters | Split it across two requests |
| 503 | Speech is temporarily unavailable | Retry after a short wait |
None of these is billed: a request that fails costs nothing, so a retry never charges twice.
Workflow ideas
| Trigger | Voice output |
|---|---|
| New order in the store | A Gulf Arabic confirmation voice note to the customer |
| Daily sales report | A 30-second spoken summary for the team channel |
| New blog post | An audio version of the article |
| Appointment tomorrow | A spoken reminder in the customer's language |
For the reverse direction — voice notes coming in — see transcribing Arabic voice notes.
What does it cost?
| Price | $0.05 per 1,000 characters |
| Per request | Up to 5,000 characters |
| Free credit | $5 at sign-up, no card |
| Failed requests | Not billed |
A 200-character reminder costs one cent. The full request reference, including other languages and saved voices, is in the API reference.
Questions people ask
Is there an n8n node for Arabic text to speech?
You do not need one. The built-in HTTP Request node calls nutq's /v1/speech endpoint directly and returns the audio as a file.
How do I store the API key safely in n8n?
Create a Header Auth credential with the name Authorization and the value Bearer followed by your key, and select it in the node. Do not paste the key into the node itself.
Can one request contain two speakers?
Yes. Start a line with a voice name in square brackets, such as [Rashid], and that voice speaks until the next one. [pause] inserts a gap. The result is a single file.
What does it cost to run in a workflow?
$0.05 per 1,000 characters, up to 5,000 characters per request. Failed requests are not billed, and silence from pauses is not billed.
Written by nutq team. nutq is an Arabic speech API built in the UAE: speech to text that keeps Gulf dialect, and Arabic text to speech with voice cloning.
اقرأ بالعربيةHear it on your own audio.
$5 of credit to start — about 33 hours of transcription. No card.
Keep reading
All articles
Text to speech3 min read
Arabic text to speech with voice cloning: a Gulf Arabic TTS guide
Six to eight seconds of someone speaking, the words they said, and the text you want read — that is all a Gulf Arabic voice clone needs. How to get a natural result, and the one trick that fixes most mispronunciations.

Speech to text3 min read
How to transcribe Arabic voice notes (WhatsApp, Telegram and phone recordings)
In the Gulf, a lot of business happens in voice notes — orders, complaints, instructions. Here is how to turn them into text you can search, forward and act on, in the dialect they were spoken in.

On-premise3 min read
On-premise Arabic speech recognition: keeping every recording inside your network
For a bank or a ministry, the first question about Arabic speech recognition is not accuracy. It is where the recordings go. Here is what running the models inside your own network involves.