SMS Campaign
The SMS Campaign feature enables campaign managers to run large-scale SMS campaigns for up to 5 lakh contacts. It includes capabilities such as static and dynamic messaging, campaign-level reports, inbox view, real-time performance stats, and the option to mark an ongoing campaign as completed.
Key Benefits
- Static and Dynamic Campaigns: Choose between static SMS (same message for all recipients) or dynamic SMS (personalized content for each recipient).
- Campaign-Level Reports: Download campaign-level reports once the campaign is complete to analyze performance and delivery trends.
- Mark as Completed: Pause any ongoing campaign and mark it as completed. Remaining numbers will not receive messages, and reports will still be available for such campaigns.
- Campaign & SMS Details: Each campaign provides a dedicated dashboard with:
- Campaign summary
- Real-time statistics
- SMS-level details (outbox view)
- Send Test SMS:Test campaigns before launch by sending a sample SMS to verify content and variables.
- Estimated Cost: Calculate campaign costs in advance based on SMS content, number of recipients, and billing plan.
Navigating the SMS Campaign Dashboard
- From the left-hand panel, click Tools → Campaigns (New).
- On the Campaigns page, select SMS Campaign (next to the Call Campaign button).
Create an SMS Campaign
Click Create SMS Campaign on the Campaigns home page to open the campaign creation screen.
You will be prompted to enter the following campaign details.
Step 1: Campaign Details
- Campaign Name — Minimum of three characters.
- SMS Content Type — Choose between:
- Static: Same content for all recipients.
- Dynamic: Personalized messages using variables.
For static campaigns, select one or more existing contact lists (up to five per campaign). For dynamic campaigns, upload a new CSV list (up to 10 lakh contacts, max 60 MB, with up to 5 variables).
The first column of the CSV file must contain phone numbers. For Indian numbers, the country code is optional. All other columns are optional and can be customized as needed.
Step 2: DLT Configuration
- DLT Entity ID — Registered on the DLT (Distributed Ledger Technology) portal; required for all Indian destinations. (Read-only field)
- DLT Template ID — ID associated with your approved DLT content template.
- DLT Sender ID — Select the appropriate sender ID:
- Text sender ID for transactional and transactional opt-in messages.
- Numeric sender ID for promotional SMS.
Step 3: Select a Template
You can choose between:
- Selecting a saved template from your approved list, or
- Entering details manually using a DLT-approved template ID and content.
Selecting a Saved Template
- A popup displays all approved templates in your account.
- Search by Template ID or Message Body.
- Once selected, DLT Template ID and SMS Type fields populate automatically.
- To update a missing DLT Template ID, click the provided link to open the SMS Settings page.
Enter Manually
If you choose to enter details manually, fill out all DLT parameters carefully.
Ensure the template content exactly matches the DLT-approved version. If unsure, send a test SMS before launching the campaign to confirm template validity.
Step 4: SMS Content and Variables
- SMS Content: For static messages, content is fixed and uneditable.
- For dynamic messages, you can map variables using the @@ notation — typing @@ displays all available column headers from your uploaded CSV file.
- Replace variables accurately to ensure correct personalization.
Step 5: Schedule the Campaign
Specify when your campaign should run.
- Start Date and Time: Must be at least 15 minutes ahead of the current time.
- End Date and Time: Optional; defaults to 30 days from the start time. Minimum end time is 2 hours after the start time.
You can optionally add a Campaign Status Callback URL to receive updates.
Callback Parameters:
- campaign_sid — Unique campaign identifier
- date_created, date_updated, date_started
- status — in-progress | completed
- reports — report download link (available only after completion)
Step 6: Send a Test SMS
Before creating the campaign, use the Send Test SMS option.
The popup will display:
- DLT Entity ID
- DLT Template ID
- DLT Sender ID
- SMS Type
- SMS Content
You will then enter:
- Phone Number — Destination number (E.164 format preferred).
- Custom Field (Optional): Variable replacements for test message preview.
It’s recommended to send a test SMS whenever a new template is selected or edited. This ensures the DLT ID and message format are correct.
Step 7: Create SMS Campaign
Click Create SMS Campaign once all details are filled in. A confirmation banner will appear, and the campaign will now be visible in the SMS Campaigns list.
View List of SMS Campaigns
The SMS Campaigns landing page shows a summary of all existing campaigns, including:
- Campaign Name
- Campaign Type
- Schedule Time
- Status
- Performance
Each campaign has an action menu with the following options:
Action | Description |
|---|---|
Pause | Stop sending SMS for an in-progress or scheduled campaign. |
Resume | Continue sending SMS to pending numbers (paused campaigns only). |
Complete | Mark campaign as completed. Remaining numbers are marked as failed_expired. |
Archive | Move completed or scheduled campaigns to archive view. |
Download | Download reports for completed campaigns. |
Filters, Search, and Sorting
- Filter by campaign status.
- Search by campaign name (minimum 3 characters).
- Sort by campaign name or schedule time.
Performance Overview
Displays campaign performance across three key statuses:
- Completed
- Failed
- Scheduled
Hovering over the counts shows detailed subcategories:
- Failed: Failed SMS, Failed Expired, Failed DND, Failed No Attempt, Failed No Balance, Invalid SMS
- Scheduled: Submitted SMS and Scheduled SMS
SMS Campaign Summary and Stats
Click any campaign to view its detailed statistics. The page is divided into two sections: Campaign Details and Campaign Stats.
Campaign Details
Provides an overview of all campaign-level settings and identifiers:
- Lists used
- Entity ID and Sender ID
- Template ID and SMS Type
- Start and expiry time
- Message content summary
- Estimated campaign cost
Estimated Cost
Displays the projected cost based on:
- Number of recipients
- SMS character count
- Billing plan
For dynamic SMS, costs are estimated assuming all numbers are domestic Indian contacts. The final charge may vary slightly once the campaign completes. This feature is disabled once the campaign starts.
Campaign Stats
Shows real-time number-level delivery data. Click the refresh icon to update (up to 5 minutes delay).
Status | Meaning |
|---|---|
Scheduled | Numbers pending for SMS dispatch. |
Submitted | SMS submitted to the gateway. |
Sent | SMS successfully delivered to handset. |
Failed | Invalid or unreachable numbers. |
Failed DND | Number blocked by NDNC registry. |
Failed Expiry | Message expired after repeated retries by operator. |
Failed No Attempt | Campaign ended before completion or exceeded 30-day limit. |
Failed No Balance | Campaign halted due to insufficient account balance. |
Invalid | Invalid or malformed phone number. |
View SMS Details
This section lists all SMS messages sent as part of the campaign. It includes:
- Number and Name (if saved)
- Time and Status
- Detailed Status
The action menu displays:
- Sent Time
- Sender ID
- Destination Number
- SMS Reference ID
Search by number (minimum 3 characters). Sort results by created date.
URL Shortening
URLs in SMS messages can be long and consume valuable character space. Shortening URLs helps stay within the 160-character limit and improves click-through rates. Short URLs are also trackable, allowing you to monitor engagement.
Enable URL Shortening and Click Tracking
Within the Create SMS Campaign screen, locate the URL Shortening and Tracking section.
- Require URL Shortening: Select Yes to automatically shorten URLs in the SMS body (e.g. https://exo.tl/vhdpzv). Each SMS receives a unique short code. Multiple URLs will each be shortened. Default expiry is 30 days.
- Enable Click Tracking: Select Yes to track click data for each recipient. This captures total clicks and unique clicks.
- Click Tracking Callback URL: Provide a webhook URL to receive click data per number.
URL shortening must be enabled for click tracking to function. Click tracking data is not currently included in campaign callbacks.
Contact List Limits
There is no restriction on the number of contacts for which an SMS campaign can be created. However, the uploaded CSV file must be under 10 MB in size.
Watch a short video
Scheduling a bulk SMS campaign