Using Variables in Prompts
When you write your agent's Greeting Message or Agent Prompt, you can drop in a variable that gets replaced with real call details on every call — so instead of writing one generic greeting, the agent can say the caller's actual name, or its own number, out loud.
Available variables
| Variable | Insert this | What it becomes |
|---|---|---|
| Caller's name | {{user_name}} | The caller's name |
| Caller's phone number | {{user_number}} | The caller's phone number |
| Caller's email | {{user_email}} | The caller's email address |
| Agent's name | {{agent_name}} | The agent's own configured name |
| Agent's phone number | {{agent_number}} | The agent's own outbound phone number |
How to insert one
Click the Variables button above the Greeting Message or Agent Prompt field and pick a value from the list — it's inserted at your cursor, no need to type or remember the exact syntax.
Example
Hello {{user_name}}, thanks for calling! I have your number as {{user_number}} — is that still the best way to reach you?
On a real call this becomes:
Hello Priya, thanks for calling! I have your number as +91 98765 43210 — is that still the best way to reach you?
What happens if a value is missing
Not every call provides every value. Here's what each variable does when it's not available:
-
{{user_name}}falls back to "there" — e.g. "Hello there, thanks for calling!" -
{{user_number}}is always present when this feature applies, so there's no fallback to worry about. -
{{user_email}}falls back to an empty string — the text around it stays, so write sentences that still make sense without it. Avoid a sentence that flatly states the value, since a blank can occasionally read awkwardly out loud; prefer a conditional phrasing instead.Instead of: "Your email on file is {{user_email}}." Write: "If you'd like, I can confirm the email we have on file for you."
-
{{agent_name}}falls back to "Assistant" if the agent has no configured name. -
{{agent_number}}falls back to an empty string if the agent has no outbound number assigned — write it the same conditional way as{{user_email}}above.
Where this works
All five variables are filled in on real phone calls — the API (POST /v1/calls), the dashboard's
"call now" and "schedule a call" actions, campaigns, and inbound calls. {{user_name}}/
{{user_number}}/{{user_email}} depend on caller details being available for that specific call
(e.g. a campaign contact list without an email column means {{user_email}} falls back to blank),
while {{agent_name}}/{{agent_number}} always reflect the agent's own configuration regardless
of caller data.
Next step
See Agent Prompting for general guidance on writing effective agent instructions.