Survey types
Net Promoter Score
Asks callers to rate on a 0–10 scale. Automatically classifies respondents into promoters (9–10), passives (7–8), and detractors (0–6), then calculates the NPS.
Customer Satisfaction
Collects a 1–5 satisfaction rating and computes a CSAT score as the percentage of respondents who gave 4 or 5.
General Feedback
Open-ended 1–10 rating with optional qualitative follow-up. Suitable for product or service feedback.
Creating a survey tool
Fill in the basics
Provide a name (max 255 characters) and an optional description (max 1000 characters).
Choose the survey type
Select one of the three types. The score range and default questions are set automatically:
| Type | Score range | Default main question |
|---|---|---|
| NPS | 0–10 | ”On a scale of 0 to 10, how likely are you to recommend our service?” |
| CSAT | 1–5 | ”On a scale of 1 to 5, how satisfied were you with our service today?” |
| Feedback | 1–10 | ”On a scale of 1 to 10, how would you rate your overall experience?” |
Customize questions and messages
Override the default main question and configure follow-up questions per respondent category (promoter, passive, detractor for NPS; satisfied/dissatisfied for CSAT).You can also customize the response messages the agent speaks:
| Message key | Purpose |
|---|---|
thank_you | Spoken immediately after the score is received |
follow_up_prompt | Prompt for additional comments |
completion | Final message at the end of the survey |
error | Spoken if the response could not be understood |
Configure settings
| Setting | Default | Description |
|---|---|---|
| Collect follow-up | true | Whether to ask a follow-up question after the score |
| Require follow-up | false | Force the caller to answer the follow-up before completing |
| Max follow-up attempts | 2 | How many times to re-ask if no answer is given |
| Timeout seconds | 30 | How long to wait for a response before moving on |
| Sentiment analysis | true | Automatically classify the follow-up text as positive, neutral, or negative |
| Auto-categorize | true | Group responses into promoter/passive/detractor categories |
| Send completion message | true | Speak the completion message when the survey finishes |
draft status. They must be registered with ElevenLabs and set to active before agents can invoke them.
Registering with ElevenLabs
Registering a survey tool pushes its configuration to the ElevenLabs Conversational AI platform as a webhook tool. Once registered, a tool receives anelevenlabs_tool_id and its status is set to active.
Click Register
Click the Register with ElevenLabs button. Sniko sends a
POST /convai/tools request with the following configuration:DELETE /convai/tools/{elevenlabs_tool_id} and clears the stored ID.
Assigning to agents
A survey tool must be registered before it can be assigned to an agent.Click Assign Agents
Select one or more ElevenLabs agent IDs and submit. Sniko sends
POST /agents/{agentId}/tools for each agent with the tool_id body parameter.Webhook endpoint
When an agent invokes the survey tool during a call, ElevenLabs posts to the survey webhook:secret is a 32-character random string generated at tool creation time. It acts as a shared secret to authenticate the request — any request with a mismatched secret is rejected.
Expected request body:
SurveyResponse record.
Viewing responses
Open a survey tool’s detail page to see:- Total responses — count of all processed responses
- NPS score — calculated as
((promoters − detractors) / total) × 100(NPS tools only) - CSAT score — percentage of respondents who gave 4 or 5 (CSAT tools only)
- Average score — mean numeric score across all responses
- Sentiment breakdown — percentage split between positive, neutral, and negative
- Score distribution — bar chart of response counts per score value
- Response trend — daily response count over the last 30 days
- Recent responses — the 50 most recent processed responses
Simple Surveys
Simple Surveys are a lighter-weight feature for collecting structured form data. Unlike the voice-agent survey tools above, they provide a public submission page that anyone can fill out in a browser.Creating a simple survey
Add fields
Define one or more fields. Each field requires:
| Property | Description |
|---|---|
| Type | text, email, textarea, select, radio, checkbox, number, or date |
| Label | The question label shown to respondents |
| Required | Whether the field must be filled before submission |
Configure settings
| Setting | Description |
|---|---|
| Thank you message | Text shown after a successful submission |
| Collect email | Ask respondents for their email address |
| Allow multiple responses | Whether the same IP can submit more than once |
Public submission URL
Each published survey gets a unique slug-based URL:If a survey’s
closes_at date has passed, or its status is set to closed, the public page displays a closed notice instead of the form.Analytics
Navigate to Analytics from a simple survey’s detail page to view:- Daily, weekly, and monthly response volume charts
- Per-field response breakdowns with value counts and percentages
- Total response count