
Visual guide
The online studio layout used for AI dialogue generator.
AI dialogue generator for two speakers. Host and Guest already have voices. Write the conversation, generate, and download one joined audio file.
The dialogue studio starts with two speakers already loaded. Write the conversation, generate, and download one finished file. Each person keeps a distinct voice.
Related use cases
Write one line per turn. Host and Guest already have voices. Click Generate and download one joined WAV or MP3.
One line per turn. Host says the first line, Guest the second, and they keep alternating. NAME: line tags still work if you already write scripts that way.
Host and Guest already have contrasting voices. Rename them, pick a different voice, or add someone. You never detect speakers from the script.
One Generate click builds the conversation. Play it, then download a joined WAV or MP3.

Visual guide
The online studio layout used for AI dialogue generator.
Two-host podcast where one AI voice asks questions and the other explains. Build the script, generate Host A and Host B with contrasting voices, splice. No subscription, no waitlist.
Voice every character in your storyboard or Twine prototype with a different Kokoro voice. 54 voices means an entire small cast without hiring VAs for the rough cut.
Narrate the prose with one voice (River or Daniel), then swap in distinct character voices for direct quotes. Listeners track who is speaking without a "she said" tag every line.
Generate two-speaker dialogues in Spanish, French, Hindi, Japanese, Mandarin, and 4 more languages. Pair a male and female native voice for realistic A/B exchange drills.
The studio understands two ways of writing a conversation. The simplest is plain lines: every line is a new turn. Line one goes to Host, line two to Guest, and they keep alternating. Add a third speaker and the rotation includes them too.
The other way is named lines. Start a line with a name and a colon, like Maya: or
[Maya]:. A name the studio hasn't seen yet joins the cast with its own voice, and you can
change that voice before you generate. In a named script, a line without a name is treated as the rest
of the turn above it, so you can wrap long speeches over several lines.
One thing catches people out. Any short phrase before a colon at the start of a line looks like a name, so "Okay, here's the thing: we're late" becomes a speaker called "Okay, here's the thing". A single line like that also switches a plain script into named mode. Rewrite the line without the colon and the problem goes away.
Set Ana to Dora and Leo to Alex, two of the Spanish voices. Under Advanced options, a 0.5 or 1 second pause between turns leaves learners room to repeat each line out loud.
Ana: Hola, buenas tardes. ¿Qué desea tomar?
Leo: Un café con leche, por favor.
Ana: ¿Algo más?
Leo: No, gracias. ¿Cuánto es?
Ana: Son dos euros. Plain lines, so Host and Guest simply alternate. We keep cold opens under about 75 words, which is roughly 30 seconds at normal speed.
Quick question before we start. How many browser tabs do you have open right now?
Forty-one. I counted on the way in.
Then this episode is for you. Why we never close anything, and what it costs us.
More than I'd like to admit, probably. Three names, three voices. Narrator isn't in the default cast, so the studio adds it with a voice of its own. Give it a calmer voice than the other two.
Sam: Why does my phone drop from 40 percent to 20 so fast in winter?
Priya: The percentage is an estimate, and cold batteries throw it off.
Sam: So the phone is guessing.
Priya: Estimating. Warm it up and the number usually recovers.
Narrator: Keep your phone in an inside pocket on cold days. Square-bracket names work the same way. You get one joined file, which suits a trailer or a cutscene. If the game needs every line as its own file, use the batch studio on the AI voice generator page instead.
[Blacksmith]: Back again? That sword looks worse than last time.
[Player]: It met a troll.
[Blacksmith]: Then the troll won. Twenty gold and it's ready by morning. Listeners need to tell the two voices apart without thinking. These six pairings differ by gender, accent, or tone. Pick one and start generating.
Host + expert guest
Best for
NotebookLM-style explainer podcasts. Sarah asks the questions, Adam delivers the authoritative answer. Most natural pairing for two-host US English shows.
Casual conversation
Best for
Lifestyle pods, friend-chat formats, café-scene dialogue in audiobooks. Both voices read warm, so the back-and-forth feels relaxed instead of formal.
Period drama or BBC-style
Best for
Audiobook scenes set in the UK, prestige documentary two-handers, history podcasts with a host-and-narrator structure. The matched accent keeps the world consistent.
Animation / game characters
Best for
Animated shorts, Twine prototypes, indie game NPC dialogue. Puck is mischievous, Sky is bright, clear character voices, not narrator voices.
Documentary narrator + interviewee
Best for
True-crime, history, science docs where a smooth narrator threads between recreated quotes. River carries the throughline, Nova plays the voice in the archive.
Co-host energy
Best for
Morning-show banter, news-and-chat formats, branded podcast intros where two hosts trade a cold open before the show kicks in.
Want to hear them? Browse all 54 voices →
The model handles the voice. The realism comes from how you script the beats, the silences, and the small reactions between characters. Six rules that cover the full pipeline.
Host takes the first line, Guest the second, and they keep alternating. Optional NAME: line tags still work if you already write scripts that way.
A comma is a quarter-beat, a period is a half-beat, an em dash is a real pause, an ellipsis is a held beat. If a character is hesitating, write "Well... I don't know if that's true." instead of "Well I don't know if that's true." The pause is what sells the hesitation, and Kokoro respects the punctuation.
Real conversational gap-time averages around 250 ms. Slap two TTS clips back-to-back and the dialogue sounds robotic; add 300 ms of true silence between turns in your editor and it sounds like two people talking. For tense scenes, drop to 100 ms. For thoughtful exchanges, push to 600 ms.
Truncate Character A's clip mid-word, then drag Character B's clip to start 50–100 ms before A ends. The brief overlap is the universal audio cue for "they cut in." A 100 ms crossfade on the overlap zone smooths the splice and the interruption reads as natural.
Pan Character A 15% left and Character B 15% right. Not enough to feel theatrical, enough that headphone listeners stop conflating who's speaking. Hard panning (50%+) only works for radio drama. For podcasts and audiobooks, 15% is the sweet spot.
No SSML, no <laugh> tag, write what you want spoken. "Hah hah hah" delivers a clean three-syllable laugh, "mmhm" reads as agreement, "ugh" lands as exasperation. Test the reaction as a 10-character solo generation, swap voices if one delivers it cleaner, then drop the clip onto a separate track in your edit.
PlayHT shut down at the end of 2025 after Meta acquired its team, so the live comparison is Murf, which ships a native multi-speaker mode: paste once, render one mix. The trade is a monthly cap, signup, and a paid commercial license.
Multi-voice dialogue support
FreeTextoSpeech
Write one line per turn, Host and Guest already have voices, and export one joined conversation.
Murf free tier
Native multi-speaker dialogue feature, but locked behind paid tiers and capped voice roster on free.
Voice variety per scene
FreeTextoSpeech
54 voices across 9 languages, enough for an entire ensemble cast.
Murf free tier
Smaller free voice pool with most distinct character voices paywalled.
Cost for a 5-minute dialogue
FreeTextoSpeech
Free. 25,000 cloud characters every 30 days without an account, 500,000 signed in, no usage cap on-device (English voices).
Murf free tier
Counts against monthly character cap on free tier; longer scenes push you to a paid plan.
Commercial license on free tier
FreeTextoSpeech
Full commercial use allowed, no attribution.
Murf free tier
Commercial use restricted on free tier, paid plan required for monetized podcasts and indie games.
Output format
FreeTextoSpeech
One joined 24 kHz file per scene, MP3 or WAV, ready to drop into any editor.
Murf free tier
Compressed MP3 on free tier, often single-mix only.
Signup
FreeTextoSpeech
None. Open the page, paste, generate.
Murf free tier
Email signup required, credit card on file for commercial features.
One-click multi-voice generation
FreeTextoSpeech
Native multi-speaker generation with loaded speakers, joined export, and optional Advanced controls.
Murf free tier
Native multi-speaker dialogue mode on paid tiers (one paste, one render).
Generate runs each turn in order so the shared voice engine is not overloaded.

In context
A step-by-step visual guide for AI dialogue generator.
Still wondering? Get in touch →
Single-voice intros and segments to pair with your dialogue scenes.
Indie audiobook narration with character-dialogue voice swaps.
Compare the 54 voices and pick the ones that stay natural across long scenes.
Drop dialogue scenes straight into Premiere or DaVinci Resolve.
Generate it free, in under 10 minutes, with full commercial rights.
A tiny favor
Allow ads for this site, then check again. Prefer no ads? Paid plans remove ads and add more cloud characters, from $4 a month.
Allow ads for freetexttospeech.net, then check again.
Already on a paid plan?Sign into restore your perks.
Send feedback
Tell us what you think
Bugs, ideas, or anything that would make FreeTextoSpeech better.