Text to Speech

Read any text aloud free in a male or female voice — eight tones, 48 languages, adjustable speed and pitch, and playback from any point. No sign-up, no length limit.

Text to Speech
0 characters Try:

Speaking…
🔒 Runs entirely in your browser using your device's built-in voices — no upload, no sign-up, unlimited use.

User Guide

1

Paste as much as you like

There is no character limit — a paragraph, a full article, an entire chapter. The counter under the box tracks the length, and the reader breaks long text into short pieces behind the scenes so nothing stalls partway through.

Two small things are handled for you. The demo line already in the box clears itself the moment you tap into it, so there is nothing to select and delete first. And after you paste, the cursor is sent back to the start of your text rather than being left at the end where the browser drops it — which is what makes Play work immediately instead of appearing to do nothing.

2

Choose the language

The menu opens on English (United States) and offers the same 48 languages as our Speech to Text tool — हिन्दी, বাংলা (both India and Bangladesh), தமிழ், తెలుగు, मराठी, ગુજરાતી, ಕನ್ನಡ, മലയാളം, ਪੰਜਾਬੀ, اردو and more, offered as 64 regional choices so that Bangla covers both India and Bangladesh, Urdu covers India and Pakistan, and English spans eight accents from American to Nigerian. Choosing one floats the matching voices to the top of the dropdown beneath it, which turns a long unsorted list into something you can actually navigate.

If your device has no voice for that language we say so rather than pretending — but press Play anyway. The reader still asks your device to speak in that language, and many phones manage it even when the list looked empty.

3

Then pick a voice — male or female

Three buttons sit above the dropdown: All voices, ♂ Male and ♀ Female. Every voice in the list carries its own ♂ or ♀ mark, and the count beside the Voice label tells you how many you are choosing between at any moment.

If your device has no male or no female voice for the language you picked, the filter does not leave you with an empty box — it lists what is there and explains the gap, with the exact settings path for adding more on Android, Windows, iPhone and Mac.

Choosing a language orders the list rather than shrinking it. Pick English (United States) and the American voices come first, followed by the British, Indian and Australian ones your device also has. That is deliberate: some of the best English voices on a typical machine are not the ones matching your exact locale, and hiding them served nobody.

A beside a name marks a network voice: usually noticeably better quality, but it needs a connection and your text is sent away to be spoken. Voices without the cloud mark run entirely on your device.

The language filter is a convenience, not a rule. Pick a voice by hand and it is used, whatever the Language menu says — so you can read romanised Hindi or Hinglish in an English voice, or hand English sentences to an Indian voice. What decides the result is the script your text is written in, not the label on the dropdown.

4

Choose a tone

Eight one-tap tones sit above the sliders, and each is a tested pairing of speed and pitch rather than a vague mood label:

  • Natural — the voice as its makers tuned it. Start here.
  • Narrator — slower and lower, for stories and long-form articles.
  • Newsreader — brisk and level, for bulletins and briefings.
  • Calm — unhurried and slightly lifted; good for meditation scripts and bedtime reading.
  • Cheerful — quicker and higher, for adverts, social captions and greetings.
  • Deep — the lowest pitch on offer, for trailers and dramatic lines.
  • Bright — high and light, which is what children’s material usually wants.
  • Slow & clear — 0.6× at level pitch, for dictation, pronunciation practice and anyone hard of hearing.

Tap one during playback and it re-reads from where the voice had reached, so you hear the change straight away instead of waiting for the next sentence.

5

Or set speed, pitch and volume yourself

Speed runs from 0.5× to 2×. For proofreading, 0.8× is where mistakes stand out; for getting through an article, most people settle around 1.3×. Pitch now runs from 0.1 to 2 — a wider floor than before, which is what makes a genuinely deep voice possible. Volume is independent of your device volume, so you can trim it without touching the system slider.

Move either slider and the tone label switches to Custom. Land back on a preset’s exact values and it re-claims the name, so the label never tells you something the sliders contradict.

6

Choose where to start — two ways

Use the Start from slider directly above the buttons: as you drag, the label previews the words at that point and the cursor jumps there in the text, so you can see exactly where reading will begin.

Or simply click into the text at the point you want and press Play. Both do the same thing, because the cursor is the single source of truth — the slider just moves it for you. Playback nudges back to the start of the current word, so it never begins mid-syllable.

7

Play, and follow along

The progress bar fills as it reads and the cursor tracks the voice word by word, so glancing at the box tells you where you are. Drag the slider while it is speaking and it jumps to the new point immediately — useful for re-hearing a sentence you missed.

8

Pause, Stop, Reset

Pause holds the position so Resume carries on from the same word. Stop ends playback but leaves your text and settings alone. Reset returns everything to how it started — text cleared, position back to the beginning, language back to English (United States), the voice filter back to All voices, the tone back to Natural, and speed, pitch and volume back to default. Reach for Reset when a fiddled-with rate or a half-read article is in the way of the next job.

9

Headphones or loudspeaker

Audio follows whatever output your device is currently using, so switching between headphones and the speaker is done in your operating system’s sound settings rather than here — the web has no way to route speech to a chosen output. Change it before you press Play and the reader will follow.

About the Text to Speech Reader

Reading and listening use different parts of your attention, and that difference is the whole point of this tool. Errors you have read past four times announce themselves the moment somebody reads the sentence back to you, and a long article you have no energy left to read is perfectly manageable while you wash up.

Where the voices come from

This uses the SpeechSynthesis half of the Web Speech API, which hands your text to the speech engine already built into your device. The Language menu lets you ask for any of 48 languages and the voice list reorders to put that language first — but there is an honest limit worth stating: we cannot install voices. The browser exposes only what your operating system carries, which is why the same page offers a different voice list on your laptop and your phone, and why no web page can honestly promise you a particular voice.

What a page can do is stop wasting the voices you already have. Until recently this tool showed only voices matching your exact locale, so choosing English (United States) quietly hid every British, Indian and Australian voice on the machine — frequently most of the English voices installed. Exact matches now simply sort first. On a typical Windows laptop that took the English list from ten entries to twenty-one without installing anything.

When you choose a language the device has no voice for, the reader does not quietly substitute an English voice and read your Bangla in an English accent. It asks the device to speak in that language and lets the platform choose — which succeeds more often than the voice list suggests, because Android in particular supports languages it does not always enumerate. That applies only when you leave the voice alone: choose one by hand and your choice is honoured over the language filter, which is what makes reading romanised Hindi in an English voice possible. If nothing comes out, install the voice at system level: Android under text-to-speech output, Windows under Speech in Settings, iPhone under Accessibility then Spoken Content. It appears here immediately afterwards.

How the male and female labels are worked out

This one deserves explaining, because the obvious assumption is wrong. The Web Speech API does not tell a page whether a voice is male or female. A SpeechSynthesisVoice object carries four things — name, language, whether it runs locally, and a URI. A gender attribute existed in an early draft of the specification and was removed. Nothing replaced it.

So the labels come from the voice’s name, which in practice is enough, because every major platform names its voices after a person or states the gender outright. Three passes run in order: an explicit word in the name or URI, which catches Google’s UK English Male and Android’s en-us-x-tpf#female_2-local; then a lookup of the voices Microsoft, Apple and Google actually ship, Indian-language sets included — Heera, Ravi, Kalpana, Hemant, Bashkar, Neerja, Lekha, Veena; and finally Google’s unlabelled voices, which are female throughout the range.

Anything still unrecognised is left unlabelled rather than guessed. An unrecognised voice keeps its place under “All voices” with no ♂ or ♀ beside it, which is the honest outcome: a wrong label is worse than no label. Tested against a twenty-seven voice list spanning Windows, macOS, Android and Chrome, twenty-five were identified and the two that were not are engine builds with no personal name at all.

What a “tone” actually is here

Worth being straight about, because plenty of sites are not. Browser speech synthesis exposes exactly three dials — rate, pitch and volume — and nothing else. There is no emotion parameter, no style token, no way to ask a voice to sound sad or excited. Sites promising “AI emotional voices” for free in a browser are either using a paid cloud API behind the scenes or overstating what they do.

So a tone here is a pairing of speed and pitch, chosen by listening to each combination rather than guessed at. That sounds modest, and it changes more than you would expect: the gap between a newsreader and a bedtime story really is mostly tempo and register. Narrator drops both; Bright lifts the pitch well above default; Deep takes it to the floor of what the engine accepts. Each preset simply moves the two sliders, which is why you can always see exactly what a tone did and nudge it from there.

One consequence worth knowing: rate and pitch are fixed for the whole of an utterance once it starts speaking. Changing a tone mid-sentence cannot alter the words already in flight, so choosing one during playback re-reads from the point the voice had reached. That is why the change is audible immediately instead of arriving a sentence late.

Local voices and cloud voices

The marker matters more than it looks. Voices without it are synthesised on your device: they work with no connection and nothing about your text leaves the machine. Voices with it are generated by a remote service, which usually sounds markedly more natural but means the text is sent away to be spoken. We flag the difference rather than hiding it, so you can pick deliberately when the text is sensitive.

Why the reader breaks your text into pieces

Handed a very long string, browser speech engines routinely stop partway through with no error — Chrome in particular tends to fall silent after roughly fifteen seconds. So the text is split at sentence boundaries into short passages and queued in order. You hear one continuous reading; the engine only ever sees a manageable piece. That is also what makes unlimited length possible, and why the position tracking works: each piece knows where it sits in the whole text.

How starting anywhere works

As each word is spoken the engine reports how far into the current passage it has reached. Adding that to the passage’s own offset gives an exact position in your full text, which drives the progress bar and the cursor together. Run it in reverse — take a cursor position, find the passage containing it — and you can begin reading from any point. It is the same mechanism in both directions, which is why the slider and the cursor never disagree.

Who gets the most out of it

Writers proofreading their own work, where hearing a clumsy sentence is far more reliable than re-reading it. Students working through course material while commuting. People with dyslexia or low vision, for whom listening is simply easier than decoding. Anyone learning a language, using a native voice to check pronunciation. And anyone who spends the day at a screen and would rather rest their eyes for the next twenty minutes. For choosing a better voice, the listening speed that keeps comprehension intact, and the honest workarounds when you really do need an audio file, read our text to speech guide.

Frequently Asked Questions

Is there a word or character limit?

No. Paste an entire article or chapter if you want. Long text is split at sentence boundaries and read in order, which is precisely what stops browser speech engines going silent partway through a long passage.

Can I start reading from the middle instead of the beginning?

Yes, in two ways. Drag the Start from slider above the buttons — the label previews the words at that point and the cursor moves there — or just click into the text where you want and press Play. Playback always begins at the start of the nearest word, never mid-syllable.

Can I skip forward while it is reading?

Yes. Drag the slider during playback and it jumps to that point straight away. Handy for re-hearing a sentence you missed without restarting the whole thing.

Can I read text aloud in Hindi, Bangla or Tamil?

Yes — the Language menu carries the same 48 languages as our Speech to Text tool, including Hindi, Bangla for both India and Bangladesh, Tamil, Telugu, Marathi, Gujarati, Kannada, Malayalam, Punjabi and Urdu. Whether you hear it depends on your device having a voice for that language. Pick the language and press Play regardless: the reader asks your device to speak it, and many phones manage even when no matching voice appeared in the list.

Can I change the tone of the voice?

Yes — eight one-tap tones sit above the sliders: Natural, Narrator, Newsreader, Calm, Cheerful, Deep, Bright and Slow & clear. Each sets a tested combination of speed and pitch, so you can get a storytelling voice or a brisk bulletin voice without dragging two sliders to find it. Tap one while it is reading and it applies straight away.

Which tone should I use for a story, a bulletin or a child?

Narrator for stories and long articles — slower and lower, which is easier to listen to for twenty minutes. Newsreader for bulletins and briefings: brisk and level. Bright for children’s material, and Cheerful for adverts, greetings or social captions. For pronunciation practice or anyone hard of hearing, Slow & clear runs at 0.6× without dropping the pitch.

Can it make the voice sound happy or sad?

Not genuinely, and it would be dishonest to claim otherwise. Browser speech synthesis offers only three controls — rate, pitch and volume — with no emotion setting of any kind. What the tones do is combine speed and pitch, which carries a surprising amount of the difference between a bedtime story and a news bulletin, but it is not emotional synthesis. That needs a paid cloud voice API.

Do I have to delete the sample text before typing my own?

No. The demo line clears itself the moment you tap or click into the box, the same way a placeholder would — nothing to select and delete. Press Play without touching the box and it still reads that line, so the tool works on the first click either way.

I pasted my text and Play does nothing. Why?

It should work now. Pasting leaves the cursor at the end of the pasted text — that is the browser’s own behaviour — and because playback starts from the cursor, there was nothing ahead of it to read. The tool now sends the cursor back to the start of the text after a paste, so Play reads the whole thing. If you deliberately want to start midway, click into the text at that point or use the Start from slider.

Can I choose an English voice for Hindi text?

You can — pick the voice by hand and the tool uses it, whatever the Language menu says. But what you actually hear depends on the script rather than the language. Devanagari text (नमस्ते) handed to an English voice usually comes out silent or garbled, because that voice has no pronunciation for those letters. Romanised Hindi — \”namaste, aap kaise ho\” — reads perfectly well in an English voice, and that pairing is genuinely useful. The reverse is more forgiving still: Indian-language voices generally cope with English words mixed in, so a Hindi voice is often the better choice for Hinglish.

Which language is selected by default?

English (United States). Change it and the voice list filters to match; the tool remembers your choice for next time, and Reset returns it to English (United States).

Can I choose a male or female voice?

Yes. Three buttons above the dropdown switch between All voices, ♂ Male and ♀ Female, and every voice in the list carries its own ♂ or ♀ mark so you can see at a glance what you are choosing between. The count beside the Voice label shows how many match. If your device has no voice of that gender for the language you picked, the tool lists what is there and tells you rather than showing an empty box.

How do you know which voices are male and which are female?

From the voice name, because the browser does not tell us. A SpeechSynthesisVoice object reports only its name, language, whether it runs locally, and a URI — an early draft of the spec had a gender attribute and it was removed. So three passes run: an explicit word in the name or URI, which catches Google UK English Male and Android’s female_2 style identifiers; a lookup of the voices Microsoft, Apple and Google actually ship, Indian-language sets included; and Google’s remaining voices, which are female across the range.

Why do some voices have no ♂ or ♀ mark?

Because we could not identify them with confidence, and a wrong label is worse than none. Engine builds with no personal name — espeak-ng and similar — stay unlabelled and remain fully usable under All voices. In testing across Windows, macOS, Android and Chrome, twenty-five of twenty-seven voices were identified.

I chose English (United States) but I can see British and Indian voices. Why?

Deliberately. Choosing a language now orders the list rather than shrinking it: the American voices come first, then the other English voices your device has. The tool used to hide them, which on a typical laptop meant losing about half the English voices installed — and some of the best ones are not the ones matching your exact locale.

Can I add more voices, or does this site provide them?

The voices come from your device, not from us — no web page can install a voice, and any site claiming otherwise is either using a paid cloud service or overstating it. Add more under text-to-speech settings on Android, Time & language then Speech on Windows, Accessibility then Spoken Content on iPhone, or System Settings then Accessibility then Spoken Content on a Mac. New voices appear here automatically.

What does the cloud symbol next to a voice mean?

It marks a network voice. Those usually sound noticeably more natural, but your text is sent to a remote service to be spoken and they need a connection. Voices without the symbol are generated on your device and work offline, so choose one of those if the text is sensitive.

How do I switch between headphones and the loudspeaker?

In your device’s sound settings, before pressing Play. A web page has no way to choose an audio output — speech synthesis always uses whatever your system has set as the default — so the reader simply follows whatever you have selected.

Does it work offline?

With a device voice, yes, once the page has loaded. With a cloud voice — the ones marked with the cloud symbol — no, because the audio is generated remotely.

Is my text sent anywhere or stored?

It is never sent to our servers and never stored. With a device voice, nothing leaves your machine at all. With a cloud voice, the text goes to your browser’s speech provider to be spoken, which is how those voices work in every browser.

What speed should I use for proofreading?

Around 0.8×. Slightly slower than natural speech gives you time to notice a missing word or a clumsy clause. For getting through an article, most people prefer somewhere near 1.3×.

The voice stops partway through long text. What do I do?

It should not, because the reader splits long text and keeps the engine awake. If it does stop, press Play again — it resumes from the cursor, which is left where the voice reached, so you will not have to sit through what you already heard.

What is the difference between Stop and Reset?

Stop ends playback and leaves your text and settings exactly as they are. Reset clears the text, returns the position to the beginning and puts speed, pitch and volume back to their defaults.

Can I download the audio as an MP3?

Not from here. Browser speech synthesis plays audio but does not expose a recordable file, so no web tool using it can offer a download. Saving the audio needs desktop software or a paid speech API.

Explore Tips & Guides

Worked examples and practical walkthroughs from our blog.