How to read lead data aloud with TTS variables
Drop lead variables like --A--first_name--B-- into a VICIdial TTS entry to read a caller's own details back to them in the generated audio.
The most useful thing about TTS (text to speech) in VICIdial is that it can read a caller's own details back to them. Instead of one generic line, the synthesized audio can say the Lead first name, the status, or the phone number on file. You do this with the same variable syntax a Script uses, typed straight into the TTS Text field.
The variable syntax
In the TTS Text field you wrap a field name in the Script variable markers, for example --A--first_name--B--. When the entry renders, that token is replaced with the value from the current lead before the text is sent to Cepstral. So a line like "Hi --A--first_name--B--, your appointment is confirmed" reads the actual name aloud.
Which lead fields you can read
A wide set of lead fields is available as variables, including:
- Identity: first_name, middle_initial, last_name, title, gender, date_of_birth.
- Contact: phone_number, alt_phone, email, address1, address2, address3, city, state, province, postal_code, country_code.
- Record data: lead_id, list_id, source_id, status, user, vendor_lead_code, called_count, rank, owner, entry_date, modify_date, last_local_call_time, security_phrase, comments.
How a variable becomes spoken audio
The substitution happens before synthesis. VICIdial reads the lead, swaps each --A--field--B-- token for that lead value, then sends the finished text to Cepstral, which generates the audio that plays to the caller.
sequenceDiagram
participant L as Lead record
participant V as VICIdial
participant E as Cepstral
participant K as Caller
V->>L: Read lead fields
L->>V: Return values
V->>V: Replace --A--field--B-- tokens
V->>E: Send rendered text
E->>V: Return audio file
V->>K: Play personalized audioPractical tips
Keep the wording graceful when a field might be empty, since a blank value leaves a gap in the sentence. Use the same fields the Agent sees on screen so the spoken line matches the record. This pairs naturally with an IVR (interactive voice response) greeting that confirms who is calling before routing them on.
Lean on the record fields that are reliably populated. first_name and phone_number are usually present, while fields like middle_initial or province may be blank on many leads, so test those before you build a sentence around them. Some values read awkwardly aloud, too: a status code or vendor_lead_code is meant for reporting, not for a customer to hear, so reserve those for internal prompts rather than caller-facing audio.
Pronunciation is the other thing to test. Synthesized voices handle plain names well but can stumble on unusual spellings or run numbers together, which is where SSML pauses help. Generate the entry, listen to a few real leads, and adjust the wording or add a break tag until it sounds natural across the variety of names in your list.
If you have not built the entry yet, start with adding a TTS entry, and for where personalized speech sits among prompts and the audio store see the audio and TTS guide. Recorded prompts live in the audio store. To get a dialer wired and ready in under 40 seconds, see the plans.
About VICIfast LLC
VICIfast LLC operates a managed VICIdial hosting + BYOI service for outbound and inbound call centers. We run the dialers, the carriers, the recordings pipeline, and the compliance plumbing so operators don’t have to.
Citing this article
VICIfast Engineering. “How to read lead data aloud with TTS variables”. VICIfast LLC, June 27, 2026. Retrieved from https://vicifast.com/blog/how-to-use-lead-data-in-tts-vicidial
Have questions?
Related posts
You might be interested in
VICIfast newsletter
Liked this? Get the next one in your inbox.
We ship the kind of stuff you just read — concrete, numbers-first, no drip. One email when a new post goes live. Unsubscribe in one click.
Comments
No comments yet — be the first.