Skip to Content
FeaturesVoiceVoice Campaigns

Voice Campaigns

Launch automated voice calling campaigns to reach your audience at scale. Voice campaigns are ideal for notifications, reminders, alerts, and bulk outreach. The platform handles call scheduling, provider routing, and real-time tracking so you can focus on message content and audience targeting.

Overview

Voice campaigns enable you to call multiple contacts automatically using pre-recorded audio, text-to-speech, IVR flows, or XML scripts. Each campaign goes through a defined lifecycle and provides detailed analytics on delivery, engagement, and outcomes.

Calling Types

Voxvaani supports four distinct calling types. Choose the one that best fits your use case:

Audio

Play a pre-recorded audio message to the recipient. The simplest and most reliable option.

Best for: One-way announcements where no response is needed — payment reminders, promotional messages, event alerts.

💡

Pre-recorded audio delivers the most polished and consistent experience. Use the Audio Library to manage your files and test playback quality before launching.

TTS (Text-to-Speech)

Convert written text into spoken audio at call time. The system reads your message aloud using AI-generated voice synthesis.

Best for: Dynamic or personalized messages where recording individual audio files is impractical — custom greetings with the recipient’s name, multi-variant A/B testing, rapid message iteration.

💡

TTS campaigns consume voice minutes for the actual call duration only. Text-to-speech synthesis itself does not incur additional voice minute charges.

IVR (Interactive Voice Response)

Deploy an interactive flow that allows the recipient to respond using their phone keypad (DTMF tones). The caller navigates menus, provides input, or is transferred to a live agent.

Best for: Two-way interactions — customer satisfaction surveys, lead qualification, appointment confirmation with reschedule options, support menu routing.

ℹ️

IVR campaigns require a flow built in the IVR Flow Builder. Test the flow thoroughly in the builder’s preview mode before attaching it to a campaign.

XML Script

Execute a VoxiXML script that defines the complete call flow programmatically. Offers the most granular control over call behavior.

Best for: Indian Route provider campaigns, complex branching logic, mid-call API integrations, custom retry and error handling logic.

⚠️

XML scripts are only compatible with the Indian Route provider. You cannot use XML campaigns with SignalWire or Plivo. See the XML Template Builder documentation for script authoring guidance.

Creating a Voice Campaign

🖼
[Screenshot: Create Campaign form showing campaign name, audio selection, and contact list]
Highlight: Select audio file and contacts

Step-by-Step

  1. Navigate to Campaigns from the sidebar.
  2. Click Create Campaign.
  3. Enter a Campaign Name that clearly identifies the campaign purpose (e.g., “January Payment Reminder Batch 1”).
  4. Select the Calling Type (Audio, TTS, IVR, or XML Script).
  5. Choose or provide the content based on the calling type:
    • Audio: Select a file from your Audio Library.
    • TTS: Enter the text content, select language and speaker voice.
    • IVR: Select a published IVR flow.
    • XML Script: Select a saved XML template.
  6. Select Contacts — choose an existing contact list or upload a CSV file. Ensure phone numbers are in E.164 format (e.g., +919XXXXXXXXX).
  7. Configure the Schedule — launch immediately or set a future date and time. Scheduled campaigns support timezone-aware delivery.
  8. Review settings and click Launch Campaign.

Campaign Settings

SettingOptionsDescription
Campaign NameFree textInternal label for identifying the campaign.
Calling TypeAudio / TTS / IVR / XMLDetermines how the message is delivered to recipients.
Caller IDVerified phone numberThe number displayed on the recipient’s phone. Must be pre-verified.
ProviderSignalWire / Plivo / Indian RouteThe telephony provider that routes the calls. Some features are provider-specific.
ScheduleImmediate / ScheduledImmediate starts within minutes; scheduled runs at the specified date/time.
Concurrent CallsConfigurableSet how many recipients are dialed simultaneously (Concurrent Calls) and how many calls are initiated per second (CPS) when creating a campaign. Defaults to 1 (sequential).

Campaign Lifecycle

Every campaign progresses through a defined lifecycle. Understanding these stages helps you manage and troubleshoot your campaigns effectively:

StageDescriptionAvailable Actions
DraftCampaign is created but not yet launched. Content, contacts, and settings can all be edited.Edit, Delete
ScheduledCampaign has a future start time set. The system will automatically transition to Processing at the scheduled time.Edit, Cancel, Launch Immediately
ProcessingThe campaign is actively dialing contacts. Progress updates in real-time.Pause, View Live Progress
PausedAn active campaign has been temporarily halted. Remaining contacts have not been called yet.Resume, Delete
CompletedAll contacts have been attempted. No further calls will be made.Relaunch, View Report, Delete
FailedThe campaign encountered a critical error and cannot continue (e.g., provider outage, exhausted balance).Relaunch, Delete

Managing Campaigns

Campaign List

🖼
[Screenshot: Campaign list showing all campaigns with status, progress, and actions]
Highlight: Status indicators and action buttons

The campaign list provides an at-a-glance view of all campaigns:

ColumnDescription
NameCampaign name with calling type icon.
StatusCurrent lifecycle stage (see Campaign Lifecycle above).
ProgressCompleted calls / total contacts with a percentage bar for visual tracking.
Success RatePercentage of connected calls out of total attempts. A healthy campaign typically achieves above 40%.
Avg DurationMean call duration in seconds across all connected calls.
ActionsContext-sensitive buttons: Pause/Resume, Relaunch, View Report, Delete.

Campaign Actions

  • Pause — Temporarily stop an active campaign. Already-dialing calls complete normally; only pending contacts are affected.
  • Resume — Continue a paused campaign from where it left off. Contact list position is preserved.
  • Relaunch — Re-run a completed campaign. You can target the same contact list or select new contacts. Previously successful contacts are excluded by default to avoid duplicate calls.
  • Delete — Permanently remove the campaign. Call logs remain accessible for auditing even after deletion.

Monitoring

Track your campaign’s performance in real-time through the campaign detail dashboard. Key metrics update as calls are placed:

MetricDescriptionHealthy Benchmark
Total Calls AttemptedNumber of dial attempts.
Successful CallsCalls that connected to a live person.> 40% of attempts
Failed CallsCalls that did not connect due to invalid numbers or network issues.< 10% of attempts
Busy / No AnswerCalls where the line was busy or unanswered.< 50% of attempts
Average Call DurationMean duration of connected calls in seconds.Matches your message length
Voice Minutes UsedTotal minutes consumed across all connected calls.
Cost EstimateApproximate cost based on voice minute rate.

Pro tip: For large campaigns (5,000+ contacts), launch in batches of 500–1,000 contacts to validate your setup before scaling. This lets you identify number format issues, poor answer rates, or content problems without wasting voice minutes on the full list.

Troubleshooting

Issue: Campaign remains in “Draft” status after clicking Launch.

Cause: Missing required configuration — no caller ID selected, no contacts added, or no audio/IVR/XML content attached.

Solution: Review the campaign form for any fields highlighted with a validation error. Ensure all required fields are completed.

Issue: Campaign not starting (stuck in “Scheduled” past the scheduled time).

Cause: Insufficient voice minute balance or provider connectivity issue.

Solution: Check your voice minute balance on the Billing page. If balance is sufficient, verify that your provider credentials are valid in Organization Settings.

Issue: High failure rate (above 20%).

Cause: Invalid phone numbers, incorrect number formatting, or provider-side issues.

Solution: Verify that contact numbers are in E.164 format (+91XXXXXXXXXX for India). Remove obviously malformed numbers. Check Call Logs for the specific failure reason codes (e.g., “INVALID_NUMBER” vs “NETWORK_ERROR”). Test with a known valid number to isolate whether the issue is with the contact list or the provider.

Issue: Calls connect but recipients hear no audio.

Cause: Audio file is corrupted, unsupported format, or the file URL is inaccessible to the provider.

Solution: Verify the audio file plays correctly in the Audio Library preview. Re-upload the file if needed. For XML campaigns, ensure the audio URL in your script is publicly accessible.

Issue: Campaign consuming voice minutes faster than expected.

Cause: Messages that take longer than anticipated or more contacts than expected.

Solution: Check actual average call duration in the monitoring dashboard against your expected message length. Review your contact list count and ensure it matches expectations.

Next Steps: If the issue persists after these checks, visit the Support page to create a ticket with your campaign ID and error details.