Speech Synthesis Demo - Online Text to Voice with Controls
Write text and pick a voice, rate, and pitch to test your browser's speech synthesis capabilities. No download.
UD5 Toolkit
Generate Speech Synthesis Markup Language (SSML) and preview with browser text-to-speech
<speak>
</speak>
<break> for inserting pauses, <emphasis> for stressing words, <prosody> for controlling rate/pitch/volume, <say-as> for interpreting numbers/dates/phone numbers, <p> and <s> for structuring paragraphs and sentences, <phoneme> for precise pronunciation, and <sub> for substituting spoken text.synthesize-speech API call. Simply set the TextType parameter to "ssml" and provide your SSML content wrapped in <speak> tags. Polly also supports additional tags like <amazon:effect name="whispered"> for whispering effects and <amazon:auto-breaths> for automatic breath sounds.<break> tag! It's a self-closing tag that accepts a time attribute. For example: <break time="500ms"/> inserts a half-second pause. You can also use <break time="2s"/> for longer pauses, or <break strength="strong"/> for a context-appropriate pause without specifying exact duration.<prosody> tag supports three key attributes: rate (speaking speed: x-slow, slow, medium, fast, x-fast, or a percentage like "80%"), pitch (voice pitch: x-low, low, medium, high, x-high, or a semitone value like "+2st"), and volume (loudness: silent, x-soft, soft, medium, loud, x-loud, or dB values like "+3dB"). These can be combined for nuanced control.<BREAK>, <Break>, and <break> all work), but attribute values like "strong", "slow", or "ipa" should be lowercase for best compatibility across all TTS services. This tool always generates properly cased, standards-compliant SSML.<say-as> tag to control how they're spoken. Use interpret-as="cardinal" for regular numbers ("one hundred twenty-three"), "ordinal" for rankings ("first"), "telephone" for phone-style digit-by-digit reading, "date" with a format attribute for dates, "time" for time values, and "characters" to spell out each character individually (great for codes and IDs).<p> (paragraph) tag represents a paragraph-level structure and typically inserts a longer pause before and after the content — ideal for separating distinct topics or sections. The <s> (sentence) tag marks individual sentences within a paragraph, creating shorter pauses. Using both tags helps TTS engines deliver more natural-sounding speech with appropriate prosodic boundaries.Write text and pick a voice, rate, and pitch to test your browser's speech synthesis capabilities. No download.
Type or paste text and have it read aloud by your browser's speech synthesis engine. Control voice, pitch, and rate. No download, works offline.
Paste or type text and have it read aloud with natural voices. Control speed and pitch. Uses browser's built‑in TTS.
Convert your word count into an estimated speaking time based on average words per minute. Adjust the pace for slow, normal, or fast speakers to plan presentations perfectly.
Paste your script and get an approximate speech duration based on slow/average/fast pace. Avoid overtime.
Paste your speech, set time limit, and practice with a pacing indicator (words per minute). Refine delivery.
List all available TTS voices on your system. Test each with any text. Adjust rate and pitch. Find the best voice.
Hear text spoken word by word with boundary events. See the exact index and character. Advanced TTS dev tool.
Combine TTS with text highlighting. See each word colored as it is spoken. For e‑learning content creation. Local.
Use SSML <mark> tags to fire events during TTS. See text highlighted as it is spoken. Understand speech synthesis timing. local.
Speak into the mic and see a live transcript with word count. Uses the Web Speech API. Nothing is stored.
Paste any text and have it read aloud while each spoken word is highlighted. Improve reading focus. Web Speech API.
Use the Web Speech API to turn your spoken words into text with punctuation. Copy and paste anywhere. Privacy‑first.
Test your browser's built‑in speech recognition. Speak and see the transcribed text appear live. Must‑have for voice app devs.