Pronunciation validator
The validator that checks each word sound by sound — phoneme-level, not word-level.
Family: Operator · type: validator_pronunciation · canvas name “Pronunciation” · beta
The Pronunciation validator answers: was each word actually pronounced correctly? It listens to each generated line and scores pronunciation phoneme by phoneme, producing a phoneme error rate (PER) and a 0–100 score from it. Lines below the bar are retried; lines at or above it pass.
This is a finer check than Accuracy. Accuracy transcribes the audio and compares words — a name said with the wrong stress usually still transcribes correctly and slips through. This validator hears the sounds themselves.
New to validators? Start with how validators work — the pass/fail routing and retry behavior here are shared by every validator.
English only. This check scores US and British English (en-us, en-gb) audio. A Generator branch in any other language is rejected — the whole pronunciation chain is an English-branch feature today.
Config
The score is 100 - k * PER * 100. At the default k of 1.0 that is simply 100 minus the percentage of phonemes wrong. Raise k to widen the penalty per error.
Why the default is 99, not 70. Its sibling validators score a matter of degree, so a 70 bar makes sense there. Here, at k = 1.0, a threshold of 90 still tolerates one sound in ten. Mispronunciation is a hard defect rather than a gradient, so the default is the near-zero-defect cutoff — and a looser bar is an explicit choice you make per node.
Where it goes
Place it last among a branch’s validators. Cheaper checks — Naturalness, Noise, Accuracy — belong before it, so it only grades lines they already passed.
Its ports carry two extra options the other validators don’t have:
pass— must reach Export over non-failedges, including lines that exhausted their retries and left as “gave up”. It may also feed a Phoneme Injector or a Pronunciation Corrector, because a passing line can still carry individual mispronounced words — routing is on the score, independent of the per-word findings.fail— may loop back to the Generator to regenerate, or feed a Phoneme Injector, or feed a Pronunciation Corrector. The Generator and the Corrector are both retry-loop targets: their output can loop back here to be re-graded within the retry budget.
A Phoneme Injector wired into this check supplies the reference pronunciation it grades against, and must sit immediately before it.
Inspect this node
Related
- Validators — pass/fail and retry, shared behavior
- Phoneme Injector — supplies the reference pronunciation
- Pronunciation Corrector — fixes what this flags
- Fix pronunciations — the whole chain, end to end

