Personas
AI-generated callers that stress-test your agents — from polite customers to hostile complainers
Personas
Your agent sounds great in the demo. Then a frustrated customer calls, interrupts mid-sentence, and demands a supervisor. Does the agent handle it? You don't know — because you only tested with polite, patient callers.
Personas are AI-generated caller profiles that simulate real customer behavior. Each one brings a different personality, emotional state, speaking style, and intent. Attach them to scenarios, and Chanl runs realistic test conversations that surface the failures human testers miss.
Built-in Personas
Chanl includes 25+ pre-built personas covering the most common — and most difficult — customer types:
Simulate real caller behaviors

Angry Caller
Frustrated
Polite Pro
Professional
Confused User
Uncertain
VIP Client
High-value
Tech Savvy
Expert
First-Time Caller
NervousKaren
Demanding, impatient, escalation-prone. Tests de-escalation and policy handling.
Priya
Polite, professional, detail-oriented. Tests thoroughness and accuracy.
Maria
Confused, needs repetition, uncertain. Tests patience and clarity.
Ken
Analytical, asks pointed questions, never satisfied. Tests depth of knowledge.
Marcus
VIP executive, wants quick answers, time-sensitive. Tests efficiency.
Alex
Frustrated, on the verge of cancelling. Tests retention skills.
What Defines a Persona
| Property | What It Controls | Example |
|---|---|---|
| Name & Background | Who they are and why they're calling | "Sarah, 42, called twice about a billing error" |
| Emotional Tone | Mood during the conversation | frustrated, confused, friendly, hostile |
| Speaking Style | How they communicate | interrupting, verbose, terse, polite |
| Intent | What they want to achieve | refund, information, complaint, purchase |
| Language | Communication language | English, Spanish, French |
| Environment | Background context | noisy café, quiet office, driving |
Creating Custom Personas
The built-in personas cover common cases. For your specific product, create custom ones.
Go to Test → Personas → Create Persona. Fill in the personality profile — name, description, emotional tone, speaking style, and goals.
curl -X POST "https://api.chanl.ai/api/v1/personas" \
-H "Authorization: Bearer <access_token>" \
-H "Content-Type: application/json" \
-d '{
"name": "Angry Churner",
"description": "Long-time customer who just found a cheaper competitor. Demands to cancel immediately. Will stay if offered a meaningful discount, but needs to feel heard first.",
"emotionalTone": "angry",
"speakingStyle": "interrupting",
"intent": "cancellation"
}'const persona = await fetch('https://api.chanl.ai/api/v1/personas', {
method: 'POST',
headers: {
'Authorization': `Bearer ${accessToken}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: 'Angry Churner',
description: 'Long-time customer who found a cheaper competitor...',
emotionalTone: 'angry',
speakingStyle: 'interrupting',
intent: 'cancellation',
}),
});How Personas Work in Scenarios
When you run a scenario, each persona takes a turn playing the caller. The same scenario — "customer requesting refund" — produces completely different conversations depending on the persona:
| Persona | How the Call Goes |
|---|---|
| Polite Priya | Clear request, patient, accepts the process, says thank you |
| Angry Karen | Interrupts, demands a supervisor, threatens to leave a bad review |
| Confused Maria | Asks "what does that mean?" repeatedly, needs step-by-step guidance |
| Analytical Ken | Asks about the legal basis, wants the policy in writing, challenges inconsistencies |
Same scenario, four completely different failure modes to catch.