Browser TTS Lab

Zero backend, browser speech synthesis studio

Your browser doesn't support speech synthesis. Try Chrome, Edge, Safari or Firefox.
{{ filteredVoices.length }} / {{ voices.length }}
Type
Quality
Loading voices…

No voices match your filters.

No natural offline voices are installed. Install Enhanced/Premium voices in your OS (macOS: Settings → Accessibility → Spoken Content → System Voice → Manage Voices), then reload.

URI: {{ currentVoice.voiceURI }}
Type: {{ currentVoice.localService ? 'Local (Offline Safe)' : 'Network / High Quality' }}
Quality: {{ isNatural(currentVoice) ? '★ Natural (detected)' : 'Standard' }}

Audio Parameters

Speaking Rate (Speed) {{ params.rate.toFixed(1) }}x
0.5x (Slow)1.0x (Normal)2.0x (Fast)
Pitch {{ params.pitch.toFixed(1) }}
0 (Deep)1 (Normal)2 (High)
Volume {{ Math.round(params.volume * 100) }}%
Presets:
{{ hl.before }}{{ hl.word }}{{ hl.after }}
{{ inputText.length }} chars | {{ wordCount }} words
{{ currentStatus }}

Implementation Code

{{ snippet }}
Deployment Tips
  • Voice loading: voices load asynchronously. Listen for voiceschanged.
  • Autoplay: browsers require a user gesture (click/tap) before speaking.
  • Long text: Chrome can cut off after ~15s. This app (and the snippet) splits text into sentences.
  • Highlighting: network voices and some mobile browsers don't emit word events, so the current sentence is highlighted instead.
  • Natural detection: the API has no quality flag. ★ is guessed from the voice name (Natural, Neural, Premium, Enhanced, Siri, Online, Google).
Install App