How to Set Up a Voice Broadcast Campaign in ICTBroadcast

You can have a voice broadcast campaign running in under 30 minutes. Record your message, upload your contact list, configure a few campaign settings, and hit launch — ICTBroadcast handles the rest. This guide walks through each step in the order you’ll actually do them, including what to watch out for before you go live.

Prerequisites

  • ICTBroadcast installed and running (self-hosted or cloud instance)
  • A SIP trunk configured and tested — your campaigns won’t dial without one
  • Admin or campaign manager access to the ICTBroadcast dashboard
  • Your contact list in CSV format (columns: phone number at minimum; first name optional but useful for personalization)
  • Your audio message recorded as an MP3 or WAV file, or access to the built-in text-to-speech engine

Step 1: Prepare and Upload Your Contact List

Go to Contacts > Import Contacts in the left sidebar. ICTBroadcast expects a CSV file — the minimum requirement is a column containing phone numbers. If you want to personalize the message (e.g., insert a first name via TTS), include that column too.

Format your phone numbers consistently. Include the country code without the plus sign — for US numbers, that means 15551234567 rather than (555) 123-4567. ICTBroadcast will attempt to parse partial formats, but inconsistent numbers cause silent dial failures that are frustrating to debug after the fact.

On the import screen, map your CSV columns to the available contact fields. At minimum, map your phone column to Phone. Click Import and wait for the confirmation count. If the number of imported contacts is lower than your CSV row count, check for formatting errors in the rejected rows — ICTBroadcast will show you a downloadable error report.

Once imported, assign the contacts to a Contact Group. Create a new group from Contacts > Groups > Add Group and name it something specific to this campaign (e.g., “May Promotion — US Leads”). You’ll select this group when setting up the campaign.

Step 2: Upload or Record Your Audio Message

Navigate to Sounds > Add Sound. You have two options here: upload a pre-recorded file or use the built-in text-to-speech engine.

If you’re uploading a file, ICTBroadcast accepts MP3 and WAV. Keep the file under 60 seconds for broadcast messages — longer recordings see noticeably higher hang-up rates. Name the file clearly (e.g., “May-Promo-EN.mp3”) so you can find it easily when building the campaign.

If you’re using text-to-speech, paste your script into the TTS field, select a voice, and click Generate. Listen to the preview before saving. TTS pronunciation of phone numbers and URLs is often wrong on the first pass — adjust the script text (e.g., spell out numbers as words) until it sounds right.

For best delivery rates, keep the message clear and front-load the reason for the call in the first five seconds. Contacts decide whether to stay on the line almost immediately.

Step 3: Create a New Voice Broadcast Campaign

Go to Campaigns > Add Campaign. On the campaign creation form, set the following:

  • Campaign Name: Something descriptive. You’ll be searching for this in reports later.
  • Campaign Type: Select Voice Broadcast. This is not the default — make sure you change it.
  • Contact Group: Select the group you created in Step 1.
  • Sound/Message: Select the audio file you uploaded in Step 2.
  • Caller ID: Enter the phone number you want recipients to see. This must be a number registered with your SIP trunk provider, or calls may fail or display “Unknown.”

Save the campaign to proceed to the configuration screen.

Step 4: Configure Dialing Settings

This screen controls how aggressively the system dials. For voice broadcast, the key settings are:

  • Channels / Concurrent Calls: How many calls to place simultaneously. Start conservatively — 10 to 20 concurrent calls is a reasonable starting point for a new SIP trunk. Pushing too high too fast can trigger your provider’s fraud detection.
  • Retry Attempts: How many times to retry a number that didn’t answer. 2 retries is typical. Set the retry interval to at least 30 minutes — calling back immediately annoys contacts and rarely improves answer rates.
  • Call Timeout: How long to let a number ring before hanging up. 25-30 seconds (roughly 5 rings) is standard.
  • Schedule: Set allowed calling hours. For most jurisdictions, this means 9 AM to 8 PM local time. ICTBroadcast can apply a timezone offset per contact if your CSV includes timezone data, or you can set a single timezone for the entire campaign.

The voice broadcast engine in ICTBroadcast also supports press-1 transfers — if you want to offer recipients the option to connect to a live agent or get more information, enable that setting here and configure the transfer destination (a phone number or SIP extension).

Step 5: Set Up Call Handling and Answering Machine Detection

Navigate to the AMD (Answering Machine Detection) section of the campaign settings. You have three choices: play the message regardless of whether a human or machine answers, play only to humans and hang up on machines, or leave a different message for machines.

Leaving a voicemail message for answering machines is worth the extra setup. Record a shorter version of your message — 20 to 30 seconds works well — specifically worded for voicemail. Contacts who check voicemail hours later are still reachable.

AMD adds a small delay at the start of connected calls (typically 1-2 seconds while the system analyzes the audio). This is normal behavior, not a misconfiguration.

Step 6: Test Before You Launch

Before running the campaign against your full list, test it on a small batch. Create a separate contact group with 5-10 test numbers (your own phones, team numbers, etc.) and run the campaign against that group first.

Listen to the full call on each test number. Check that: the audio plays clearly, the caller ID shows correctly, the AMD is classifying correctly (answer your test call like you normally would, and also let it go to voicemail to test that path), and any press-1 transfer routes properly.

Fix anything that sounds wrong before you scale up. A muffled audio file or a broken press-1 transfer affects every single call in the campaign.

Step 7: Launch and Monitor

Once testing passes, go back to Campaigns, select your campaign, and click Start. The status indicator will move to Running.

During the campaign, watch the live stats panel: calls attempted, connected, answered by human, answered by machine, failed, and press-1 transfers (if you enabled that). A high failure rate (above 10-15%) usually means a SIP trunk problem or a caller ID issue — pause the campaign and investigate before continuing.

The auto dialer engine runs the dialing queue automatically, but it’s worth checking in every 30 minutes for the first hour on a new campaign. Once you’ve confirmed the campaign is running cleanly, you can let it run unattended.

After the campaign finishes, go to Reports > Campaign Report to see the full breakdown: delivery rate, answer rate, transfer rate, and failed numbers for retry or removal.

Troubleshooting

Campaign starts but no calls are going out

Check your SIP trunk status first — go to Settings > Trunks and confirm the trunk shows as registered. If it’s unregistered, your provider credentials may have changed or the trunk timed out. Re-enter credentials and save. Also check that the campaign status is actually Running and not stuck on Pending — sometimes a server restart is needed if the campaign queue isn’t processing.

Calls connect but contacts hear silence or static

This is almost always an audio file issue or a codec mismatch. Open the audio file in the Sounds section and use the built-in player to confirm it plays correctly inside ICTBroadcast. If it plays fine there but sounds bad on actual calls, you have a codec negotiation problem with your SIP trunk — check that G.711 (ulaw/alaw) is enabled in your trunk settings, since it’s the most universally compatible codec.

Caller ID shows “Unknown” or a different number

Your SIP trunk provider must whitelist the caller ID number you want to present. Most providers only allow you to spoof caller ID to numbers you’ve verified with them. Contact your provider, confirm the number is registered, and double-check that you’ve entered it correctly in the campaign settings — even a single wrong digit will cause it to fail.

AMD is misclassifying calls (treating humans as machines or vice versa)

AMD accuracy depends on the first 1-2 seconds of audio at call answer. If contacts say hello in a quiet environment and get cut off, the AMD is incorrectly classifying them as machines. Go to Settings > AMD Settings and adjust the silence threshold and the initial audio detection window. Reducing the silence threshold slightly usually helps. This takes a few test calls to tune properly.

Frequently Asked Questions

How many contacts can I add to a single voice broadcast campaign?

There’s no hard contact limit in ICTBroadcast itself — campaigns with hundreds of thousands of contacts are common. The practical limit is your server capacity and your SIP trunk’s concurrent call allowance. If you’re running 50 concurrent channels against 500,000 contacts, the campaign will just take longer to complete. Segment large lists by region or timezone to make scheduling easier.

Can I pause a campaign mid-run and resume it later?

Yes. Use the Pause button on the campaign dashboard. ICTBroadcast saves the position in the contact queue, so when you resume, it picks up where it left off without re-calling numbers that already received the message. This is useful for campaigns that span business hours across multiple days.

What’s the difference between voice broadcast and predictive dialing?

Voice broadcast plays a pre-recorded message automatically — no agents are involved. Predictive dialing connects answered calls to live agents. ICTBroadcast supports both, and you can combine them: use voice broadcast for the initial outreach, then run a predictive campaign against contacts who pressed 1 to request a callback.

Does ICTBroadcast support opt-out handling automatically?

Yes. You can configure a “Do Not Call” key press (e.g., press 9 to opt out) in the campaign settings. Contacts who press that key are automatically added to the DNC list and won’t receive future calls. You can also manually upload a DNC list under Contacts > DNC before running a campaign.

How do I see which contacts didn’t answer so I can retry them?

Go to Reports > Campaign Report and filter by status — you can export contacts by result type (no answer, busy, failed, etc.) as a CSV. Upload that CSV as a new contact group and run a retry campaign against it with a different schedule or a modified message.

ICTBroadcast is open source call center software built for high-volume voice, SMS, fax, and email campaigns without per-seat fees. Learn more about ICTBroadcast or download and get started today.

Related Resources