Skip to main content
Alphanumeric strings — booking references, license plates, serial numbers, IDs — can be ambiguous for a TTS model: AHAA7771Z might be read as a word, a number, or a mix of both. Wrap a sequence in <verbatim> tags to have it spelled out character by character: letters as letter names, digits as single digits, and symbols by name (for example, @ is read as “at”). Example:
The tagged sequence is read as “A H A A seven seven seven one Z” instead of being read as a word or a number. Constraints:
  • Use well-formed tags with the sequence inside: <verbatim>AHAA7771Z</verbatim>. Tag names are case insensitive; <say-as interpret-as="verbatim"> is an equivalent, SSML-standard spelling of the same tag.
  • Keep the content to letters, digits, spaces, and these symbols: ( ) - # : . , + @ / _ *. Tags containing other characters may be read as regular text instead of being spelled out.
  • Verbatim tags require text normalization to be enabled. If applyTextNormalization is set to OFF, the tags are removed and their content is read as regular text.
  • Expansion is currently English-oriented: characters are read with English letter and number names.
Verbatim tags are most reliable on inworld-tts-2 — we recommend it for alphanumeric-heavy content. As with any generative TTS, exact renditions can vary; keep tagged sequences short where possible and verify output for your use case.