Skip to main content

SMS Campaigns

Send text message campaigns to your contacts with 90-98% open rates, instant delivery, and guaranteed mobile reach. Perfect for time-sensitive updates, reminders, and urgent communications.

What You Can Do

  • Promotional Messages: Sales, offers, flash sales
  • Transactional Alerts: Order updates, delivery notifications
  • Appointment Reminders: Bookings, reservations, calendar events
  • OTP & Verification: One-time passwords, 2FA codes
  • Emergency Notifications: Urgent updates, service alerts
  • Link Sharing: Drive traffic with shortened, trackable links

Prerequisites

1. Connect SMS Gateway Integration

Navigate to Settings → Integrations and connect an SMS provider:

ProviderBest ForCoverageFeatures
Fast2SMSIndia marketIndiaPromotional + Transactional, DLT support
TwilioGlobal reachWorldwideAdvanced features, programmable SMS
Msg91India + International190+ countriesBulk SMS, OTP, Unicode support
Vonage (Nexmo)EnterpriseGlobalDelivery tracking, analytics

Setup Requirements:

  1. Sender ID: Your brand name (6-11 characters, alphanumeric)
  2. DLT Registration (India): Required for commercial SMS
  3. API Credentials: Obtain from your SMS provider
  4. Phone Number Verification: For two-way messaging (optional)

2. Create SMS Template (Optional)

While not mandatory like WhatsApp, templates help maintain consistency:

  1. Go to Channel → Templates
  2. Click + New Template → Select SMS
  3. Write your message:
    • Character Count: Aim for 160 characters (1 SMS)
    • Variables: Use merge tags for personalization (contact name, etc.)
    • Link: Include shortened URL if needed
    • Opt-out: Include unsubscribe instructions
  4. Save template

SMS Template Example:

Hi {{contact.first_name}},

Flash Sale! Get 30% off on {{product.category}}.

Use code: FLASH30
Valid until midnight.

Shop: https://yourstore.com/sale

Reply STOP to opt out.

3. Create Audience Segment

Define who receives your SMS campaign:

  1. Go to Channel → Segments
  2. Click + New Segment
  3. Add filters:
    • Phone is not empty: Required
    • SMS Opted In: Ensure consent (critical!)
    • Country Code: Validate phone format
    • Additional targeting filters
  4. Save segment

Important: Only message contacts who have explicitly opted in to receive SMS from you.

SMS Message Guidelines

Character Limits & Pricing

Single SMS (160 characters):

  • 160 characters for standard GSM charset
  • 70 characters for Unicode (emojis, non-Latin scripts)
  • Costs: 1 SMS credit

Multi-Part SMS:

  • Messages over 160 characters split into parts
  • 153 characters per part (overhead for concatenation)
  • Costs: Credits per part

Example:

161 characters = 2 SMS credits
306 characters = 3 SMS credits

Character Count Tips:

  • Use URL shorteners to save characters
  • Avoid emojis if not necessary (uses Unicode)
  • Abbreviate where appropriate but stay professional

Message Structure

Effective SMS Format:

[SENDER NAME]
[MESSAGE CONTENT]
[CALL-TO-ACTION]
[OPT-OUT]

Example:
YourStore: Flash sale! 30% off all items. Shop now: https://bit.ly/sale30 Reply STOP to opt out.

Key Elements:

  1. Sender Identification: Brand name or sender ID
  2. Value Proposition: What's in it for them
  3. Urgency (if applicable): Limited time, stock running out
  4. Call-to-Action: What they should do
  5. Link: Shortened, trackable URL
  6. Opt-Out: Required for compliance

Content Rules

Allowed:

  • ✅ Promotional offers (with opt-in)
  • ✅ Transactional updates
  • ✅ Appointment reminders
  • ✅ OTPs and verification codes
  • ✅ Service notifications
  • ✅ Surveys and feedback requests

Not Allowed (varies by region):

  • ❌ Unsolicited messages (spam)
  • ❌ Misleading information
  • ❌ Prohibited content (varies by provider and region)
  • ❌ Messages to DND/Do Not Disturb numbers (without consent)

India-Specific (DLT Requirements):

  • All commercial SMS must be registered with DLT
  • Template approval required before sending
  • Strict DND compliance
  • Sender ID registration mandatory

Creating an SMS Campaign

Step-by-Step Guide

Step 1: Basic Details

  1. Navigate to Channel → Campaigns
  2. Click + New Campaign
  3. Fill in basic information:
    • Campaign Name: Internal identifier (e.g., "Weekend Flash Sale")
    • Description: Campaign purpose
    • Channel: Select SMS

Step 2: Compose Message

Choose your approach:

Option A: Use Template

  • Select existing SMS template
  • Preview and adjust if needed
  • Template variables auto-populate from contact data

Option B: Write Custom Message

  • Type message directly in composer
  • Character counter shows: used/limit
  • Preview how message will look
  • Add personalization variables

Message Composer:

Hi {{contact.first_name}},

Your appointment with {{company.name}} is confirmed for {{appointment.date}} at {{appointment.time}}.

Location: {{location.address}}

Reply YES to confirm or CANCEL to reschedule.

For help, call {{company.phone}}.

Character Counter Shows:

  • Characters used: 187
  • SMS parts: 2
  • Cost per recipient: 2 credits
  • Total cost: 2,000 credits (for 1,000 recipients)

Step 3: Add Link Tracking (Optional)

To track link clicks:

  1. Enable Link Tracking
  2. Enter your URL
  3. System generates short URL (e.g., https://s.expedify.ai/abc123)
  4. Insert short URL in message
  5. Track clicks in analytics

Link Shortening Benefits:

  • Saves characters
  • Tracks click-through rate
  • Provides click analytics
  • Custom branded domains (optional)

Step 4: Select Audience

  1. Choose your target segment
  2. Critical Validation:
    • ✅ All contacts have valid phone numbers
    • ✅ Phone numbers include country code (+91, +1, etc.)
    • ✅ SMS opt-in consent verified
    • ✅ No DND numbers (if applicable)
  3. Preview audience size
  4. Estimated cost calculation shown

Audience Preview:

Segment: Weekend Shoppers
Total Contacts: 5,247
Valid Phone Numbers: 5,180
SMS Opted In: 4,856
Final Audience: 4,856

Estimated Cost:
- 1 SMS per contact × 4,856 = 4,856 credits
- At $0.01 per SMS = $48.56

Step 5: Configure SMS Settings

Sender Configuration:

  • Sender ID: Your registered brand name (e.g., "YOURSTORE")
    • Alpha format: Letters only, 6-11 characters
    • Must be pre-registered with provider
  • Sender Type: Promotional or Transactional
  • Unicode Enabled: For emojis and non-Latin characters

Message Options:

  • Flash Message: Display on screen without saving (use rarely)
  • Track Delivery: Monitor delivery status (default: on)
  • Track Links: Enable link click tracking (default: on)
  • DLT Template ID: (India only) Enter approved DLT template ID

Compliance:

  • Opt-out Text: Include in message (e.g., "Reply STOP to opt out")
  • Time Restrictions: Don't send 9 PM - 9 AM local time
  • Frequency Cap: Max messages per contact per day

Step 6: Scheduling Options

Choose when to send:

OptionDescriptionBest For
Send NowImmediate deliveryUrgent alerts, flash sales
ScheduleSpecific date and timePlanned promotions
Recipient's TimezoneSame local time for allGlobal audiences
Business Hours Only9 AM - 9 PM local timeRespect recipient availability
Stagger SendSpread over time periodPrevent server overload

Scheduling Examples:

Send Now: Delivers immediately
Schedule: May 15, 2024 at 10:00 AM
Recipient's Timezone: 10 AM in each contact's local time
Business Hours: Only between 9 AM - 9 PM
Stagger: Send 10,000 SMS over 2 hours (5,000/hour)

Step 7: Advanced Settings (Optional)

Batch Configuration:

  • Batch Size: SMS per batch (default: 500)
  • Delay Between Batches: Seconds between batches (default: 30s)
  • Rate Limiting: Prevent exceeding provider limits (SMS/second)
  • Priority: High/Normal/Low

Delivery Settings:

  • Retry Failed: Auto-retry temporary failures
  • Max Retries: Number of attempts (default: 3)
  • Validity Period: How long to attempt delivery (e.g., 24 hours)
  • Fallback Channel: Try email if SMS fails (optional)

Step 8: Review & Launch

  1. Preview Message:
    • Review with actual contact data
    • Check character count
    • Verify link works
    • Test personalization
  2. Send Test SMS: Send to your mobile number
  3. Cost Estimate: Review total credit consumption
  4. Final Checklist:
    • ✅ Message is clear and concise
    • ✅ Link works and is trackable
    • ✅ All variables have data
    • ✅ Opt-out text included
    • ✅ Sender ID is correct
    • ✅ Audience has opt-in consent
    • ✅ Time restrictions set
  5. Launch: Click Send Now or Schedule

Campaign Execution & Monitoring

Real-Time Progress Tracking

Monitor SMS campaign delivery in real-time:

Campaign Dashboard Shows:

  • Queued: Messages waiting to be sent
  • Sent: Messages submitted to provider
  • Delivered: Confirmed delivery to devices
  • Failed: Delivery failures (with reasons)
  • Clicked: Link clicks (if tracking enabled)

Delivery Status Codes:

  • Delivered: Message received by phone
  • Failed: Invalid number, network error
  • Rejected: DND, blocked sender, operator rejection
  • Expired: Couldn't deliver within validity period
  • Unknown: Status not yet available

Campaign States

StateDescriptionActions Available
DraftNot sent yetEdit, Delete, Launch
ScheduledQueued for future sendEdit, Cancel
SendingCurrently processingPause, Cancel
PausedTemporarily haltedResume, Cancel
SentDelivery completeView Analytics
CancelledStoppedView Details

SMS Campaign Analytics

Key Metrics

Access detailed analytics in Channel → Campaigns → [Campaign Name]:

Delivery Metrics:

  • Sent: Total SMS submitted to provider
  • Delivered: Confirmed delivery to devices
  • Delivery Rate: Delivered / Sent × 100
  • Failed: Delivery failures
  • Bounce Rate: Failed / Sent × 100

Engagement Metrics:

  • Click-Through: Link clicks (if tracking enabled)
  • Click Rate: Clicks / Delivered × 100
  • Replies: Two-way responses (if enabled)
  • Reply Rate: Replies / Delivered × 100
  • Opt-Outs: Unsubscribe requests
  • Opt-Out Rate: Opt-outs / Delivered × 100

Cost Metrics:

  • Credits Used: Total SMS credits consumed
  • Cost Per Message: Average cost
  • Cost Per Click: Credits / Clicks
  • ROI: Revenue / Cost × 100 (if conversion tracking enabled)

Time-Based Insights:

  • Delivery Speed: Average time to deliver
  • Engagement by Hour: When contacts click/reply
  • Best Days: Highest engagement days
  • Response Times: How quickly contacts reply

Typical SMS Performance

Benchmarks:

  • Delivery Rate: 95-99%
  • Open Rate: 90-98% (within 3 minutes)
  • Click Rate: 10-30% (with compelling offer)
  • Reply Rate: 5-15% (if two-way messaging)
  • Opt-Out Rate: < 1% (with good targeting)

Why SMS Performs Well:

  • 100% mobile reach
  • Instant push notifications
  • Short, scannable content
  • Personal communication channel
  • Less competition than email

Individual Contact Activity

View detailed per-contact data:

  1. Open campaign analytics
  2. Click Activity Timeline
  3. See for each contact:
    • Send timestamp
    • Delivery timestamp
    • Delivery status
    • Link clicks
    • Reply content
    • Opt-out status

Best Practices

Critical Requirement: SMS requires explicit opt-in consent. Violating this can result in:

  • Legal penalties (TCPA, GDPR violations)
  • Account suspension
  • Expensive fines ($500-$1,500 per message in US)

How to Get Consent:

  1. Website Form: Explicit checkbox
☑ I agree to receive SMS messages from [Company]
including promotions and updates. Message and
data rates may apply. Reply STOP to opt out.
  1. Keyword Opt-In: Text-to-join
Text JOIN to 12345 to receive exclusive offers!

Standard message rates apply. Text STOP to unsubscribe.
  1. Point of Sale: In-person sign-up
"May we send you SMS updates about your order?"
[ ] Yes, I agree (provide mobile number: ____________)
  1. Double Opt-In (recommended):
Step 1: Contact provides number and consents
Step 2: Send confirmation SMS
Step 3: Contact replies YES to confirm

Example confirmation SMS:
Reply YES to confirm you want to receive SMS from YourStore.
Reply STOP to cancel. Msg&data rates may apply.

Message Frequency

Guidelines:

  • Promotional: 2-4 per month maximum
  • Transactional: As needed (no limit)
  • Reminders: Event-based only
  • Never: More than 1 per day per contact

Frequency Best Practices:

✅ Good:
- Monday: Flash sale alert
- (Gap of 7+ days)
- Next Tuesday: New arrival notification

✗ Bad:
- Monday: Sale alert
- Tuesday: Reminder
- Wednesday: Last chance
- (Too frequent, feels like spam)

Content Best Practices

Effective SMS Structure:

✅ Good (145 characters):
YourStore: FLASH SALE! 40% off everything.
Shop now: bit.ly/flash40
Ends tonight 11:59 PM.
Text STOP to opt out.

✗ Bad (210 characters - wastes 2 SMS):
Hello valued customer! We wanted to reach out
to let you know about our amazing flash sale
happening today where you can save up to 40%...

Writing Tips:

  • Be Direct: Get to the point immediately
  • Create Urgency: Limited time, stock, spots
  • Clear CTA: One action, make it obvious
  • Personalize: Use name when it adds value
  • Brand First: Lead with sender identification
  • Respect Length: Stay under 160 characters when possible

Tone Guidelines:

  • Conversational but professional
  • Friendly, not overly casual
  • Respectful of recipient's time
  • Clear value proposition

URL Shortening:

  • Use URL shortener to save characters
  • Track clicks for analytics
  • Use branded short domain (e.g., s.yourbrand.com)
  • Make URLs clear and trustworthy

Link Placement:

✅ Good:
Save 30% today! Shop: bit.ly/save30
(Link is clear and trackable)

✗ Bad:
Click https://yourstore.com/products/sale/
spring-2024/limited-time-offer?utm_source=sms
(Too long, wastes characters)

Timing Best Practices

Best Send Times:

IndustryBest DayBest Time
RetailThursday-Saturday10 AM - 2 PM, 6-8 PM
RestaurantsThursday-Saturday11 AM - 1 PM, 5-7 PM
ServicesTuesday-Thursday10 AM - 12 PM
B2BTuesday-Thursday9 AM - 11 AM
EventsVaries7 days before, day before, day of

Time Restrictions:

  • Never send 9 PM - 9 AM local time
  • Avoid early mornings on weekends
  • Best during business hours for B2B
  • Best evenings for B2C

Timezone Considerations:

  • Always send in recipient's local timezone
  • Use "Recipient's Timezone" scheduling option
  • Set business hours restrictions

Troubleshooting

Low Delivery Rate (below 95%)

Possible Causes:

  • Invalid phone numbers
  • DND (Do Not Disturb) numbers
  • Operator restrictions
  • Sender ID not registered
  • Insufficient credits

Solutions:

  1. Validate phone numbers (include country code)
  2. Remove DND numbers from list (India)
  3. Register sender ID with operators
  4. Check DLT registration (India)
  5. Verify account has sufficient credits
  6. Contact SMS provider support

Messages Marked as Spam

Possible Causes:

  • Too frequent sending
  • Content flagged as spam
  • Sender ID not recognized
  • Lack of opt-in consent

Solutions:

  1. Reduce message frequency
  2. Improve message content (avoid spam words)
  3. Use registered, recognizable sender ID
  4. Verify opt-in consent
  5. Include clear opt-out instructions
  6. Send during business hours

High Opt-Out Rate (above 2%)

Possible Causes:

  • Messages not relevant
  • Too frequent
  • Misleading opt-in process
  • Poor targeting

Solutions:

  1. Improve message relevance and targeting
  2. Reduce frequency
  3. Review opt-in process (clear expectations)
  4. Segment audience better
  5. Provide more value in messages
  6. Make opt-out process clear

Possible Causes:

  • Link not trustworthy
  • Value proposition unclear
  • CTA not compelling
  • Sent at wrong time

Solutions:

  1. Use branded short domain
  2. Make value proposition clear
  3. Create urgency
  4. Test different send times
  5. Improve CTA copy
  6. A/B test message variations

Advanced Features

Two-Way Messaging

Enable conversations with contacts:

Use Cases:

  • Customer support
  • Appointment confirmations
  • Surveys and feedback
  • Order status inquiries

Setup:

  1. Get dedicated phone number (not sender ID)
  2. Enable two-way messaging in integration
  3. Set up auto-replies
  4. Route inbound messages to team

Auto-Reply Example:

Contact sends: "STATUS"
Auto-reply: "Your order #12345 shipped yesterday.
Track: bit.ly/track12345. Need help? Reply HELP."

Keyword Automation

Trigger actions based on keywords:

Opt-In Keywords:

  • JOIN, SUBSCRIBE, START → Add to list
  • STOP, UNSUBSCRIBE, END → Remove from list
  • HELP, INFO → Send information

Custom Keywords:

  • SALE → Send current promotions
  • HOURS → Send business hours
  • LOCATION → Send store address

MMS (Multimedia Messaging)

Send images, GIFs, videos (where supported):

Use Cases:

  • Product images
  • Coupons/QR codes
  • Event invitations
  • Visual tutorials

Limitations:

  • Higher cost (2-3× SMS cost)
  • Not supported everywhere
  • Larger file size limits
  • Requires MMS-capable device

Drip Campaigns

Automated SMS sequences:

  1. Use workflow automation
  2. Set up triggers (form submission, purchase, etc.)
  3. Create SMS sequence with delays
  4. Monitor engagement

Example sequence:

Day 1: Welcome message
Day 3: First tip/value
Day 7: Product recommendation
Day 14: Exclusive offer

Compliance & Regulations

TCPA (USA)

Requirements:

  • Prior express written consent
  • Clear opt-out mechanism
  • Respect Do Not Call list
  • Send only 8 AM - 9 PM local time

Violations:

  • $500-$1,500 per message
  • Class action lawsuits
  • FCC penalties

GDPR (EU)

Requirements:

  • Explicit consent
  • Easy unsubscribe
  • Data protection
  • Privacy policy

TRAI/DLT (India)

Requirements:

  • DLT registration mandatory
  • Template approval required
  • Sender ID registration
  • DND list compliance
  • Header registration

Best Practices for Compliance

  1. Keep Records: Store opt-in consent
  2. Honor Opt-Outs: Process within 24 hours
  3. Time Restrictions: Follow local regulations
  4. Clear Identification: Always identify sender
  5. Frequency Limits: Don't spam
  6. Data Security: Protect phone numbers