Skip to tool
ecech.
✏️ Text & SEO Content

Your Browser Already Has Voices Installed, and They Never Leave Your Device

The Web Speech API reads text aloud with no upload and no account. The voice list comes from your operating system, which is why it differs on every machine.

Words

Characters

Spoken length

estimate at this speed

Voices found

Voices on this device

Advertisement

How the calculation works

Where the voice actually comes from this page your text the browser speechSynthesis your operating system the installed voices No server is involved, so nothing you type is uploaded. It also means the voice list is different on every machine.

How to Use This Tool

Paste text, pick a voice, press read. Everything happens inside your browser, so nothing you type is sent anywhere — there is no server to send it to.

The voices belong to your device, not to this page

The browser does not ship voices. It asks the operating system for whatever is installed, so the list you see depends on your machine:

  • macOS and iOS come with a large set and can download more in Accessibility settings, including high-quality ones.
  • Windows ships a handful; more arrive with additional language packs.
  • Android depends on the speech engine installed, which the manufacturer chooses.
  • Linux often has none at all unless a speech engine has been installed deliberately.

This is why a site that promises "a natural American voice" cannot keep that promise. It can only ask for one and take what it gets. If a voice you want is missing, install it in your operating system's settings and it will appear here after a refresh.

Some entries are cloud voices routed through the OS. They usually sound better and they need a network connection, which is the practical way to tell them apart: turn off the network and the ones that go quiet were never local.

Why a voice list often shows up empty getVoices() at load [] — nothing yet voiceschanged fires a moment later getVoices() again the real list Read the list once at startup and you show the user no voices at all.
The API looks synchronous and is not. This tool listens for the event.

Listening is the cheapest proofreading there is

Reading your own writing silently, your eye supplies what you meant. Hearing it, you get what is actually on the page. Three things surface immediately:

  • Missing and doubled words. "the the" and a dropped "not" are almost invisible on screen and unmissable aloud.
  • Sentences with no breath in them. If the voice reaches the end without a natural pause, the sentence is too long for a human reader too.
  • Rhythm. Six sentences of the same length in a row sound like a metronome. That is worth hearing before a reader has to endure it.

Slowing to around 0.8× helps for proofreading; the default speed is comfortable for listening but fast enough to skate over small errors.

Limitations worth knowing

  • Long text can be cut off. Some browsers stop after roughly fifteen seconds or a few hundred characters per utterance. This tool splits at sentence boundaries to avoid it, which is why you may hear a small pause between sentences.
  • There is no download. The Web Speech API plays audio; it does not hand you a file. Saving the output needs a recording tool or a different service.
  • Pronunciation of names and acronyms is often wrong, and there is no per-word override. Spelling a word phonetically in the text is the usual workaround.
Advertisement

Frequently Asked Questions

Does this upload my text anywhere?
No. Speech synthesis happens inside your browser using voices installed on your device, and there is no server involved at any point. You can confirm it by disconnecting from the network — local voices keep working.
Why are there no voices in the list?
Either your system has none installed, or the page asked too early. getVoices() returns an empty array on its first call in Chrome and fills in when the voiceschanged event fires — a very common bug in other implementations. This tool waits for the event, so an empty list here usually means the operating system genuinely has no speech voices.
Why do the available voices differ between my devices?
Because they come from the operating system rather than the browser. macOS and iOS ship many, Windows ships a few, Android depends on the installed speech engine, and Linux often has none until one is added. Install more in your system's accessibility settings and they appear here after a refresh.
Can I download the speech as an audio file?
Not with this API. It plays audio through the browser and never exposes a file, so saving it requires a recording tool or a different service that renders audio on a server.
Why does it stop part way through long text?
Some browsers cut an utterance off after roughly fifteen seconds or a few hundred characters. Splitting the text at sentence boundaries avoids it, which is what happens here — the small pauses between sentences are that split.
Does reading aloud actually help proofreading?
It catches a specific class of error the eye skips: missing words, doubled words, and sentences too long to say in one breath. Slowing to about 0.8× helps, since the default speed is fast enough to glide over small mistakes.

Related tools in Text & SEO Content

Browse all Text & SEO Content tools
The person who builds ecech., at the desk where the tools are written.

Made by one person

ecech. is not a content farm. Every tool here is written and checked by hand, one at a time, by someone who wanted the tool to exist and could not find a version that showed its working.

No accounts and no sign-in, and nothing you type reaches a server — every calculation on this page runs inside your browser. The ads are served by Google and do set their own cookies, which is set out in full on the privacy page. More about the site.