Sometimes a word is not pronounced the way you expect. This most frequently happens for proper nouns (e.g., “Weber” can be pronounced “web-er” or “wee-ber”) and homographs (e.g., “lead” can be pronounced “led” or “leed”). We offer pronunciation overriding for words which you would like to be pronounced differently.

To do this, you will use pronunciation tags to override our model’s default pronunciation. The tag format is [word : arpabet] where word is the word you want pronounced differently and arpabet is a space-separated list of ARPABET phonetic symbols. Tags are insert in-line with your input text.

For example, the [quick: K W IH1 K] brown fox jumps over the lazy dog.

Make sure that each vowel has a 0 (not stressed), 1 (primary stress), or 2 (secondary stress) after the letters — this is mandatory and a common mistake! For example, AA0, ER1, or UW2 (not AA, ER, or UW).

What is ARPABET?

ARPABET is a set of symbols corresponding to phonemes in English — like a “phonetic alphabet” that’s used to indicate word pronunciation. We support a simplified version of ARPABET as shown below:

Vowels: AA AE AH AO AW AY EH ER EY IH IY OW OY UH UW

Consonants: B CH D DH F G HH JH K L M N NG P R S SH T TH V W Y Z ZH

Example pronunciations:

  • Quack → K W AE1 K
  • Spider → S P AY1 D ER0
  • Mango → M AE1 NG G OW0

Take care to inlcude only one single primary stress vowel in any given pronunciation tag to avoid inconsistent results.