Documentation

Setting up a Twilio Voice respondent source

Voice surveys let you run surveys over a phone call, using AI to create a natural, conversational experience that feels like the respondent is talking to a real person. The platform reads questions aloud, listens to spoken answers, and maps responses back to your survey structure. All of this happens automatically.

Voice survey quality is viable today and will only continue to improve as real-time voice LLM models advance.

Before you start
  • Advanced respondent sources must be enabled in your account.
  • You need a Twilio Account SID, Auth Token, and a Twilio phone number.
  • Your contact numbers must be in E.164 format (example: +15551234567). See E.164 phone number format for the formatting rules and common country prefixes.
Step 1: Create a new Twilio Voice source

Go to Sources, click Add Respondent Source, and search for "voice" in the audience type search box. Select Twilio Voice.

Add respondent source: searching for Twilio Voice

Fill in the Twilio-specific fields along with the selected base fields:

Field (UX label)What to enterRequired
NameA descriptive name for this sourceYes
Target completesNumber of completions requiredYes
Days in fieldHow long to keep the source activeYes
CountryThe country your respondents are in (US only)Yes
Audience dev emailEmail for notifications about this sourceOptional
Completion urlRedirect base URL after survey completionOptional
Preferred languageThe default language for the respondent survey experience (en-us only)Yes
Twilio account SIDYour Twilio Account SIDYes
Twilio from numberThe outbound caller ID used for survey calls, in E.164Yes
Twilio auth tokenYour Twilio Auth TokenRequired on create, optional on update
Voice nameThe AI voice used during the phone call (alloy, ash, ballad, coral, echo, sage, shimmer, verse, marin, cedar)Yes
Incoming callsAllow respondents to call the Twilio number to start the surveyOptional (default off)
Background noisePlay subtle background ambience during calls for a more natural, call-center feelOptional (default on)
Calls per secondMaximum outbound survey calls to start per second for this sourceYes (min 1)
Delivery window time zoneIANA time zone used for campaign call hours (e.g. America/New_York)Yes
Delivery window startLocal time calls may begin, in HH:MM (default 08:00)Yes
Delivery window endLocal time calls must stop, in HH:MM (default 21:00)Yes
Identity columnContact file identity column name (default: Identifier)Optional

Twilio Voice source configuration

The Voice name dropdown lets you choose from several AI voices. Pick the one that best fits the tone and audience of your survey.

Twilio Voice sources currently support the US market and en-us language only.

Background noise

The Background noise option plays a low level of ambient sound underneath the call. This makes the conversation feel less like a silent line. We recommend leaving background noise on for most studies. It is enabled by default.

Incoming calls (call-back)

By default, a Twilio Voice source only places outbound calls. Turn on Incoming calls to let respondents call the Twilio number back and start the survey themselves. Use it when a respondent misses your call, or when you want to publish the number and invite people to call in.

When incoming calls are enabled, an inbound call to your Twilio number is routed to the survey using the same Inbound webhook URL you configure in Step 3 below. A single webhook handles both outbound calls and call-backs. If incoming calls are left off, inbound calls to the number are rejected.

Step 2: Design your survey

All question types are supported for voice surveys. However, media-based content such as images, videos, and display text will not be presented to respondents since the survey is conducted entirely over audio.

The visual survey editor works the same way it does for any other respondent source. You can switch between the Code and Visual views using the toggle at the top of the editor.

Code and Visual toggle

Survey flow in the visual editor

Each survey step can be edited by clicking on it. Question text, options, and logic all work the same as other source types.

Editing a survey step

Step 3: Configure Twilio webhook
  1. In the source, copy the Inbound webhook URL from the Twilio setup panel.
  2. In Twilio Console, paste that URL as your inbound webhook for the phone number.
  3. Save changes in Twilio.

This same webhook handles call-backs when Incoming calls is enabled, so there is nothing extra to configure for respondents to call the number back.

Step 4: Upload contacts
  1. Use Upload contacts file.
  2. Supported file types: .csv, .csv.gz, .xlsx. For .xlsx, the platform reads the workbook's active sheet. You do not need to format the data as an Excel table.
  3. Include the configured Identity column (default Identifier) and populate it with phone numbers in E.164 format (e.g. +15551234567). Numbers that are not in E.164 will be rejected. See E.164 phone number format for the formatting rules and common country prefixes.
  4. The values in the identity column must be unique within the file. If any number appears more than once, the upload will be rejected. De-duplicate before uploading.

You can also include additional columns of first-party data alongside the identity column. Any column header that matches a question code, or that exactly matches the name of a stored variable in your survey, will be auto-matched. The value is pre-filled into the survey at runtime and is available in reporting. Matching to stored variables is exact and case-sensitive, so spell the column header identically to the stored variable.

Step 5: Test your survey

Test survey links offer the option to test in Phone or Online mode.

Choose a test mode

In Phone mode, select a phone channel and enter your phone number in E.164 international format (e.g. +15551234567). The platform will call you and run through the survey as a respondent would experience it.

Start a phone test

In Online mode, you can preview the survey flow in your browser, which is useful for quickly checking question wording and logic without making a call.

Step 6: Go live
  1. Use the Status action Go Live.
  2. Use Pause, Restart, or Complete as needed during fielding.
Reporting

Reporting for voice surveys works the same as for any other respondent source. Standard reports, crosstabs, and data exports include voice responses.