Workflow

Visual Novel Voice Acting

Visual novels have the worst ratio in games: enormous line counts, branching structures where most players hear a fraction of what you wrote, and budgets that make voicing all of it impossible. That is exactly the shape this solves.

Why this works here

Line count stops being the constraint

A mid-size visual novel can run to twenty thousand lines across branches. Voicing that conventionally is out of reach for almost every independent team, which is why most visual novels ship partially voiced or not at all.

Branches stay consistent

Players compare routes. A character who sounds slightly different on the second playthrough breaks the illusion completely, and character cards keep every branch identical regardless of when it was written.

Files arrive named for your engine

Exports carry the character and line identifiers from your source, so dropping them into a Ren'Py project or a Unity build does not involve renaming hundreds of files.

Rewrites are cheap

Visual novel scripts change constantly during testing. Re-rendering eight changed lines takes seconds, where a recorded pickup session takes a week.

Voices that suit this kind of work

Ezra

Ezra

Visual-novel love interest with a two-second pause before honesty

maleyoung-adulten-USvisual-novelsoft
Lumen

Lumen

VTuber persona: cute on top, deadpan underneath

femaleyoung-adulten-USvtuberanime
Cass

Cass

Seventeen and furious about it, in a good way

femaleteenen-USteenmodern
Seraphine

Seraphine

Court princess whose politeness is a weapon

femaleyoung-adulten-GBroyalfantasy
Koji

Koji

Rival character: clipped, competitive, secretly loyal

maleteenen-USanimerival
Tess

Tess

Australian lead with a flat, dry delivery

femaleyoung-adulten-AUaccentdry
Vex

Vex

Demon who negotiates in a reasonable tone

neutraladulten-USdemonhorror
Wren

Wren

Bedtime-story narrator, slow and warm, never wakes anyone up

femaleadulten-USnarrationwarm

Browse the whole library →

How to do it

  1. Export your dialogue table

    Most engines can dump dialogue as a list of speaker-and-line rows. That is the format this expects.

  2. Build a card for every speaking character

    Including the ones with five lines. Cards are what make the third route sound like the first.

  3. Render by character, not by scene

    Generating one character's whole line set together makes inconsistencies audible, which they never are line by line.

  4. Keep the narrator separate

    Most visual novels have an internal-monologue narrator. Cast them in a clearly different band from the protagonist's spoken voice, or players will confuse thought with speech.

  5. Name files from your identifiers

    Keep the engine's line IDs through the render so import is mechanical.

  6. Re-render only what changed

    After a rewrite, regenerate the affected lines. Everything else keeps its existing audio and your build stays stable.

The economics that shaped the genre

Visual novels are text-first by tradition and by necessity. The form grew in a market where voice acting was expensive and line counts were enormous, so the convention became partial voicing: the main route voiced, side content silent, the protagonist mute so players could inhabit them.

Those conventions are now aesthetic as much as economic — many players prefer them — but the constraint underneath has genuinely changed. A small team can now afford to voice the material they previously had to leave silent, which mostly means side routes and minor characters rather than the main line.

Branching makes consistency harder than it looks

Linear stories are heard in order, once. Branching stories are heard out of order, repeatedly, by players deliberately comparing versions. A line written in month two and a line written in month nine will be played back to back by anyone doing a second route.

This makes voice drift far more visible than in a linear game. Anything that depends on someone remembering a casting decision will eventually fail. Storing the voice with the character, and never choosing a voice at render time, is the process rule that prevents it.

Fitting a rendering step into an engine pipeline

The practical integration question is file naming. Engines reference audio by identifier, and a rendering step that returns files named sequentially has moved your work rather than removed it. Carrying your own identifiers through the render turns import into a copy operation.

The second question is incremental rendering. Visual novel scripts change during testing far more than most game content, and re-rendering the whole project on every change is both slow and disruptive to a build. Render the delta, keep everything else, and your audio directory stays stable between builds.

Telling players what they are hearing

The visual novel community has strong opinions about voice acting, partly because voice actors are a visible and beloved part of the genre's culture. Generated voices in that context are not neutral, and the response to them is heavily influenced by whether the team was upfront.

Put it in the store page. Say which parts are generated and which, if any, are recorded. Teams that do this are largely judged on the result; teams that are found out later are judged on the concealment, and that judgement is much harsher.

Partial voicing is a design decision

Now that voicing everything is affordable, the interesting question becomes whether you should. Players read faster than voices speak, and a fully voiced visual novel either forces readers to wait or lets them skip past the audio, which makes the voicing pointless.

The pattern that works is voicing what benefits from performance — emotional scenes, character introductions, route climaxes — and leaving connective text silent so readers can move at their own pace. Many well-regarded commercial titles do exactly this, and they do it deliberately rather than because of budget.

A useful test: if a line exists to convey information, silence is fine. If it exists to convey how a character feels about the information, voice it.

Working with a testing build

Visual novel scripts change more during testing than most game content, because playtesters find branches that do not read well and writers rewrite them immediately. A voicing pipeline that cannot keep up becomes a reason not to fix things, which is the worst possible outcome.

The property that makes this work is incremental rendering: change eight lines, regenerate eight files, leave everything else alone. Your audio directory stays stable between builds, your version control diff stays readable, and nobody has to decide whether a rewrite is worth the re-render.

It is worth setting this up before the writing is finished rather than after. Teams that wait until the script is locked discover that the script is never locked.

What it costs

Free

$0 / month

Enough to finish a short scene and hear what your script sounds like cast.

  • 10,000 characters every month — the quota resets, it is not a one-time trial
  • 2 cast members per project
  • 5 minutes of finished audio
  • Exports carry a short CastDub watermark
Start free

Studio

$29 / month

For serialised work: long-running dramas, audiobooks, dubbing pipelines.

  • Unlimited cast members per project
  • 200 minutes of finished audio a month
  • Line-by-line emotion control
  • Multitrack and stem export (one WAV per character)
  • 3 voice clone slots
Choose plan

Team

$69 / month

For a studio where a writer, a director and an editor touch the same project.

  • 5 seats, shared projects and shared character cards
  • 500 minutes of finished audio a month
  • 10 voice clone slots
  • Priority rendering queue
Choose plan

Full comparison →

Frequently asked questions

Should I voice everything or only key scenes?

Partial voicing is the established convention and players accept it well — common routes and emotional peaks voiced, incidental lines silent. Full voicing is now affordable, but consider whether it helps: unvoiced lines read faster, and players who skim appreciate not waiting for audio.

Will players mind AI voices?

Some will, and the visual novel audience is more opinionated about voice acting than most. Disclosure in the store listing is the right call. The reaction to undisclosed generated voices discovered later is considerably worse than the reaction to disclosed ones up front.

Does it work with Ren'Py?

There is no plugin, but the workflow fits: export your dialogue, render, and place the files where your voice statements expect them. Keeping your line identifiers through the render is what makes this mechanical rather than manual.

How do I handle the protagonist?

Most visual novels leave the protagonist unvoiced so players can project onto them. If yours is voiced, keep the internal monologue and the spoken dialogue clearly distinguishable — different pace, or a different treatment in the mix.

Can I voice a demo and record the full release?

Yes, and it is a sensible order. A voiced demo helps a crowdfunding campaign, and the generated track doubles as a reference for actors later. Say clearly in the demo that the voices are placeholder if that is the plan.

What plan do I need?

Studio. The cast is unlimited, which a visual novel needs, and the minutes allowance matters — twenty thousand short lines is a lot of audio even though each line is brief.

Cast your first scene tonight

Paste a script, let CastDub assign a voice to every character, and export a finished drama.

Create for free

No credit card. Free plan renews every month.