Guides
Malay Text-to-Speech: The Complete Guide to AI Voices for Malaysian Projects

Hear it before you read on
Listen to real clips, then see the transcript, voice and request behind each one.
Short answer: Yes, you can generate Malay speech with AI today. Google lists Standard Malay as a supported language for its Gemini 3.8 text-to-speech models, and a minute of audio costs a fraction of a US cent to generate. What you cannot skip is listening. Language support tells you the model will read your text. It does not tell you the voice will sound natural to a Malaysian audience.
This guide is for people who need to put a Malay AI voice into something real: an advert, a phone menu, a training video, a podcast intro. It covers how the technology works, what to check, what it costs, and how to run your own test. Where we describe our own results, we say exactly what was heard and by whom.
What Malay text-to-speech actually does
Text-to-speech (TTS) turns written text into audio. Modern models such as Gemini 3.8 TTS go further than reading words aloud: you can steer pace, tone and delivery with a short plain-language instruction, and you can pick which voice reads.
Google’s documentation describes how the 3.8 models treat your input. They take text only and return audio only. The text is treated as a verbatim transcript, so anything you type is what gets spoken. Delivery instructions go in a separate speech_metadata annotation rather than in the sentence itself, otherwise the model may read them out loud.
Two practical consequences follow:
- Your script is the product. The model will not fix awkward phrasing. If a sentence is hard to say, it will be hard to hear.
- Language is detected from the text. You do not send a language code. Write Malay and the model reads Malay.
Malay, Indonesian and “Bahasa Malaysia”: why the difference matters
Standard Malay (Bahasa Melayu) and Indonesian are closely related. Reference sources describe them as largely mutually intelligible, with differences in spelling, grammar, pronunciation and vocabulary. Wikipedia’s comparison notes that native speakers notice the differences in both diction and accent, and that in Peninsular Malaysian varieties many word-final “a” sounds tend to be pronounced as a schwa under what is known as Johor-Riau pronunciation.
That matters for AI voices because many voices were built for other languages or markets. A voice can read Malay text correctly and still carry an accent your listeners place somewhere else.
| Check | What to listen for | Why it matters |
|---|---|---|
| Final “a” sounds | Words such as saya, dia, bila | Peninsular Malaysian speech often reduces the final “a” toward a schwa; a flatter, fully open “a” can read as non-local |
| Vocabulary in your script | Words your audience actually says | Malay and Indonesian differ in everyday vocabulary, so a script written in one can sound foreign in the other |
| Numbers and currency | “RM25”, “2026”, “50%” | Normalisation of numerals and symbols can vary; spell out important figures and listen |
| Names and brands | Place names, product names, English loanwords | Mixed Malay-English scripts are where voices most often stumble |
| Pace and breaths | Long sentences, lists, phone numbers | Pace that suits narration can feel rushed in a phone menu |
Sources: Wikipedia, Comparison of Indonesian and Standard Malay, accessed 16 October 2026. The “what to listen for” column is our own checklist, not a published standard.
We are not claiming any AI voice is an authentic Malaysian accent. Google lists Standard Malay, not individual state dialects, and we have no panel of local speakers to certify a voice. What we can offer is a method for hearing the difference yourself, and the results of our own listening, described below.
Where Malay AI voices come from
With Gemini 3.8 TTS there are four ways to get a voice, according to Google’s documentation.
| Source | What it is | Good for | Watch out for |
|---|---|---|---|
| Prebuilt studio voices | 30 curated voices listed by Google | Fast start, consistent names you can reuse | Same 30 voices everyone else can pick |
| Extended Voice Library | Hundreds of additional voices across languages, accents and characters | Wider range of age, tone and character | Many were built for other languages; Malay pronunciation needs checking |
| Voice design | A custom persona generated from a written description | A voice that matches a brief | Stored voices are tied to your project and expire after a year without use |
| Voice replication | A voice copied from reference and consent audio | Only with the speaker’s clear consent | Outside the scope of this guide and of voiceover.my |
Last verified 16 October 2026. Source: Google, Speech generation. Google states a limit of 200 custom voices per project and a one-year retention window that resets when a voice is used.
For two speakers in one request, Google supports up to two prebuilt voices. To combine custom voices in a conversation, you generate each turn separately and join the audio.
Two models, one decision
Google offers two 3.8 TTS models. Both support Standard Malay, and both accept the same request format, so you can switch with one parameter.
- Gemini 3.8 Flash-Lite TTS is described as the high-throughput, cost-efficient option for everyday single-speaker speech. Google lists it at over 100 languages.
- Gemini 3.8 Flash TTS is described as the higher-fidelity option, aimed at studio narration, complex dialogue, difficult pronunciation and regional dialects. Google lists it at over 130 languages.
Our approach on voiceover.my has been to use Flash-Lite for short, single-voice material such as adverts, phone menus and explainers, and Flash for conversation, characters and narration. That is a working choice for our tests, not a claim that one is always better for Malay. If your script is hard to pronounce, try both.
What we heard: our listening notes
This is the part we think is most useful, and the part we want to be most careful about.
We ran an audition in which we generated 52 audition clips of different voices reading Malay test sentences, plus a handful of technical test clips. One person, the site owner, listened to them. That person kept 27 voices as a working group (12 from the voice library and 15 studio voices) and discarded voices that sounded to them as though they were influenced by Indonesian, Brunei or Singapore speech. That is one listener’s judgement. It is not a measurement, and it has not been checked by a panel of Malaysian speakers.
| Item | Count (16 October 2026) | What it tells you |
|---|---|---|
| Malay demo clips in the gallery | 51 | Each pairs a transcript, a voice and the request that produced it |
| English demo clips in the gallery | 20 | English clips use American-English voices only |
| Malay audition entries | 30 (27 voices plus 3 technical clips) | The shortlist from our listening round |
| Situations covered | 7 | Advertising, narration, explainer, news, customer service, podcast, character |
Counts come from our own gallery data on the date shown. They describe our test content, not a general benchmark.
Every clip carries two separate labels. As requested is what we asked for or what the provider reports. Human-reviewed means a person listened and recorded what they heard. We keep them apart because a request such as “friendly” is an intention, not proof that the clip sounds friendly. For many clips the reviewer recorded only whether the clip fitted its use, not a detailed accent verdict.
Hear the difference yourself on our Malay demos:
Write a script that a voice can read well
Most disappointing AI audio is a script problem. A short checklist:
- Write for the ear. Read the script aloud once. If you run out of breath, split the sentence.
- Use the words your audience uses. Decide on anda or awak, and tidak or tak, to match your brand’s register, and keep it consistent.
- Spell out what matters. Say figures and currency in words if accuracy is critical, then listen to confirm.
- Mark pauses deliberately. Google documents inline tags such as
<short pause>for momentary pauses and sounds. Use them sparingly. - Keep proper nouns phonetic if needed. If a name is mispronounced, try a respelling in the script and note it in your own records.
- Know the pace. Our six reference scripts of roughly 50 to 58 words each ran between about 19 and 32 seconds, which is roughly 107 to 127 words per minute for five of them and about 165 for the podcast-style clip.
For example, our phone-menu sample says “tekan satu”, “tekan dua” and ends with “tekan sifar” for the repeat option. We wrote it that way on purpose, in plain spoken Malay, and then listened to it.
A recipe you can copy
This is the shape of a Gemini 3.8 TTS request for one voice with a short style line. It follows the pattern shown in Google’s documentation and is the same pattern used in our own demos. The text below is shortened from one of our sample advert scripts; the demo page shows the full request.
{
"model": "gemini-3.8-flash-lite-tts",
"input": [{
"type": "user_input",
"content": [{
"type": "text",
"text": "Hujung minggu ini, luangkan masa untuk diri sendiri. Singgah ke Kafe Taman, pilih minuman kegemaran dan nikmati suasana yang selesa.",
"annotations": [{ "type": "speech_metadata", "style": "upbeat, clear, friendly" }]
}]
}],
"response_format": { "type": "audio" },
"generation_config": { "speech_config": [{ "voice": "Leda" }] }
}
Run it once without the annotations entry to get a control, then add the style. Keep a note of the model, voice, text and style for each file so you can reproduce a result later. We do not set temperature in our recipes, and we do not show it as a setting because it is not sent. If you need to understand what a field does, Google’s documentation is the reference.
Our gallery shows the full request for every demo, so you can copy a working starting point instead of writing one from scratch:
What a minute of Malay speech costs to generate
Google publishes per-token prices for these models and states that audio is counted at 25 tokens per second. From that we can calculate audio output cost per minute. These figures cover audio output only. They exclude text input, regenerated takes, editing time and your own hosting.
| Model | Through 31 Dec 2026 | From 1 Jan 2027 |
|---|---|---|
| Gemini 3.8 Flash-Lite TTS | about $0.009 per minute | about $0.018 per minute |
| Gemini 3.8 Flash TTS | about $0.0135 per minute | about $0.027 per minute |
Last verified 16 October 2026. Calculated by us from Google’s published rates ($6.00 and $9.00 per million audio tokens until 31 December 2026, doubling from 1 January 2027, at 25 tokens per second). Prices change; always check the official pricing page before you budget.
Google also lists a free tier for these models. On the pricing page the free tier is marked as used to improve Google’s products, while the paid tier is not. If your script is confidential, read the current terms before choosing a tier. Batch and Flex modes are listed at roughly half the standard rate, but they are not the same as interactive generation.
Limits to be honest about
- Accent is not guaranteed. Standard Malay is supported. A Malaysian-sounding result depends on the voice and has to be heard.
- No state dialects. Google does not list regional Malay dialects as supported languages, and we have not verified any claim of Malaysian state accents. We do not offer dialect demos and do not label any clip as an authentic regional accent.
- One reviewer. Our “Human-reviewed” notes come from one listener, not a panel.
- Text in, audio out. The TTS models accept text only and return audio only. Voice replication is a separate Google feature that needs reference and consent audio, and it is outside our scope.
- No child voices. We do not offer or imitate a child’s voice. Youthful characters on our site use adult voices and are labelled that way.
- Not legal advice. Check licences, terms and disclosure rules for your market before you publish.
A short workflow to follow
- Write and read aloud a 40 to 60 word script that looks like your real one.
- Generate it with three or four different voices, without style.
- Pick the two you would trust on a customer call.
- Add one style line at a time and compare against the control.
- Listen on the device your audience will use, such as a phone speaker.
- Ask one or two Malaysian colleagues to listen without telling them which you prefer.
- Record the model, voice, text and decision for each file.
If you are weighing this against hiring a person, read our comparison of AI voice-over and human voice actors in Malaysia. If you already know the project type, our checklist for choosing an AI voice for ads, IVR and explainer videos goes deeper.
Sources
All sources below were accessed on 16 October 2026.
- Speech generation (TTS), Gemini API documentation, for supported languages, voice sources, request format and limitations.
- Gemini Developer API pricing, for TTS model rates and token accounting.
- Gemini 3.8 Flash-Lite TTS and Gemini 3.8 Flash TTS, for model positioning.
- Wikipedia, Comparison of Indonesian and Standard Malay, for general differences between the two varieties.
Frequently asked questions
Can AI read Bahasa Melayu out loud?
Yes. Google lists Standard Malay as a supported language for both Gemini 3.8 TTS models, and the models detect the input language automatically. Support does not guarantee that every voice sounds Malaysian, so listen before you commit.
Is Malay text-to-speech the same as Indonesian text-to-speech?
No. The two varieties are largely mutually intelligible, but native speakers hear differences in diction and accent. A voice that suits Indonesian may sound slightly off for a Malaysian audience, which is why we recommend listening to a short sample of your own script.
How much does Malay text-to-speech cost?
With Gemini 3.8 Flash-Lite TTS the published paid rate for audio output works out to about US$0.009 per minute of speech until 31 December 2026 and about US$0.018 per minute from 1 January 2027, before text input, retries and your own time. Rates change, so check Google's pricing page.
Can I choose a Malaysian accent or a regional dialect such as Kelantan or Sarawak?
Not reliably. Google lists Standard Malay, not individual state dialects, and publishes no list of Malay dialects. Google describes its Flash model as supporting regional accents, but we have not verified that for Malaysian states. We withdrew our own early dialect tests because we could not check them with local speakers, and we do not label any voice as an authentic regional accent.
Can I use the audio commercially?
Check the current terms for the service you generate with, and the licence of any voice you use. This guide is not legal advice. Demo clips on voiceover.my are examples for listening, not licensed assets.
Do I need a special voice for Malay, or can I use any of the 30 studio voices?
Google lists 30 prebuilt studio voices plus a wider voice library, and the language is detected from your text. Quality still differs by voice, so audition several with the same script and pick by ear.
Should I add a style instruction such as 'friendly' or 'calm'?
A short style line can change the delivery, but its effect is not guaranteed. Generate a no-style control first, then add one style at a time so you can hear what actually changed.
Ready to hear the difference?
Compare real examples, then check the pricing reference when you plan a budget.